OSDN Git Service

Cleanup 'look and feel' settings page.
authorJohan t Hart <johanthart@gmail.com>
Fri, 13 Feb 2009 23:26:44 +0000 (00:26 +0100)
committerFrank Li <lznuaa@gmail.com>
Sat, 14 Feb 2009 02:45:21 +0000 (10:45 +0800)
Removed subversion specific options, added some git specific options.

src/Resources/TortoiseProcENG.rc
src/TortoiseProc/Settings/SetLookAndFeelPage.cpp
src/TortoiseProc/Settings/SetLookAndFeelPage.h
src/TortoiseProc/resource.h
src/TortoiseShell/ContextMenu.cpp
src/TortoiseShell/Globals.h
src/TortoiseShell/ShellCache.h
src/TortoiseShell/ShellExt.h

index a6d846b..c959528 100644 (file)
Binary files a/src/Resources/TortoiseProcENG.rc and b/src/Resources/TortoiseProcENG.rc differ
index d1df39c..93091b8 100644 (file)
 IMPLEMENT_DYNAMIC(CSetLookAndFeelPage, ISettingsPropPage)\r
 CSetLookAndFeelPage::CSetLookAndFeelPage()\r
        : ISettingsPropPage(CSetLookAndFeelPage::IDD)\r
-       , m_bGetLockTop(FALSE)\r
        , m_bBlock(false)\r
 {\r
-       m_regTopmenu = CRegDWORD(_T("Software\\TortoiseGit\\ContextMenuEntries"), MENUCHECKOUT | MENUUPDATE | MENUCOMMIT);\r
+       m_regTopmenu = CRegDWORD(_T("Software\\TortoiseGit\\ContextMenuEntries"), MENUCLONE | MENUPUSH | MENUPULL | MENUCOMMIT);\r
        m_regTopmenuhigh = CRegDWORD(_T("Software\\TortoiseGit\\ContextMenuEntrieshigh"), 0);\r
 \r
        m_topmenu = unsigned __int64(DWORD(m_regTopmenuhigh))<<32;\r
        m_topmenu |= unsigned __int64(DWORD(m_regTopmenu));\r
 \r
-       m_regGetLockTop = CRegDWORD(_T("Software\\TortoiseGit\\GetLockTop"), TRUE);\r
-       m_bGetLockTop = m_regGetLockTop;\r
-\r
        m_regNoContextPaths = CRegString(_T("Software\\TortoiseGit\\NoContextPaths"), _T(""));\r
        m_sNoContextPaths = m_regNoContextPaths;\r
        m_sNoContextPaths.Replace(_T("\n"), _T("\r\n"));\r
@@ -54,7 +50,6 @@ void CSetLookAndFeelPage::DoDataExchange(CDataExchange* pDX)
 {\r
        ISettingsPropPage::DoDataExchange(pDX);\r
        DDX_Control(pDX, IDC_MENULIST, m_cMenuList);\r
-       DDX_Check(pDX, IDC_GETLOCKTOP, m_bGetLockTop);\r
        DDX_Text(pDX, IDC_NOCONTEXTPATHS, m_sNoContextPaths);\r
 }\r
 \r
@@ -91,40 +86,43 @@ BOOL CSetLookAndFeelPage::OnInitDialog()
        m_imgList.Create(16, 16, ILC_COLOR16 | ILC_MASK, 4, 1);\r
 \r
        m_bBlock = true;\r
-       InsertItem(IDS_MENUCHECKOUT, IDI_CHECKOUT, MENUCHECKOUT);\r
-       InsertItem(IDS_MENUUPDATE, IDI_UPDATE, MENUUPDATE);\r
+       InsertItem(IDS_MENUCLONE, IDI_CLONE, MENUCLONE);\r
+//     InsertItem(IDS_MENUUPDATE, IDI_UPDATE, MENUUPDATE);\r
+       InsertItem(IDS_MENUPULL, IDI_PULL, MENUPULL);\r
+       InsertItem(IDS_MENUFETCH, IDI_PULL, MENUFETCH);\r
+       InsertItem(IDS_MENUPUSH, IDI_PUSH, MENUPUSH);\r
        InsertItem(IDS_MENUCOMMIT, IDI_COMMIT, MENUCOMMIT);\r
        InsertItem(IDS_MENUDIFF, IDI_DIFF, MENUDIFF);\r
        InsertItem(IDS_MENUPREVDIFF, IDI_DIFF, MENUPREVDIFF);\r
-       InsertItem(IDS_MENUURLDIFF, IDI_DIFF, MENUURLDIFF);\r
+//     InsertItem(IDS_MENUURLDIFF, IDI_DIFF, MENUURLDIFF);\r
        InsertItem(IDS_MENULOG, IDI_LOG, MENULOG);\r
-       InsertItem(IDS_MENUREPOBROWSE, IDI_REPOBROWSE, MENUREPOBROWSE);\r
+//     InsertItem(IDS_MENUREPOBROWSE, IDI_REPOBROWSE, MENUREPOBROWSE);\r
        InsertItem(IDS_MENUSHOWCHANGED, IDI_SHOWCHANGED, MENUSHOWCHANGED);\r
-       InsertItem(IDS_MENUREVISIONGRAPH, IDI_REVISIONGRAPH, MENUREVISIONGRAPH);\r
+//     InsertItem(IDS_MENUREVISIONGRAPH, IDI_REVISIONGRAPH, MENUREVISIONGRAPH);\r
        InsertItem(IDS_MENUCONFLICT, IDI_CONFLICT, MENUCONFLICTEDITOR);\r
-       InsertItem(IDS_MENURESOLVE, IDI_RESOLVE, MENURESOLVE);\r
-       InsertItem(IDS_MENUUPDATEEXT, IDI_UPDATE, MENUUPDATEEXT);\r
+//     InsertItem(IDS_MENURESOLVE, IDI_RESOLVE, MENURESOLVE);\r
+//     InsertItem(IDS_MENUUPDATEEXT, IDI_UPDATE, MENUUPDATEEXT);\r
        InsertItem(IDS_MENURENAME, IDI_RENAME, MENURENAME);\r
        InsertItem(IDS_MENUREMOVE, IDI_DELETE, MENUREMOVE);\r
        InsertItem(IDS_MENUREVERT, IDI_REVERT, MENUREVERT);\r
        InsertItem(IDS_MENUDELUNVERSIONED, IDI_DELUNVERSIONED, MENUDELUNVERSIONED);\r
        InsertItem(IDS_MENUCLEANUP, IDI_CLEANUP, MENUCLEANUP);\r
-       InsertItem(IDS_MENU_LOCK, IDI_LOCK, MENULOCK);\r
-       InsertItem(IDS_MENU_UNLOCK, IDI_UNLOCK, MENUUNLOCK);\r
+//     InsertItem(IDS_MENU_LOCK, IDI_LOCK, MENULOCK);\r
+//     InsertItem(IDS_MENU_UNLOCK, IDI_UNLOCK, MENUUNLOCK);\r
        InsertItem(IDS_MENUBRANCH, IDI_COPY, MENUCOPY);\r
        InsertItem(IDS_MENUSWITCH, IDI_SWITCH, MENUSWITCH);\r
        InsertItem(IDS_MENUMERGE, IDI_MERGE, MENUMERGE);\r
        InsertItem(IDS_MENUEXPORT, IDI_EXPORT, MENUEXPORT);\r
-       InsertItem(IDS_MENURELOCATE, IDI_RELOCATE, MENURELOCATE);\r
+//     InsertItem(IDS_MENURELOCATE, IDI_RELOCATE, MENURELOCATE);\r
        InsertItem(IDS_MENUCREATEREPOS, IDI_CREATEREPOS, MENUCREATEREPOS);\r
        InsertItem(IDS_MENUADD, IDI_ADD, MENUADD);\r
-       InsertItem(IDS_MENUIMPORT, IDI_IMPORT, MENUIMPORT);\r
+//     InsertItem(IDS_MENUIMPORT, IDI_IMPORT, MENUIMPORT);\r
        InsertItem(IDS_MENUBLAME, IDI_BLAME, MENUBLAME);\r
        InsertItem(IDS_MENUIGNORE, IDI_IGNORE, MENUIGNORE);\r
        InsertItem(IDS_MENUCREATEPATCH, IDI_CREATEPATCH, MENUCREATEPATCH);\r
        InsertItem(IDS_MENUAPPLYPATCH, IDI_PATCH, MENUAPPLYPATCH);\r
        InsertItem(IDS_MENUPROPERTIES, IDI_PROPERTIES, MENUPROPERTIES);\r
-       InsertItem(IDS_MENUCLIPPASTE, IDI_CLIPPASTE, MENUCLIPPASTE);\r
+//     InsertItem(IDS_MENUCLIPPASTE, IDI_CLIPPASTE, MENUCLIPPASTE);\r
        m_bBlock = false;\r
 \r
        m_cMenuList.SetImageList(&m_imgList, LVSIL_SMALL);\r
@@ -153,7 +151,6 @@ BOOL CSetLookAndFeelPage::OnApply()
        UpdateData();\r
     Store ((DWORD)(m_topmenu & 0xFFFFFFFF),    m_regTopmenu);\r
     Store ((DWORD)(m_topmenu >> 32), m_regTopmenuhigh);\r
-    Store (m_bGetLockTop, m_regGetLockTop);\r
 \r
        m_sNoContextPaths.Replace(_T("\r"), _T(""));\r
        if (m_sNoContextPaths.Right(1).Compare(_T("\n"))!=0)\r
@@ -188,40 +185,42 @@ void CSetLookAndFeelPage::OnLvnItemchangedMenulist(NMHDR * /*pNMHDR*/, LRESULT *
        {\r
                int i=0;\r
                m_topmenu = 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCHECKOUT : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUUPDATE : 0;\r
+               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCLONE : 0;\r
+               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUPULL : 0;\r
+               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUFETCH : 0;\r
+               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUPUSH : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCOMMIT : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUDIFF : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUPREVDIFF : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUURLDIFF : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUURLDIFF : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENULOG : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREPOBROWSE : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREPOBROWSE : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUSHOWCHANGED : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREVISIONGRAPH : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREVISIONGRAPH : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCONFLICTEDITOR : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENURESOLVE : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUUPDATEEXT : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENURESOLVE : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUUPDATEEXT : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENURENAME : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREMOVE : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUREVERT : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUDELUNVERSIONED : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCLEANUP : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENULOCK : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUUNLOCK : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENULOCK : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUUNLOCK : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCOPY : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUSWITCH : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUMERGE : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUEXPORT : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENURELOCATE : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENURELOCATE : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCREATEREPOS : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUADD : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUIMPORT : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUIMPORT : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUBLAME : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUIGNORE : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCREATEPATCH : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUAPPLYPATCH : 0;\r
                m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUPROPERTIES : 0;\r
-               m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCLIPPASTE : 0;\r
+//             m_topmenu |= m_cMenuList.GetCheck(i++) ? MENUCLIPPASTE : 0;\r
        }\r
        *pResult = 0;\r
 }\r
index 258827e..022f625 100644 (file)
@@ -65,9 +65,6 @@ private:
        unsigned __int64        m_topmenu;\r
        bool                            m_bBlock;\r
        \r
-       CRegDWORD                       m_regGetLockTop;\r
-       BOOL                            m_bGetLockTop;\r
-\r
        CString                         m_sNoContextPaths;\r
        CRegString                      m_regNoContextPaths;\r
 };\r
