OSDN Git Service

PATCH: [ 1161671 ] Convert couple of VCS options to COptionsMgr
authorKimmo Varis <kimmov@gmail.com>
Sun, 13 Mar 2005 13:17:46 +0000 (13:17 +0000)
committerKimmo Varis <kimmov@gmail.com>
Sun, 13 Mar 2005 13:17:46 +0000 (13:17 +0000)
Src/MainFrm.cpp
Src/MainFrm.h
Src/OptionsDef.h
Src/readme.txt

index 6aeaff5..8144d8e 100644 (file)
@@ -249,6 +249,9 @@ CMainFrame::CMainFrame()
        m_options.InitOption(OPT_FONT_FILECMP_USECUSTOM, false);
        m_options.InitOption(OPT_FONT_DIRCMP_USECUSTOM, false);
 
+       m_options.InitOption(OPT_VCS_SYSTEM, VCS_NONE);
+       m_options.InitOption(OPT_VSS_PATH, _T(""));
+
        updateDefaultCodepage(&m_options);
 
        m_bShowErrors = TRUE;
@@ -256,12 +259,10 @@ CMainFrame::CMainFrame()
        m_bVCProjSync = FALSE;
        m_bVssSuppressPathCheck = FALSE;
 
-       m_nVerSys = theApp.GetProfileInt(_T("Settings"), _T("VersionSystem"), VCS_NONE);
        m_vssHelper.SetProjectBase(theApp.GetProfileString(_T("Settings"), _T("VssProject"), _T("")));
        m_strVssUser = theApp.GetProfileString(_T("Settings"), _T("VssUser"), _T(""));
 //     m_strVssPassword = theApp.GetProfileString(_T("Settings"), _T("VssPassword"), _T(""));
        theApp.WriteProfileString(_T("Settings"), _T("VssPassword"), _T(""));
-       m_strVssPath = theApp.GetProfileString(_T("Settings"), _T("VssPath"), _T(""));
        m_strVssDatabase = theApp.GetProfileString(_T("Settings"), _T("VssDatabase"),_T(""));
        theApp.m_globalFileFilter.SetFilter(m_options.GetString(OPT_FILEFILTER_CURRENT));
        g_bUnpackerMode = theApp.GetProfileInt(_T("Settings"), _T("UnpackerMode"), PLUGIN_MANUAL);
@@ -275,7 +276,8 @@ CMainFrame::CMainFrame()
        if (m_options.GetString(OPT_EXT_EDITOR_CMD).IsEmpty())
                m_options.SaveOption(OPT_EXT_EDITOR_CMD, GetDefaultEditor());
 
-       if (m_strVssPath.IsEmpty())
+       CString vssPath = m_options.GetString(OPT_VSS_PATH);
+       if (vssPath.IsEmpty())
        {
                CRegKeyEx reg;
                if (reg.QueryRegMachine(_T("SOFTWARE\\Microsoft\\SourceSafe")))
@@ -283,7 +285,8 @@ CMainFrame::CMainFrame()
                        TCHAR temp[_MAX_PATH] = {0};
                        reg.ReadChars(_T("SCCServerPath"), temp, _MAX_PATH, _T(""));
                        CString spath = GetPathOnly(temp);
-                       m_strVssPath = spath + _T("\\Ss.exe");
+                       vssPath = spath + _T("\\Ss.exe");
+                       m_options.SaveOption(OPT_VSS_PATH, vssPath);
                }
        }
 
