OSDN Git Service

BrowseRefsDlg: Added F5 shortcut for refresh
authorJohan t Hart <johanthart@gmail.com>
Sun, 26 Apr 2009 23:14:08 +0000 (01:14 +0200)
committerFrank Li <lznuaa@gmail.com>
Mon, 27 Apr 2009 01:38:19 +0000 (09:38 +0800)
src/TortoiseProc/BrowseRefsDlg.cpp
src/TortoiseProc/BrowseRefsDlg.h

index 0a0cc9e..487f008 100644 (file)
@@ -327,11 +327,11 @@ void CBrowseRefsDlg::OnContextMenu_RefTreeCtrl(CPoint point)
        {\r
                m_RefTreeCtrl.Select(hTreeItem,TVGN_CARET);\r
                CShadowTree* pTree=(CShadowTree*)m_RefTreeCtrl.GetItemData(hTreeItem);\r
-               if(wcsncmp(pTree->GetRefName(),L"refs/remotes",12)==0)\r
+               if(pTree->IsFrom(L"refs/remotes"))\r
                        popupMenu.AppendMenu(MF_STRING,eCmd_AddRemote,L"Add Remote");\r
-               else if(wcsncmp(pTree->GetRefName(),L"refs/heads",12)==0)\r
+               else if(pTree->IsFrom(L"refs/heads"))\r
                        popupMenu.AppendMenu(MF_STRING,eCmd_CreateBranch,L"Create Branch");\r
-               else if(wcsncmp(pTree->GetRefName(),L"refs/tags",12)==0)\r
+               else if(pTree->IsFrom(L"refs/tags"))\r
                        popupMenu.AppendMenu(MF_STRING,eCmd_CreateTag,L"Create Tag");\r
        }\r
 \r
@@ -362,3 +362,33 @@ void CBrowseRefsDlg::OnContextMenu_RefTreeCtrl(CPoint point)
                break;\r
        }\r
 }\r
+\r
+BOOL CBrowseRefsDlg::PreTranslateMessage(MSG* pMsg)\r
+{\r
+       if (pMsg->message == WM_KEYDOWN)\r
+       {\r
+               switch (pMsg->wParam)\r
+               {\r
+/*             case VK_RETURN:\r
+                       {\r
+                               if (GetAsyncKeyState(VK_CONTROL)&0x8000)\r
+                               {\r
+                                       if ( GetDlgItem(IDOK)->IsWindowEnabled() )\r
+                                       {\r
+                                               PostMessage(WM_COMMAND, IDOK);\r
+                                       }\r
+                                       return TRUE;\r
+                               }\r
+                       }\r
+                       break;\r
+*/             case VK_F5:\r
+                       {\r
+                               Refresh();\r
+                       }\r
+                       break;\r
+               }\r
+       }\r
+\r
+\r
+       return CResizableStandAloneDialog::PreTranslateMessage(pMsg);\r
+}\r
index 430c64f..4606494 100644 (file)
@@ -21,6 +21,10 @@ public:
                        return m_csRefName;\r
                return m_pParent->GetRefName()+"/"+m_csRefName;\r
        }\r
+       bool                    IsFrom(const wchar_t* from)const\r
+       {\r
+               return wcsncmp(GetRefName(),from,wcslen(from))==0;\r
+       }\r
 \r
        CString                 m_csRefName;\r
        CString                 m_csRefHash;\r
@@ -83,4 +87,5 @@ public:
 \r
        void            OnContextMenu_ListRefLeafs(CPoint point);\r
        void            OnContextMenu_RefTreeCtrl(CPoint point);\r
+       virtual BOOL PreTranslateMessage(MSG* pMsg);\r
 };\r