index 7297a72..2a3327e 100644 (file)
Binary files a/src/TortoiseProc/resource.h and b/src/TortoiseProc/resource.h differ
index a37baf4..7bd9c4a 100644 (file)
@@ -1173,13 +1173,8 @@ STDMETHODIMP CShellExt::QueryContextMenu(HMENU hMenu,
                                        }\r
                                        else\r
                                        {\r
-                                               // the 'get lock' command is special\r
                                                bool bIsTop = ((topmenu & menuInfo[menuIndex].menuID) != 0);\r
-                                               if (menuInfo[menuIndex].command == ShellMenuLock)\r
-                                               {\r
-                                                       if ((itemStates & ITEMIS_NEEDSLOCK) && g_ShellCache.IsGetLockTop())\r
-                                                               bIsTop = true;\r
-                                               }\r
+\r
                                                // insert the menu entry\r
                                                InsertGitMenu(  bIsTop,\r
                                                                                bIsTop ? hMenu : subMenu,\r
@@ -1759,28 +1754,6 @@ STDMETHODIMP CShellExt::InvokeCommand(LPCMINVOKECOMMANDINFO lpcmi)
                                        svnCmd += folder_;\r
                                svnCmd += _T("\"");\r
                                break;\r
-                       case ShellMenuLock:\r
-                               tempfile = WriteFileListToTempFile();\r
-                               svnCmd += _T("lock /pathfile:\"");\r
-                               svnCmd += tempfile;\r
-                               svnCmd += _T("\"");\r
-                               svnCmd += _T(" /deletepathfile");\r
-                               break;\r
-                       case ShellMenuUnlock:\r
-                               tempfile = WriteFileListToTempFile();\r
-                               svnCmd += _T("unlock /pathfile:\"");\r
-                               svnCmd += tempfile;\r
-                               svnCmd += _T("\"");\r
-                               svnCmd += _T(" /deletepathfile");\r
-                               break;\r
-                       case ShellMenuUnlockForce:\r
-                               tempfile = WriteFileListToTempFile();\r
-                               svnCmd += _T("unlock /pathfile:\"");\r
-                               svnCmd += tempfile;\r
-                               svnCmd += _T("\"");\r
-                               svnCmd += _T(" /deletepathfile");\r
-                               svnCmd += _T(" /force");\r
-                               break;\r
                        case ShellMenuProperties:\r
                                tempfile = WriteFileListToTempFile();\r
                                svnCmd += _T("properties /pathfile:\"");\r
@@ -2149,18 +2122,6 @@ LPCTSTR CShellExt::GetMenuTextFromResource(int id)
                        resource = MAKEINTRESOURCE(menuInfo[menuIndex].iconID);\r
                        switch (id)\r
                        {\r
-                       case ShellMenuLock:\r
-                               // menu lock is special because it can be set to the top\r
-                               // with a separate option in the registry\r
-                               space = ((layout & MENULOCK) || ((itemStates & ITEMIS_NEEDSLOCK) && g_ShellCache.IsGetLockTop())) ? 0 : 6;\r
-                               if ((layout & MENULOCK) || ((itemStates & ITEMIS_NEEDSLOCK) && g_ShellCache.IsGetLockTop()))\r
-                               {\r
-                                       _tcscpy_s(textbuf, 255, _T("Git "));\r
-                                       _tcscat_s(textbuf, 255, stringtablebuffer);\r
-                                       _tcscpy_s(stringtablebuffer, 255, textbuf);\r
-                               }\r
-                               break;\r
-                               // the sub menu entries are special because they're *always* on the top level menu\r
                        case ShellSubMenuMultiple:\r
                        case ShellSubMenuLink:\r
                        case ShellSubMenuFolder:\r
index fc9236c..834c4fe 100644 (file)
 //\r
 #pragma once\r
 \r
-#define MENUCHECKOUT           0x0000000000000001\r
-#define MENUUPDATE                     0x0000000000000002\r
+//#define MENUCHECKOUT         0x0000000000000001\r
+//#define MENUUPDATE           0x0000000000000002\r
 #define MENUCOMMIT                     0x0000000000000004\r
 #define MENUADD                                0x0000000000000008\r
 #define MENUREVERT                     0x0000000000000010\r
 #define MENUCLEANUP                    0x0000000000000020\r
-#define MENURESOLVE                    0x0000000000000040\r
+//#define MENURESOLVE          0x0000000000000040\r
 #define MENUSWITCH                     0x0000000000000080\r
-#define MENUIMPORT                     0x0000000000000100\r
+//#define MENUIMPORT           0x0000000000000100\r
 #define MENUEXPORT                     0x0000000000000200\r
 #define MENUCREATEREPOS                0x0000000000000400\r
 #define MENUCOPY                       0x0000000000000800\r
 #define MENUMERGE                      0x0000000000001000\r
 #define MENUREMOVE                     0x0000000000002000\r
 #define MENURENAME                     0x0000000000004000\r
-#define MENUUPDATEEXT          0x0000000000008000\r
+//#define MENUUPDATEEXT                0x0000000000008000\r
 #define MENUDIFF                       0x0000000000010000\r
 #define MENULOG                                0x0000000000020000\r
 #define MENUCONFLICTEDITOR     0x0000000000040000\r
-#define MENURELOCATE           0x0000000000080000\r
+//#define MENURELOCATE         0x0000000000080000\r
 #define MENUSHOWCHANGED                0x0000000000100000\r
 #define MENUIGNORE                     0x0000000000200000\r
-#define MENUREPOBROWSE         0x0000000000400000\r
+//#define MENUREPOBROWSE       0x0000000000400000\r
 #define MENUBLAME                      0x0000000000800000\r
 #define MENUCREATEPATCH                0x0000000001000000\r
 #define MENUAPPLYPATCH         0x0000000002000000\r
-#define MENUREVISIONGRAPH      0x0000000004000000\r
-#define MENULOCK                       0x0000000008000000\r
-#define MENUUNLOCK                     0x0000000010000000\r
+//#define MENUREVISIONGRAPH    0x0000000004000000\r
+//#define MENULOCK                     0x0000000008000000\r
+//#define MENUUNLOCK           0x0000000010000000\r
 #define MENUPROPERTIES         0x0000000020000000\r
-#define MENUURLDIFF                    0x0000000040000000\r
+//#define MENUURLDIFF          0x0000000040000000\r
 #define MENUDELUNVERSIONED     0x0000000080000000\r
 #define MENUMERGEALL           0x0000000100000000\r
 #define MENUPREVDIFF           0x0000000200000000\r
-#define MENUCLIPPASTE          0x0000000400000000\r
+//#define MENUCLIPPASTE                0x0000000400000000\r
 #define MENUPULL                       0x0000000800000000\r
 #define MENUPUSH                       0x0000001000000000\r
 #define MENUCLONE           0x0000002000000000\r
index a08436f..b97284a 100644 (file)
@@ -84,8 +84,8 @@ public:
                getlocktopticker = cachetypeticker;\r
                excludedasnormalticker = cachetypeticker;\r
                excontextticker = cachetypeticker;\r
-               menulayoutlow = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntries"),              MENUCREATEREPOS|MENUCLONE|MENUUPDATE|MENUCOMMIT);\r
-               menulayouthigh = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntrieshigh"), (MENUCREATEREPOS|MENUCLONE|MENUUPDATE|MENUCOMMIT)>>32);\r
+               menulayoutlow = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntries"),              MENUCREATEREPOS|MENUCLONE|MENUCOMMIT);\r
+               menulayouthigh = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntrieshigh"), (MENUCREATEREPOS|MENUCLONE|MENUCOMMIT)>>32);\r
                menumasklow_lm = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntriesMaskLow"), 0, FALSE, HKEY_LOCAL_MACHINE);\r
                menumaskhigh_lm = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntriesMaskHigh"), 0, FALSE, HKEY_LOCAL_MACHINE);\r
                menumasklow_cu = CRegStdWORD(_T("Software\\TortoiseGit\\ContextMenuEntriesMaskLow"), 0);\r
index edefe5d..fe69901 100644 (file)
@@ -141,9 +141,9 @@ protected:
                ShellMenuUnIgnoreSub,\r
                ShellMenuUnIgnoreCaseSensitive,\r
                ShellMenuUnIgnore,\r
-               ShellMenuLock,\r
-               ShellMenuUnlock,\r
-               ShellMenuUnlockForce,\r
+//             ShellMenuLock,\r
+//             ShellMenuUnlock,\r
+//             ShellMenuUnlockForce,\r
                ShellMenuProperties,\r
                ShellMenuDelUnversioned,\r
                ShellMenuClipPaste,\r