@@ -762,15 +765,17 @@ int CMainFrame::HandleReadonlySave(CString& strSavePath, BOOL bMultiFile,
        BOOL bFileExists = FALSE;
        CString s;
        CString title;
+       int nVerSys = 0;
 
        bFileRO = files_isFileReadOnly(strSavePath, &bFileExists);
+       nVerSys = m_options.GetInt(OPT_VCS_SYSTEM);
        
        if (bFileExists && bFileRO)
        {
                // Version control system used?
                // Checkout file from VCS and modify, don't ask about overwriting
                // RO files etc.
-               if (m_nVerSys != VCS_NONE)
+               if (nVerSys != VCS_NONE)
                {
                        BOOL bRetVal = SaveToVersionControl(strSavePath);
                        if (bRetVal)
@@ -852,8 +857,11 @@ BOOL CMainFrame::SaveToVersionControl(CString& strSavePath)
        CFileStatus status;
        CString s;
        UINT userChoice = 0;
+       int nVerSys = 0;
+
+       nVerSys = m_options.GetInt(OPT_VCS_SYSTEM);
 
-       switch(m_nVerSys)
+       switch(nVerSys)
        {
        case VCS_NONE:  //no versioning system
                // Already handled in CheckSavePath()
@@ -893,7 +901,8 @@ BOOL CMainFrame::SaveToVersionControl(CString& strSavePath)
                        }
                        CString args;
                        args.Format(_T("checkout \"%s/%s\""), m_vssHelper.GetProjectBase(), sname);
-                       HANDLE hVss = RunIt(m_strVssPath, args, TRUE, FALSE);
+                       CString vssPath = m_options.GetString(OPT_VSS_PATH);
+                       HANDLE hVss = RunIt(vssPath, args, TRUE, FALSE);
                        if (hVss != INVALID_HANDLE_VALUE)
                        {
                                WaitForSingleObject(hVss, INFINITE);
@@ -1114,7 +1123,8 @@ BOOL CMainFrame::SaveToVersionControl(CString& strSavePath)
                        DWORD code;
                        CString args;
                        args.Format(_T("checkout -c \"%s\" \"%s\""), dlg.m_comments, sname);
-                       HANDLE hVss = RunIt(m_strVssPath, args, TRUE, FALSE);
+                       CString vssPath = m_options.GetString(OPT_VSS_PATH);
+                       HANDLE hVss = RunIt(vssPath, args, TRUE, FALSE);
                        if (hVss!=INVALID_HANDLE_VALUE)
                        {
                                WaitForSingleObject(hVss, INFINITE);
@@ -1172,8 +1182,8 @@ void CMainFrame::OnOptions()
        sht.AddPage(&regpage);
        sht.AddPage(&codepage);
        
-       vss.m_nVerSys = m_nVerSys;
-       vss.m_strPath = m_strVssPath;
+       vss.m_nVerSys = m_options.GetInt(OPT_VCS_SYSTEM);
+       vss.m_strPath = m_options.GetString(OPT_VSS_PATH);
        gen.m_bBackup = m_options.GetBool(OPT_CREATE_BACKUPS);
        gen.m_bScroll = m_options.GetBool(OPT_SCROLL_TO_FIRST);
        gen.m_bDisableSplash = m_options.GetBool(OPT_DISABLE_SPLASH);
@@ -1201,9 +1211,6 @@ void CMainFrame::OnOptions()
 
        if (sht.DoModal()==IDOK)
        {
-               m_nVerSys = vss.m_nVerSys;
-               m_strVssPath = vss.m_strPath;
-               
                m_options.SaveOption(OPT_CREATE_BACKUPS, gen.m_bBackup == TRUE);
                m_options.SaveOption(OPT_SCROLL_TO_FIRST, gen.m_bScroll == TRUE);
                m_options.SaveOption(OPT_DISABLE_SPLASH, gen.m_bDisableSplash == TRUE);
@@ -1234,8 +1241,8 @@ void CMainFrame::OnOptions()
                m_options.SaveOption(OPT_SYNTAX_HIGHLIGHT, editor.m_bHiliteSyntax == TRUE);
                m_options.SaveOption(OPT_UNREC_APPLYSYNTAX, editor.m_bApplySyntax == TRUE);
 
-               theApp.WriteProfileInt(_T("Settings"), _T("VersionSystem"), m_nVerSys);
-               theApp.WriteProfileString(_T("Settings"), _T("VssPath"), m_strVssPath);
+               m_options.SaveOption(OPT_VCS_SYSTEM, vss.m_nVerSys);
+               m_options.SaveOption(OPT_VSS_PATH, vss.m_strPath);
 
                m_options.SaveOption(OPT_CLR_DIFF, (int)colors.m_clrDiff);
                m_options.SaveOption(OPT_CLR_SELECTED_DIFF, (int)colors.m_clrSelDiff);
@@ -1567,6 +1574,9 @@ int CMainFrame::SyncFileToVCS(LPCTSTR pszSrc, LPCTSTR pszDest,
 {
        CString sActionError;
        CString strSavePath(pszDest);
+       int nVerSys = 0;
+
+       nVerSys = m_options.GetInt(OPT_VCS_SYSTEM);
        
        int nRetVal = HandleReadonlySave(strSavePath, TRUE, bApplyToAll);
        if (nRetVal == IDCANCEL || nRetVal == IDNO)
@@ -1579,7 +1589,7 @@ int CMainFrame::SyncFileToVCS(LPCTSTR pszSrc, LPCTSTR pszDest,
        }
        
        // If VC project opened from VSS sync and version control used
-       if ((m_nVerSys == VCS_VSS4 || m_nVerSys == VCS_VSS5) && m_bVCProjSync)
+       if ((nVerSys == VCS_VSS4 || nVerSys == VCS_VSS5) && m_bVCProjSync)
        {
                if (!m_vssHelper.ReLinkVCProj(strSavePath, psError))
                        nRetVal = -1;
index 989a51c..fa077ce 100644 (file)
@@ -143,8 +143,6 @@ public:
         * @name Version Control System (VCS) integration.
         */
        /*@{*/ 
-       int m_nVerSys; /**< Selected version control system */
-       CString m_strVssPath;
        CString m_strVssUser; /**< Visual Source Safe User ID */
        CString m_strVssPassword; /**< Visual Source Safe Password */
        CString m_strVssDatabase;
index cf02f8a..3e498d5 100644 (file)
@@ -16,7 +16,6 @@ const TCHAR OPT_SHOW_DIFFERENT[] = _T("Settings/ShowDifferent");
 const TCHAR OPT_SHOW_IDENTICAL[] = _T("Settings/ShowIdentical");
 const TCHAR OPT_SHOW_BINARIES[] = _T("Settings/ShowBinaries");
 const TCHAR OPT_SHOW_SKIPPED[] = _T("Settings/ShowSkipped");
-const TCHAR OPT_HIDE_BACKUP[] = _T("Settings/HideBak");
 
 // Show/hide toolbar/statusbar
 const TCHAR OPT_SHOW_TOOLBAR[] = _T("Settings/ShowToolbar");
@@ -109,4 +108,8 @@ const TCHAR OPT_FILEFILTER_CURRENT[] = _T("Settings/FileFilterCurrent");
 const TCHAR OPT_FONT_FILECMP_USECUSTOM[] = _T("Font/Specified");
 const TCHAR OPT_FONT_DIRCMP_USECUSTOM[] = _T("FontDirCompare/Specified");
 
+// Version control
+const TCHAR OPT_VCS_SYSTEM[] = _T("Settings/VersionSystem");
+const TCHAR OPT_VSS_PATH[] = _T("Settings/VssPath");
+
 #endif // _OPTIONS_DEF_H_
index ed69fa7..8fe86ba 100644 (file)
@@ -1,3 +1,7 @@
+2005-03-13 Kimmo
+ PATCH: [ 1161671 ] Convert couple of VCS options to COptionsMgr
+  Src: MainFrm.cpp MainFrm.h OptionsDef.h
+
 2005-03-11 Kimmo
  PATCH: [ 1160923 ] Remove CMainFrame::m_nCompMethod (ugly hack)
   Src: DirDoc.cpp MainFrm.cpp MainFrm.h