LoadLineFilterList();
DIFFOPTIONS options = {0};
- Options::DiffOptions::Load(options);
+ Options::DiffOptions::Load(GetOptionsMgr(), options);
m_pCtxt->CreateCompareOptions(GetOptionsMgr()->GetInt(OPT_CMP_METHOD), options);
m_bShowSkipped = GetOptionsMgr()->GetBool(OPT_SHOW_SKIPPED);
m_bExpandSubdirs = GetOptionsMgr()->GetBool(OPT_DIRVIEW_EXPAND_SUBDIRS);
m_bEscCloses = GetOptionsMgr()->GetBool(OPT_CLOSE_WITH_ESC);
- Options::DiffColors::Load(m_cachedColors);
+ Options::DiffColors::Load(GetOptionsMgr(), m_cachedColors);
}
CDirView::~CDirView()
{
m_bEscCloses = GetOptionsMgr()->GetBool(OPT_CLOSE_WITH_ESC);
m_bExpandSubdirs = GetOptionsMgr()->GetBool(OPT_DIRVIEW_EXPAND_SUBDIRS);
- Options::DiffColors::Load(m_cachedColors);
+ Options::DiffColors::Load(GetOptionsMgr(), m_cachedColors);
}
/**
#include "OptionsMgr.h"
#include "ShellFileOperations.h"
#include "paths.h"
+#include "SourceControl.h"
using std::vector;
String strErr;
int retVal = SCRIPT_SUCCESS;
- if (GetOptionsMgr()->GetInt(OPT_VCS_SYSTEM) == VCS_NONE)
+ if (GetOptionsMgr()->GetInt(OPT_VCS_SYSTEM) == SourceControl::VCS_NONE)
return retVal;
// TODO: First param is not used!
// Before we can write over destination file, we must unlock
// (checkout) it. This also notifies VCS system that the file
// has been modified.
- if (GetOptionsMgr()->GetInt(OPT_VCS_SYSTEM) != VCS_NONE)
+ if (GetOptionsMgr()->GetInt(OPT_VCS_SYSTEM) != SourceControl::VCS_NONE)
{
int retVal = VCSCheckOut((*iter).dest, bApplyToAll);
if (retVal == SCRIPT_USERCANCEL)
}
COLORSETTINGS colors;
- Options::DiffColors::Load(colors);
+ Options::DiffColors::Load(GetOptionsMgr(), colors);
m_pImgMergeWindow->SetDiffColor(colors.clrDiff);
m_pImgMergeWindow->SetSelDiffColor(colors.clrSelDiff);
m_pImgMergeWindow->AddEventListener(OnChildPaneEvent, this);
RGBQUAD backColor = m_pImgMergeWindow->GetBackColor();
CColorDialog dialog(RGB(backColor.rgbRed, backColor.rgbGreen, backColor.rgbBlue));
static DWORD dwCustColors[16];
- Options::CustomColors::Load(dwCustColors);
+ Options::CustomColors::Load(GetOptionsMgr(), dwCustColors);
dialog.m_cc.lpCustColors = dwCustColors;
if (dialog.DoModal() == IDOK)
{
if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1;
- m_lfDiff = Options::Font::Load(OPT_FONT_FILECMP);
- m_lfDir = Options::Font::Load(OPT_FONT_DIRCMP);
+ m_lfDiff = Options::Font::Load(GetOptionsMgr(), OPT_FONT_FILECMP);
+ m_lfDir = Options::Font::Load(GetOptionsMgr(), OPT_FONT_DIRCMP);
if (!CreateToolbar())
{
if (ChooseFont(&cf))
{
- Options::Font::Save(frame == FRAME_FOLDER ? OPT_FONT_DIRCMP : OPT_FONT_FILECMP, lf, true);
+ Options::Font::Save(GetOptionsMgr(), frame == FRAME_FOLDER ? OPT_FONT_DIRCMP : OPT_FONT_FILECMP, lf, true);
UpdateFont(frame);
}
}
if (frame == FRAME_FOLDER)
{
- Options::Font::Reset(OPT_FONT_DIRCMP);
- m_lfDir = Options::Font::Load(OPT_FONT_DIRCMP);
- Options::Font::Save(OPT_FONT_DIRCMP, &m_lfDir, false);
+ Options::Font::Reset(GetOptionsMgr(), OPT_FONT_DIRCMP);
+ m_lfDir = Options::Font::Load(GetOptionsMgr(), OPT_FONT_DIRCMP);
+ Options::Font::Save(GetOptionsMgr(), OPT_FONT_DIRCMP, &m_lfDir, false);
}
else
{
- Options::Font::Reset(OPT_FONT_FILECMP);
- m_lfDiff = Options::Font::Load(OPT_FONT_FILECMP);
- Options::Font::Save(OPT_FONT_FILECMP, &m_lfDiff, false);
+ Options::Font::Reset(GetOptionsMgr(), OPT_FONT_FILECMP);
+ m_lfDiff = Options::Font::Load(GetOptionsMgr(), OPT_FONT_FILECMP);
+ Options::Font::Save(GetOptionsMgr(), OPT_FONT_FILECMP, &m_lfDiff, false);
}
UpdateFont(frame);
#include "unicoder.h"
#include "Environment.h"
#include "OptionsMgr.h"
+#include "OptionsInit.h"
#include "RegOptionsMgr.h"
#include "OpenDoc.h"
#include "OpenFrm.h"
#include "stringdiffs.h"
#include "TFile.h"
#include "VSSHelper.h"
+#include "SourceControl.h"
// For shutdown cleanup
#include "charsets.h"
// Load registry keys from WinMerge.reg if existing WinMerge.reg
env_LoadRegistryFromFile(paths_ConcatPath(env_GetProgPath(), _T("WinMerge.reg")));
- OptionsInit(); // Implementation in OptionsInit.cpp
+ Options::Init(m_pOptions.get()); // Implementation in OptionsInit.cpp
// Initialize temp folder
SetupTempPath();
}
if (m_pSyntaxColors)
- Options::SyntaxColors::Load(m_pSyntaxColors.get());
+ Options::SyntaxColors::Load(GetOptionsMgr(), m_pSyntaxColors.get());
if (m_pLineFilters)
m_pLineFilters->Initialize(GetOptionsMgr());
if (pathMyFolders.empty())
{
// No filter path, set it to default and make sure it exists.
- String pathFilters = GetDefaultFilterUserPath(TRUE);
- GetOptionsMgr()->SaveOption(OPT_FILTER_USERPATH, pathFilters);
- theApp.m_pGlobalFileFilter->SetFileFilterPath(pathFilters.c_str());
+ pathMyFolders = GetOptionsMgr()->GetDefault<String>(OPT_FILTER_USERPATH);
+ GetOptionsMgr()->SaveOption(OPT_FILTER_USERPATH, pathMyFolders);
+ theApp.m_pGlobalFileFilter->SetUserFilterPath(pathMyFolders.c_str());
+ }
+ if (!paths_CreateIfNeeded(pathMyFolders))
+ {
+ // Failed to create a folder, check it didn't already
+ // exist.
+ DWORD errCode = GetLastError();
+ if (errCode != ERROR_ALREADY_EXISTS)
+ {
+ // Failed to create a folder for filters, fallback to
+ // "My Documents"-folder. It is not worth the trouble to
+ // bother user about this or user more clever solutions.
+ GetOptionsMgr()->SaveOption(OPT_FILTER_USERPATH, env_GetMyDocuments());
+ }
}
sd_Init(); // String diff init
return nRetVal;
// If VC project opened from VSS sync and version control used
- if ((nVerSys == VCS_VSS4 || nVerSys == VCS_VSS5) && m_bVCProjSync)
+ if ((nVerSys == SourceControl::VCS_VSS4 || nVerSys == SourceControl::VCS_VSS5) && m_bVCProjSync)
{
if (!m_pVssHelper->ReLinkVCProj(strSavePath, sError))
nRetVal = -1;
// Version control system used?
// Checkout file from VCS and modify, don't ask about overwriting
// RO files etc.
- if (nVerSys != VCS_NONE)
+ if (nVerSys != SourceControl::VCS_NONE)
{
BOOL bRetVal = SaveToVersionControl(strSavePath);
if (bRetVal)
}
/**
- * @brief Get default editor path.
- * @return full path to the editor program executable.
- */
-String CMergeApp::GetDefaultEditor() const
-{
- return paths_ConcatPath(env_GetWindowsDirectory(), _T("NOTEPAD.EXE"));
-}
-
-/**
- * @brief Get default user filter folder path.
- * This function returns the default filter path for user filters.
- * If wanted so (@p bCreate) path can be created if it does not
- * exist yet. But you really want to create the patch only when
- * there is no user path defined.
- * @param [in] bCreate If TRUE filter path is created if it does
- * not exist.
- * @return Default folder for user filters.
- */
-String CMergeApp::GetDefaultFilterUserPath(BOOL bCreate /*=FALSE*/) const
-{
- String pathMyFolders = env_GetMyDocuments();
- String pathFilters(pathMyFolders);
- pathFilters = paths_ConcatPath(pathFilters, DefaultRelativeFilterPath);
-
- if (bCreate && !paths_CreateIfNeeded(pathFilters))
- {
- // Failed to create a folder, check it didn't already
- // exist.
- DWORD errCode = GetLastError();
- if (errCode != ERROR_ALREADY_EXISTS)
- {
- // Failed to create a folder for filters, fallback to
- // "My Documents"-folder. It is not worth the trouble to
- // bother user about this or user more clever solutions.
- pathFilters = pathMyFolders;
- }
- }
- return pathFilters;
-}
-
-
-/**
* @brief Adds specified file to the recent projects list.
* @param [in] sPathName Path to project file
*/
enum { IDLE_TIMER = 9754 };
-/**
- * @brief Supported versioncontrol systems.
- */
-enum
-{
- VCS_NONE = 0,
- VCS_VSS4,
- VCS_VSS5,
- VCS_CLEARCASE,
-};
-
/**
* @brief WinMerge application class
*/
void AddToRecentProjectsMRU(LPCTSTR sPathName);
void SetNeedIdleTimer();
void SetLastCompareResult(int nResult) { m_nLastCompareResult = nResult; }
- String GetDefaultEditor() const;
- String GetDefaultFilterUserPath(BOOL bCreate = FALSE) const;
COptionsMgr * GetMergeOptionsMgr() { return static_cast<COptionsMgr *> (m_pOptions.get()); }
FileFilterHelper * GetGlobalFileFilter() { return m_pGlobalFileFilter.get(); }
- void OptionsInit();
- void ResetOptions() { OptionsInit(); }
void SetFontDefaults();
void ShowHelp(LPCTSTR helpLocation = NULL);
void OpenFileToExternalEditor(const String& file, int nLineNumber = 1);
<ClInclude Include="OptionsDiffColors.h" />\r
<ClInclude Include="OptionsDiffOptions.h" />\r
<ClInclude Include="OptionsFont.h" />\r
+ <ClInclude Include="OptionsInit.h" />\r
<ClInclude Include="OptionsPanel.h" />\r
<ClInclude Include="OptionsSyntaxColors.h" />\r
<ClInclude Include="PatchDlg.h" />\r
<ClInclude Include="Common\sizecbar.h" />\r
<ClInclude Include="Common\SortHeaderCtrl.h" />\r
<ClInclude Include="Common\SplitterWndEx.h" />\r
+ <ClInclude Include="SourceControl.h" />\r
<ClInclude Include="ssapi.h" />\r
<ClInclude Include="StdAfx.h" />\r
<ClInclude Include="stringdiffs.h" />\r
<ClInclude Include="Constants.h">\r
<Filter>Header Files</Filter>\r
</ClInclude>\r
+ <ClInclude Include="SourceControl.h">\r
+ <Filter>Header Files</Filter>\r
+ </ClInclude>\r
+ <ClInclude Include="OptionsInit.h">\r
+ <Filter>Header Files</Filter>\r
+ </ClInclude>\r
</ItemGroup>\r
<ItemGroup>\r
<None Include="res\binarydiff.ico">\r
m_nDiffContext = GetOptionsMgr()->GetInt(OPT_DIFF_CONTEXT);
m_diffWrapper.SetDetectMovedBlocks(GetOptionsMgr()->GetBool(OPT_CMP_MOVED_BLOCKS));
- Options::DiffOptions::Load(options);
+ Options::DiffOptions::Load(GetOptionsMgr(), options);
m_diffWrapper.SetOptions(&options);
m_diffWrapper.SetPrediffer(NULL);
DIFFOPTIONS options = {0};
m_diffWrapper.SetDetectMovedBlocks(GetOptionsMgr()->GetBool(OPT_CMP_MOVED_BLOCKS));
- Options::DiffOptions::Load(options);
+ Options::DiffOptions::Load(GetOptionsMgr(), options);
m_diffWrapper.SetOptions(&options);
{
SetParser(&m_xParser);
- Options::DiffColors::Load(m_cachedColors);
+ Options::DiffColors::Load(GetOptionsMgr(), m_cachedColors);
}
CMergeEditView::~CMergeEditView()
GetOptionsMgr()->GetBool(OPT_ALLOW_MIXED_EOL) ||
GetDocument()->IsMixedEOL(m_nThisPane));
- Options::DiffColors::Load(m_cachedColors);
+ Options::DiffColors::Load(GetOptionsMgr(), m_cachedColors);
}
/**
#include "OptionsCustomColors.h"
#include "OptionsMgr.h"
-#include "MergeApp.h"
namespace Options { namespace CustomColors
{
/** @brief Setting name for user-defined custom colors. */
const TCHAR Section[] = _T("Custom Colors");
-void Load(COLORREF * colors)
+void Load(COptionsMgr *pOptionsMgr, COLORREF * colors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
for (int i = 0; i < 16; i++)
{
String valuename = string_format(_T("%s/%d"), Section, i);
}
}
-void Save(const COLORREF * colors)
+void Save(COptionsMgr *pOptionsMgr, const COLORREF * colors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
for (int i = 0; i < 16; i++)
{
String valuename = string_format(_T("%s/%d"), Section, i);
#include <windows.h>
+class COptionsMgr;
+
namespace Options { namespace CustomColors {
-void Load(COLORREF * colors);
-void Save(const COLORREF * colors);
+void Load(COptionsMgr *pOptionsMgr, COLORREF * colors);
+void Save(COptionsMgr *pOptionsMgr, const COLORREF * colors);
}}
* @brief Implementation for OptionsDiffColors class.
*/
#include "OptionsDiffColors.h"
-#include "MergeApp.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
namespace Options { namespace DiffColors {
-void SetDefaults()
+void SetDefaults(COptionsMgr *pOptionsMgr)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->InitOption(OPT_CLR_DIFF, (int)RGB(239,203,5));
pOptionsMgr->InitOption(OPT_CLR_DIFF_DELETED, (int)RGB(192, 192, 192));
pOptionsMgr->InitOption(OPT_CLR_DIFF_TEXT, (int)RGB(0,0,0));
pOptionsMgr->InitOption(OPT_CLR_DEFAULT_TEXT_COLORING, true);
}
-void Load(COLORSETTINGS& colors)
+void Load(const COptionsMgr *pOptionsMgr, COLORSETTINGS& colors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
colors.clrDiff = pOptionsMgr->GetInt(OPT_CLR_DIFF);
colors.clrSelDiff = pOptionsMgr->GetInt(OPT_CLR_SELECTED_DIFF);
colors.clrDiffDeleted = pOptionsMgr->GetInt(OPT_CLR_DIFF_DELETED);
colors.clrSelWordDiffText = pOptionsMgr->GetInt(OPT_CLR_SELECTED_WORDDIFF_TEXT);
}
-void Save(const COLORSETTINGS& colors)
+void Save(COptionsMgr *pOptionsMgr, const COLORSETTINGS& colors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->SaveOption(OPT_CLR_DIFF, (int)colors.clrDiff);
pOptionsMgr->SaveOption(OPT_CLR_SELECTED_DIFF, (int)colors.clrSelDiff);
pOptionsMgr->SaveOption(OPT_CLR_DIFF_DELETED, (int)colors.clrDiffDeleted);
COLORREF clrSelWordDiffText; /**< Selected word difference text color */
};
+class COptionsMgr;
+
namespace Options { namespace DiffColors {
-void SetDefaults();
-void Load(COLORSETTINGS& colors);
-void Save(const COLORSETTINGS& colors);
+void SetDefaults(COptionsMgr *pOptionsMgr);
+void Load(const COptionsMgr *pOptionsMgr, COLORSETTINGS& colors);
+void Save(COptionsMgr *pOptionsMgr, const COLORSETTINGS& colors);
}}
*/
#include "OptionsDiffOptions.h"
#include "CompareOptions.h"
-#include "unicoder.h"
-#include "MergeApp.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
/**
* @brief Set default diff option values.
*/
-void SetDefaults()
+void SetDefaults(COptionsMgr *pOptionsMgr)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->InitOption(OPT_CMP_IGNORE_WHITESPACE, (int)0);
pOptionsMgr->InitOption(OPT_CMP_IGNORE_BLANKLINES, false);
pOptionsMgr->InitOption(OPT_CMP_FILTER_COMMENTLINES, false);
pOptionsMgr->InitOption(OPT_CMP_IGNORE_EOL, false);
}
-void Load(DIFFOPTIONS& options)
+void Load(const COptionsMgr *pOptionsMgr, DIFFOPTIONS& options)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
options.nIgnoreWhitespace = pOptionsMgr->GetInt(OPT_CMP_IGNORE_WHITESPACE);
options.bIgnoreBlankLines = pOptionsMgr->GetBool(OPT_CMP_IGNORE_BLANKLINES);
options.bFilterCommentsLines = pOptionsMgr->GetBool(OPT_CMP_FILTER_COMMENTLINES);
options.bIgnoreEol = pOptionsMgr->GetBool(OPT_CMP_IGNORE_EOL);
}
-void Save(const DIFFOPTIONS& options)
+void Save(COptionsMgr *pOptionsMgr, const DIFFOPTIONS& options)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->SaveOption(OPT_CMP_IGNORE_WHITESPACE, options.nIgnoreWhitespace);
pOptionsMgr->SaveOption(OPT_CMP_IGNORE_BLANKLINES, options.bIgnoreBlankLines);
pOptionsMgr->SaveOption(OPT_CMP_FILTER_COMMENTLINES, options.bFilterCommentsLines);
#pragma once\r
\r
struct DIFFOPTIONS;\r
+class COptionsMgr;\r
\r
namespace Options { namespace DiffOptions {\r
\r
-void SetDefaults();\r
-void Load(DIFFOPTIONS& options);\r
-void Save(const DIFFOPTIONS& options);\r
+void SetDefaults(COptionsMgr *pOptionsMgr);\r
+void Load(const COptionsMgr *pOptionsMgr, DIFFOPTIONS& options);\r
+void Save(COptionsMgr *pOptionsMgr, const DIFFOPTIONS& options);\r
\r
}}\r
#include "OptionsFont.h"
#include "unicoder.h"
#include "ExConverter.h"
-#include "MergeApp.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
/**
* @brief Set default font values.
*/
-void SetDefaults()
+void SetDefaults(COptionsMgr *pOptionsMgr)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
LOGFONT lfDefault;
ZeroMemory(&lfDefault, sizeof(LOGFONT));
}
}
-LOGFONT Load(const String& name)
+LOGFONT Load(const COptionsMgr *pOptionsMgr, const String& name)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
LOGFONT lfnew;
ZeroMemory(&lfnew, sizeof(LOGFONT));
return lfnew;
}
-void Save(const String& name, const LOGFONT* lf, bool bUseCustom)
+void Save(COptionsMgr *pOptionsMgr, const String& name, const LOGFONT* lf, bool bUseCustom)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->SaveOption(name + OPT_FONT_USECUSTOM, bUseCustom);
pOptionsMgr->SaveOption(name + OPT_FONT_HEIGHT, lf->lfHeight);
pOptionsMgr->SaveOption(name + OPT_FONT_WIDTH, lf->lfWidth);
pOptionsMgr->SaveOption(name + OPT_FONT_FACENAME, lf->lfFaceName);
}
-void Reset(const String& name)
+void Reset(COptionsMgr *pOptionsMgr, const String& name)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
pOptionsMgr->SaveOption(name + OPT_FONT_USECUSTOM, false);
pOptionsMgr->Reset(name + OPT_FONT_HEIGHT);
pOptionsMgr->Reset(name + OPT_FONT_WIDTH);
#include <windows.h>\r
#include "UnicodeString.h"\r
\r
+class COptionsMgr;\r
+\r
namespace Options { namespace Font {\r
\r
-void SetDefaults();\r
-LOGFONT Load(const String& name);\r
-void Save(const String& name, const LOGFONT* lf, bool bUseCustom);\r
-void Reset(const String& name);\r
+void SetDefaults(COptionsMgr *pOptionsMgr);\r
+LOGFONT Load(const COptionsMgr *pOptionsMgr, const String& name);\r
+void Save(COptionsMgr *pOptionsMgr, const String& name, const LOGFONT* lf, bool bUseCustom);\r
+void Reset(COptionsMgr *pOptionsMgr, const String& name);\r
\r
}}\r
* @brief Options initialisation.
*/
-#include "stdafx.h"
#include <vector>
-#include "Merge.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
#include "RegOptionsMgr.h"
#include "OptionsFont.h"
#include "DiffWrapper.h" // CMP_CONTENT
#include "unicoder.h"
+#include "SourceControl.h"
+#include "paths.h"
+#include "Environment.h"
+#include "Constants.h"
// Functions to copy values set by installer from HKLM to HKCU.
static void CopyHKLMValues();
static void CopyFromLMtoCU(HKEY lmKey, HKEY cuKey, LPCTSTR valname);
static void ResetFirstRun(HKEY key);
+namespace Options
+{
+
/**
* @brief Initialise options and set default values.
*
* using WinMerge and many users never change them. So pick
* default values carefully!
*/
-void CMergeApp::OptionsInit()
+void Init(COptionsMgr *pOptions)
{
// Copy some values from HKLM to HKCU
CopyHKLMValues();
- static_cast<CRegOptionsMgr *>(m_pOptions.get())->SetRegRootKey(_T("Thingamahoochie\\WinMerge\\"));
+ static_cast<CRegOptionsMgr *>(pOptions)->SetRegRootKey(_T("Thingamahoochie\\WinMerge\\"));
LANGID LangId = GetUserDefaultLangID();
if (PRIMARYLANGID(LangId) == LANG_JAPANESE)
{
// Default language to Japanese unless installer set it otherwise
- m_pOptions->InitOption(OPT_SELECTED_LANGUAGE, 0x411);
+ pOptions->InitOption(OPT_SELECTED_LANGUAGE, 0x411);
}
else
{
// Default language to English unless installer set it otherwise
- m_pOptions->InitOption(OPT_SELECTED_LANGUAGE, 0x409);
+ pOptions->InitOption(OPT_SELECTED_LANGUAGE, 0x409);
}
// Initialise options (name, default value)
- m_pOptions->InitOption(OPT_SHOW_UNIQUE_LEFT, true);
- m_pOptions->InitOption(OPT_SHOW_UNIQUE_RIGHT, true);
- m_pOptions->InitOption(OPT_SHOW_DIFFERENT, true);
- m_pOptions->InitOption(OPT_SHOW_IDENTICAL, true);
- m_pOptions->InitOption(OPT_SHOW_BINARIES, true);
- m_pOptions->InitOption(OPT_SHOW_SKIPPED, false);
-
- m_pOptions->InitOption(OPT_SHOW_TOOLBAR, true);
- m_pOptions->InitOption(OPT_SHOW_STATUSBAR, true);
- m_pOptions->InitOption(OPT_SHOW_TABBAR, true);
- m_pOptions->InitOption(OPT_TOOLBAR_SIZE, 0);
- m_pOptions->InitOption(OPT_RESIZE_PANES, false);
-
- m_pOptions->InitOption(OPT_SYNTAX_HIGHLIGHT, true);
- m_pOptions->InitOption(OPT_WORDWRAP, false);
- m_pOptions->InitOption(OPT_VIEW_LINENUMBERS, false);
- m_pOptions->InitOption(OPT_VIEW_WHITESPACE, false);
- m_pOptions->InitOption(OPT_CONNECT_MOVED_BLOCKS, 0);
- m_pOptions->InitOption(OPT_SCROLL_TO_FIRST, false);
- m_pOptions->InitOption(OPT_VERIFY_OPEN_PATHS, true);
- m_pOptions->InitOption(OPT_AUTO_COMPLETE_SOURCE, (int)1);
- m_pOptions->InitOption(OPT_VIEW_FILEMARGIN, false);
- m_pOptions->InitOption(OPT_DIFF_CONTEXT, (int)-1);
- m_pOptions->InitOption(OPT_SPLIT_HORIZONTALLY, false);
-
- m_pOptions->InitOption(OPT_WORDDIFF_HIGHLIGHT, true);
- m_pOptions->InitOption(OPT_BREAK_SEPARATORS, _T(".,:;?[](){}<>`'!\"#$%&^~\\|@+-*/"));
-
- m_pOptions->InitOption(OPT_BACKUP_FOLDERCMP, false);
- m_pOptions->InitOption(OPT_BACKUP_FILECMP, true);
- m_pOptions->InitOption(OPT_BACKUP_LOCATION, (int)0);
- m_pOptions->InitOption(OPT_BACKUP_GLOBALFOLDER, _T(""));
- m_pOptions->InitOption(OPT_BACKUP_ADD_BAK, true);
- m_pOptions->InitOption(OPT_BACKUP_ADD_TIME, false);
-
- m_pOptions->InitOption(OPT_DIRVIEW_SORT_COLUMN, (int)-1);
- m_pOptions->InitOption(OPT_DIRVIEW_SORT_COLUMN3, (int)-1);
- m_pOptions->InitOption(OPT_DIRVIEW_SORT_ASCENDING, true);
- m_pOptions->InitOption(OPT_SHOW_SELECT_FILES_AT_STARTUP, false);
- m_pOptions->InitOption(OPT_DIRVIEW_EXPAND_SUBDIRS, false);
-
- m_pOptions->InitOption(OPT_AUTOMATIC_RESCAN, false);
- m_pOptions->InitOption(OPT_ALLOW_MIXED_EOL, false);
- m_pOptions->InitOption(OPT_TAB_SIZE, (int)4);
- m_pOptions->InitOption(OPT_TAB_TYPE, (int)0); // 0 means tabs inserted
-
- m_pOptions->InitOption(OPT_EXT_EDITOR_CMD, GetDefaultEditor());
- m_pOptions->InitOption(OPT_USE_RECYCLE_BIN, true);
- m_pOptions->InitOption(OPT_SINGLE_INSTANCE, false);
- m_pOptions->InitOption(OPT_MERGE_MODE, false);
+ pOptions->InitOption(OPT_SHOW_UNIQUE_LEFT, true);
+ pOptions->InitOption(OPT_SHOW_UNIQUE_RIGHT, true);
+ pOptions->InitOption(OPT_SHOW_DIFFERENT, true);
+ pOptions->InitOption(OPT_SHOW_IDENTICAL, true);
+ pOptions->InitOption(OPT_SHOW_BINARIES, true);
+ pOptions->InitOption(OPT_SHOW_SKIPPED, false);
+
+ pOptions->InitOption(OPT_SHOW_TOOLBAR, true);
+ pOptions->InitOption(OPT_SHOW_STATUSBAR, true);
+ pOptions->InitOption(OPT_SHOW_TABBAR, true);
+ pOptions->InitOption(OPT_TOOLBAR_SIZE, 0);
+ pOptions->InitOption(OPT_RESIZE_PANES, false);
+
+ pOptions->InitOption(OPT_SYNTAX_HIGHLIGHT, true);
+ pOptions->InitOption(OPT_WORDWRAP, false);
+ pOptions->InitOption(OPT_VIEW_LINENUMBERS, false);
+ pOptions->InitOption(OPT_VIEW_WHITESPACE, false);
+ pOptions->InitOption(OPT_CONNECT_MOVED_BLOCKS, 0);
+ pOptions->InitOption(OPT_SCROLL_TO_FIRST, false);
+ pOptions->InitOption(OPT_VERIFY_OPEN_PATHS, true);
+ pOptions->InitOption(OPT_AUTO_COMPLETE_SOURCE, (int)1);
+ pOptions->InitOption(OPT_VIEW_FILEMARGIN, false);
+ pOptions->InitOption(OPT_DIFF_CONTEXT, (int)-1);
+ pOptions->InitOption(OPT_SPLIT_HORIZONTALLY, false);
+
+ pOptions->InitOption(OPT_WORDDIFF_HIGHLIGHT, true);
+ pOptions->InitOption(OPT_BREAK_SEPARATORS, _T(".,:;?[](){}<>`'!\"#$%&^~\\|@+-*/"));
+
+ pOptions->InitOption(OPT_BACKUP_FOLDERCMP, false);
+ pOptions->InitOption(OPT_BACKUP_FILECMP, true);
+ pOptions->InitOption(OPT_BACKUP_LOCATION, (int)0);
+ pOptions->InitOption(OPT_BACKUP_GLOBALFOLDER, _T(""));
+ pOptions->InitOption(OPT_BACKUP_ADD_BAK, true);
+ pOptions->InitOption(OPT_BACKUP_ADD_TIME, false);
+
+ pOptions->InitOption(OPT_DIRVIEW_SORT_COLUMN, (int)-1);
+ pOptions->InitOption(OPT_DIRVIEW_SORT_COLUMN3, (int)-1);
+ pOptions->InitOption(OPT_DIRVIEW_SORT_ASCENDING, true);
+ pOptions->InitOption(OPT_SHOW_SELECT_FILES_AT_STARTUP, false);
+ pOptions->InitOption(OPT_DIRVIEW_EXPAND_SUBDIRS, false);
+
+ pOptions->InitOption(OPT_AUTOMATIC_RESCAN, false);
+ pOptions->InitOption(OPT_ALLOW_MIXED_EOL, false);
+ pOptions->InitOption(OPT_TAB_SIZE, (int)4);
+ pOptions->InitOption(OPT_TAB_TYPE, (int)0); // 0 means tabs inserted
+
+ pOptions->InitOption(OPT_EXT_EDITOR_CMD, paths_ConcatPath(env_GetWindowsDirectory(), _T("NOTEPAD.EXE")));
+ pOptions->InitOption(OPT_USE_RECYCLE_BIN, true);
+ pOptions->InitOption(OPT_SINGLE_INSTANCE, false);
+ pOptions->InitOption(OPT_MERGE_MODE, false);
// OPT_WORDDIFF_HIGHLIGHT is initialized above
- m_pOptions->InitOption(OPT_BREAK_ON_WORDS, false);
- m_pOptions->InitOption(OPT_BREAK_TYPE, 1);
-
- m_pOptions->InitOption(OPT_CLOSE_WITH_ESC, true);
- m_pOptions->InitOption(OPT_CLOSE_WITH_OK, false);
- m_pOptions->InitOption(OPT_IGNORE_SMALL_FILETIME, false);
- m_pOptions->InitOption(OPT_ASK_MULTIWINDOW_CLOSE, false);
- m_pOptions->InitOption(OPT_PRESERVE_FILETIMES, false);
- m_pOptions->InitOption(OPT_TREE_MODE, false);
-
- m_pOptions->InitOption(OPT_CMP_METHOD, (int)CMP_CONTENT);
- m_pOptions->InitOption(OPT_CMP_MOVED_BLOCKS, false);
- m_pOptions->InitOption(OPT_CMP_MATCH_SIMILAR_LINES, false);
- m_pOptions->InitOption(OPT_CMP_STOP_AFTER_FIRST, false);
- m_pOptions->InitOption(OPT_CMP_QUICK_LIMIT, 4 * 1024 * 1024); // 4 Megs
- m_pOptions->InitOption(OPT_CMP_WALK_UNIQUE_DIRS, false);
- m_pOptions->InitOption(OPT_CMP_IGNORE_REPARSE_POINTS, false);
-
- m_pOptions->InitOption(OPT_CMP_BIN_FILEPATTERNS, _T("*.bin;*.frx"));
-
- m_pOptions->InitOption(OPT_CMP_IMG_FILEPATTERNS, _T("*.bmp;*.cut;*.dds;*.exr;*.g3;*.gif;*.hdr;*.ico;*.iff;*.lbm;*.j2k;*.j2c;*.jng;*.jp2;*.jpg;*.jif;*.jpeg;*.jpe;*.jxr;*.wdp;*.hdp;*.koa;*.mng;*.pcd;*.pcx;*.pfm;*.pct;*.pict;*.pic;*.png;*.pbm;*.pgm;*.ppm;*.psd;*.ras;*.sgi;*.rgb;*.rgba;*.bw;*.tga;*.targa;*.tif;*.tiff;*.wap;*.wbmp;*.wbm;*.webp;*.xbm;*.xpm"));
- m_pOptions->InitOption(OPT_CMP_IMG_SHOWDIFFERENCES, true);
- m_pOptions->InitOption(OPT_CMP_IMG_OVERLAYMOVE, 0);
- m_pOptions->InitOption(OPT_CMP_IMG_ZOOM, 1000);
- m_pOptions->InitOption(OPT_CMP_IMG_USEBACKCOLOR, true);
- m_pOptions->InitOption(OPT_CMP_IMG_BACKCOLOR, 0xFFFFFF);
- m_pOptions->InitOption(OPT_CMP_IMG_DIFFBLOCKSIZE, 8);
- m_pOptions->InitOption(OPT_CMP_IMG_THRESHOLD, 0);
-
- m_pOptions->InitOption(OPT_PROJECTS_PATH, _T(""));
- m_pOptions->InitOption(OPT_USE_SYSTEM_TEMP_PATH, true);
- m_pOptions->InitOption(OPT_CUSTOM_TEMP_PATH, _T(""));
-
- m_pOptions->InitOption(OPT_LINEFILTER_ENABLED, false);
- m_pOptions->InitOption(OPT_FILEFILTER_CURRENT, _T("*.*"));
+ pOptions->InitOption(OPT_BREAK_ON_WORDS, false);
+ pOptions->InitOption(OPT_BREAK_TYPE, 1);
+
+ pOptions->InitOption(OPT_CLOSE_WITH_ESC, true);
+ pOptions->InitOption(OPT_CLOSE_WITH_OK, false);
+ pOptions->InitOption(OPT_IGNORE_SMALL_FILETIME, false);
+ pOptions->InitOption(OPT_ASK_MULTIWINDOW_CLOSE, false);
+ pOptions->InitOption(OPT_PRESERVE_FILETIMES, false);
+ pOptions->InitOption(OPT_TREE_MODE, false);
+
+ pOptions->InitOption(OPT_CMP_METHOD, (int)CMP_CONTENT);
+ pOptions->InitOption(OPT_CMP_MOVED_BLOCKS, false);
+ pOptions->InitOption(OPT_CMP_MATCH_SIMILAR_LINES, false);
+ pOptions->InitOption(OPT_CMP_STOP_AFTER_FIRST, false);
+ pOptions->InitOption(OPT_CMP_QUICK_LIMIT, 4 * 1024 * 1024); // 4 Megs
+ pOptions->InitOption(OPT_CMP_WALK_UNIQUE_DIRS, false);
+ pOptions->InitOption(OPT_CMP_IGNORE_REPARSE_POINTS, false);
+
+ pOptions->InitOption(OPT_CMP_BIN_FILEPATTERNS, _T("*.bin;*.frx"));
+
+ pOptions->InitOption(OPT_CMP_IMG_FILEPATTERNS, _T("*.bmp;*.cut;*.dds;*.exr;*.g3;*.gif;*.hdr;*.ico;*.iff;*.lbm;*.j2k;*.j2c;*.jng;*.jp2;*.jpg;*.jif;*.jpeg;*.jpe;*.jxr;*.wdp;*.hdp;*.koa;*.mng;*.pcd;*.pcx;*.pfm;*.pct;*.pict;*.pic;*.png;*.pbm;*.pgm;*.ppm;*.psd;*.ras;*.sgi;*.rgb;*.rgba;*.bw;*.tga;*.targa;*.tif;*.tiff;*.wap;*.wbmp;*.wbm;*.webp;*.xbm;*.xpm"));
+ pOptions->InitOption(OPT_CMP_IMG_SHOWDIFFERENCES, true);
+ pOptions->InitOption(OPT_CMP_IMG_OVERLAYMOVE, 0);
+ pOptions->InitOption(OPT_CMP_IMG_ZOOM, 1000);
+ pOptions->InitOption(OPT_CMP_IMG_USEBACKCOLOR, true);
+ pOptions->InitOption(OPT_CMP_IMG_BACKCOLOR, 0xFFFFFF);
+ pOptions->InitOption(OPT_CMP_IMG_DIFFBLOCKSIZE, 8);
+ pOptions->InitOption(OPT_CMP_IMG_THRESHOLD, 0);
+
+ pOptions->InitOption(OPT_PROJECTS_PATH, _T(""));
+ pOptions->InitOption(OPT_USE_SYSTEM_TEMP_PATH, true);
+ pOptions->InitOption(OPT_CUSTOM_TEMP_PATH, _T(""));
+
+ pOptions->InitOption(OPT_LINEFILTER_ENABLED, false);
+ pOptions->InitOption(OPT_FILEFILTER_CURRENT, _T("*.*"));
// CMainFrame initializes this when it is empty.
- m_pOptions->InitOption(OPT_FILTER_USERPATH, GetDefaultFilterUserPath());
- m_pOptions->InitOption(OPT_FILEFILTER_SHARED, false);
+ pOptions->InitOption(OPT_FILTER_USERPATH, paths_ConcatPath(env_GetMyDocuments(), DefaultRelativeFilterPath));
+ pOptions->InitOption(OPT_FILEFILTER_SHARED, false);
- m_pOptions->InitOption(OPT_CP_DEFAULT_MODE, (int)0);
- m_pOptions->InitOption(OPT_CP_DEFAULT_CUSTOM, (int)GetACP());
+ pOptions->InitOption(OPT_CP_DEFAULT_MODE, (int)0);
+ pOptions->InitOption(OPT_CP_DEFAULT_CUSTOM, (int)GetACP());
if (PRIMARYLANGID(LangId) == LANG_JAPANESE)
- m_pOptions->InitOption(OPT_CP_DETECT, (int)(50932 << 16) | 3);
+ pOptions->InitOption(OPT_CP_DETECT, (int)(50932 << 16) | 3);
else if (LangId == MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED))
- m_pOptions->InitOption(OPT_CP_DETECT, (int)(50936 << 16) | 3);
+ pOptions->InitOption(OPT_CP_DETECT, (int)(50936 << 16) | 3);
else if (PRIMARYLANGID(LangId) == LANG_KOREAN)
- m_pOptions->InitOption(OPT_CP_DETECT, (int)(50949 << 16) | 3);
+ pOptions->InitOption(OPT_CP_DETECT, (int)(50949 << 16) | 3);
else if (LangId == MAKELANGID(LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL))
- m_pOptions->InitOption(OPT_CP_DETECT, (int)(50950 << 16) | 3);
+ pOptions->InitOption(OPT_CP_DETECT, (int)(50950 << 16) | 3);
else
- m_pOptions->InitOption(OPT_CP_DETECT, (int)(50001 << 16) | 3);
+ pOptions->InitOption(OPT_CP_DETECT, (int)(50001 << 16) | 3);
- m_pOptions->InitOption(OPT_VCS_SYSTEM, VCS_NONE);
- m_pOptions->InitOption(OPT_VSS_PATH, _T(""));
+ pOptions->InitOption(OPT_VCS_SYSTEM, SourceControl::VCS_NONE);
+ pOptions->InitOption(OPT_VSS_PATH, _T(""));
- m_pOptions->InitOption(OPT_ARCHIVE_ENABLE, 1); // Enable by default
- m_pOptions->InitOption(OPT_ARCHIVE_PROBETYPE, false);
+ pOptions->InitOption(OPT_ARCHIVE_ENABLE, 1); // Enable by default
+ pOptions->InitOption(OPT_ARCHIVE_PROBETYPE, false);
- m_pOptions->InitOption(OPT_PLUGINS_ENABLED, true);
- m_pOptions->InitOption(OPT_PLUGINS_DISABLED_LIST, _T(""));
+ pOptions->InitOption(OPT_PLUGINS_ENABLED, true);
+ pOptions->InitOption(OPT_PLUGINS_DISABLED_LIST, _T(""));
- m_pOptions->InitOption(OPT_TABBAR_AUTO_MAXWIDTH, true);
+ pOptions->InitOption(OPT_TABBAR_AUTO_MAXWIDTH, true);
+
+ Options::DiffOptions::SetDefaults(pOptions);
+ Options::DiffColors::SetDefaults(pOptions);
+ Options::Font::SetDefaults(pOptions);
+}
- Options::DiffOptions::SetDefaults();
- Options::DiffColors::SetDefaults();
- Options::Font::SetDefaults();
}
/**
--- /dev/null
+class COptionsMgr;\r
+\r
+namespace Options {\r
+\r
+void Init(COptionsMgr *pOptions);\r
+\r
+}\r
#include "OptionsSyntaxColors.h"
#include <vector>
#include "SyntaxColors.h"
-#include "MergeApp.h"
#include "UnicodeString.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
* @brief Load color values from storage
* @param [out] pSyntaxColors pointer to SyntaxColors
*/
-void Load(::SyntaxColors *pSyntaxColors)
+void Load(COptionsMgr *pOptionsMgr, ::SyntaxColors *pSyntaxColors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
String valuename(DefColorsPath);
int count = COLORINDEX_COUNT;
* @brief Save color values to storage
* @param [in] pSyntaxColors pointer to SyntaxColors
*/
-void Save(const ::SyntaxColors *pSyntaxColors)
+void Save(COptionsMgr *pOptionsMgr, const ::SyntaxColors *pSyntaxColors)
{
- COptionsMgr *pOptionsMgr = GetOptionsMgr();
String valuename(DefColorsPath);
int count = COLORINDEX_COUNT;
#pragma once
class SyntaxColors;
+class COptionsMgr;
namespace Options { namespace SyntaxColors {
-void Load(::SyntaxColors *pSyntaxColors);
-void Save(const ::SyntaxColors *pSyntaxColors);
+void Load(COptionsMgr *pOptionsMgr, ::SyntaxColors *pSyntaxColors);
+void Save(COptionsMgr *pOptionsMgr, const ::SyntaxColors *pSyntaxColors);
}}
void PropMergeColors::BrowseColor(CColorButton & colorButton)
{
CColorDialog dialog(colorButton.GetColor());
- Options::CustomColors::Load(m_cCustColors);
+ Options::CustomColors::Load(GetOptionsMgr(), m_cCustColors);
dialog.m_cc.lpCustColors = m_cCustColors;
if (dialog.DoModal() == IDOK)
colorButton.SetColor(dialog.GetColor());
- Options::CustomColors::Save(m_cCustColors);
+ Options::CustomColors::Save(GetOptionsMgr(), m_cCustColors);
}
void PropMergeColors::UpdateTextColorButtonState(int checkboxId, CColorButton &btn)
#include "RegKey.h"
#include "coretools.h"
#include "FileOrFolderSelect.h"
-#include "Merge.h" // GetDefaultEditor()
+#include "Merge.h"
#include "OptionsDef.h"
#include "OptionsMgr.h"
#include "OptionsPanel.h"
*/
void PropRegistry::WriteOptions()
{
- CMergeApp *app = static_cast<CMergeApp*>(AfxGetApp());
- String sDefaultEditor = app->GetDefaultEditor();
-
GetOptionsMgr()->SaveOption(OPT_USE_RECYCLE_BIN, m_bUseRecycleBin == TRUE);
String sExtEditor = string_trim_ws((LPCTSTR)m_strEditorPath);
if (sExtEditor.empty())
- sExtEditor = sDefaultEditor;
+ sExtEditor = GetOptionsMgr()->GetDefault<String>(OPT_EXT_EDITOR_CMD);
GetOptionsMgr()->SaveOption(OPT_EXT_EDITOR_CMD, sExtEditor);
String sFilterPath = string_trim_ws((LPCTSTR)m_strUserFilterPath);
// which writes to m_pTempColors
// so user's latest choices are in m_pTempColors
// (we don't have to read them from screen)
- Options::SyntaxColors::Save(m_pTempColors);
+ Options::SyntaxColors::Save(GetOptionsMgr(), m_pTempColors);
}
/**
{
COLORREF currentColor = m_pTempColors->GetColor(colorIndex);
CColorDialog dialog(currentColor);
- Options::CustomColors::Load(m_cCustColors);
+ Options::CustomColors::Load(GetOptionsMgr(), m_cCustColors);
dialog.m_cc.lpCustColors = m_cCustColors;
if (dialog.DoModal() == IDOK)
colorButton.SetColor(currentColor);
m_pTempColors->SetColor(colorIndex, currentColor);
}
- Options::CustomColors::Save(m_cCustColors);
+ Options::CustomColors::Save(GetOptionsMgr(), m_cCustColors);
}
void PropSyntaxColors::OnBnClickedEcolorKeywords()
COLORREF currentColor = m_pTempColors->GetColor(colorIndex);
CColorDialog dialog(currentColor);
- Options::CustomColors::Load(m_cCustColors);
+ Options::CustomColors::Load(GetOptionsMgr(), m_cCustColors);
dialog.m_cc.lpCustColors = m_cCustColors;
if (dialog.DoModal() == IDOK)
colorButton.SetColor(currentColor);
m_pTempColors->SetColor(colorIndex, currentColor);
}
- Options::CustomColors::Save(m_cCustColors);
+ Options::CustomColors::Save(GetOptionsMgr(), m_cCustColors);
}
/**
#include "OptionsDef.h"
#include "OptionsMgr.h"
#include "OptionsPanel.h"
+#include "SourceControl.h"
#ifdef _DEBUG
#define new DEBUG_NEW
void PropVss::OnSelendokVerSys()
{
UpdateData(TRUE);
- String tempStr = theApp.LoadString(m_nVerSys == VCS_CLEARCASE ? IDS_CC_CMD : IDS_VSS_CMD);
+ String tempStr = theApp.LoadString(m_nVerSys == SourceControl::VCS_CLEARCASE ? IDS_CC_CMD : IDS_VSS_CMD);
m_ctlVssL1.SetWindowText(tempStr.c_str());
- m_ctlPath.EnableWindow(m_nVerSys == VCS_VSS4 || m_nVerSys == VCS_CLEARCASE);
- m_ctlVssL1.EnableWindow(m_nVerSys == VCS_VSS4 || m_nVerSys == VCS_CLEARCASE);
- m_ctlBrowse.EnableWindow(m_nVerSys == VCS_VSS4 || m_nVerSys == VCS_CLEARCASE);
+ m_ctlPath.EnableWindow(m_nVerSys == SourceControl::VCS_VSS4 || m_nVerSys == SourceControl::VCS_CLEARCASE);
+ m_ctlVssL1.EnableWindow(m_nVerSys == SourceControl::VCS_VSS4 || m_nVerSys == SourceControl::VCS_CLEARCASE);
+ m_ctlBrowse.EnableWindow(m_nVerSys == SourceControl::VCS_VSS4 || m_nVerSys == SourceControl::VCS_CLEARCASE);
}
/**
*/
#include "StdAfx.h"
+#include "SourceControl.h"
#define POCO_NO_UNWINDOWS 1
#include <Poco/Process.h>
#include <Poco/Format.h>
switch(nVerSys)
{
- case VCS_NONE: //no versioning system
+ case SourceControl::VCS_NONE: //no versioning system
// Already handled in CheckSavePath()
break;
- case VCS_VSS4: // Visual Source Safe
+ case SourceControl::VCS_VSS4: // Visual Source Safe
{
// Prompt for user choice
CVssPromptDlg dlg;
return FALSE; // User selected cancel
}
break;
- case VCS_VSS5: // CVisual SourceSafe 5.0+ (COM)
+ case SourceControl::VCS_VSS5: // CVisual SourceSafe 5.0+ (COM)
{
// prompt for user choice
CVssPromptDlg dlg;
return FALSE; // User selected cancel
}
break;
- case VCS_CLEARCASE:
+ case SourceControl::VCS_CLEARCASE:
{
// prompt for user choice
CCCPromptDlg dlg;
--- /dev/null
+/** \r
+ * @file SourceControl.h\r
+ *\r
+ * @brief Declaration file for SourceControl\r
+ */\r
+\r
+#pragma once\r
+\r
+class SourceControl\r
+{\r
+public:\r
+ /**\r
+ * @brief Supported versioncontrol systems.\r
+ */\r
+ enum\r
+ {\r
+ VCS_NONE = 0,\r
+ VCS_VSS4,\r
+ VCS_VSS5,\r
+ VCS_CLEARCASE,\r
+ };\r
+};\r
+\r