mirror of
https://github.com/notepad-plus-plus/notepad-plus-plus.git
synced 2025-07-23 13:54:54 +02:00
Revamp tab context menu
Add sub-menu in tab context menu so it will be less cluttered. Fix #12147, close #12150
This commit is contained in:
parent
aad36afc6b
commit
6322562cf8
@ -24,7 +24,7 @@ The comments are here for explanation, it's not necessary to translate them.
|
|||||||
<!-- Sub Menu Entries -->
|
<!-- Sub Menu Entries -->
|
||||||
<SubEntries>
|
<SubEntries>
|
||||||
<Item subMenuId="file-openFolder" name="Open Containing &Folder"/>
|
<Item subMenuId="file-openFolder" name="Open Containing &Folder"/>
|
||||||
<Item subMenuId="file-closeMore" name="Close &More"/>
|
<Item subMenuId="file-closeMore" name="Close &Multiple Documents"/>
|
||||||
<Item subMenuId="file-recentFiles" name="&Recent Files"/>
|
<Item subMenuId="file-recentFiles" name="&Recent Files"/>
|
||||||
<Item subMenuId="edit-insert" name="Insert"/>
|
<Item subMenuId="edit-insert" name="Insert"/>
|
||||||
<Item subMenuId="edit-copyToClipboard" name="Cop&y to Clipboard"/>
|
<Item subMenuId="edit-copyToClipboard" name="Cop&y to Clipboard"/>
|
||||||
@ -404,6 +404,17 @@ The comments are here for explanation, it's not necessary to translate them.
|
|||||||
<Item CMID="21" name="Open in Default Viewer"/>
|
<Item CMID="21" name="Open in Default Viewer"/>
|
||||||
<Item CMID="22" name="Close All Unchanged"/>
|
<Item CMID="22" name="Close All Unchanged"/>
|
||||||
<Item CMID="23" name="Open Containing Folder as Workspace"/>
|
<Item CMID="23" name="Open Containing Folder as Workspace"/>
|
||||||
|
<Item CMID="24" name="Apply Color 1"/>
|
||||||
|
<Item CMID="25" name="Apply Color 2"/>
|
||||||
|
<Item CMID="26" name="Apply Color 3"/>
|
||||||
|
<Item CMID="27" name="Apply Color 4"/>
|
||||||
|
<Item CMID="28" name="Apply Color 5"/>
|
||||||
|
<Item CMID="29" name="Remove Color"/>
|
||||||
|
<Item CMID="30" name="Close Multiple Tabs"/>
|
||||||
|
<Item CMID="31" name="Open into"/>
|
||||||
|
<Item CMID="32" name="Copy to Clipboard"/>
|
||||||
|
<Item CMID="33" name="Move Document"/>
|
||||||
|
<Item CMID="34" name="Apply Color to Tab"/>
|
||||||
</TabBar>
|
</TabBar>
|
||||||
</Menu>
|
</Menu>
|
||||||
|
|
||||||
@ -651,6 +662,12 @@ The comments are here for explanation, it's not necessary to translate them.
|
|||||||
<Item id="44107" name="Switch to Folder as Workspace"/>
|
<Item id="44107" name="Switch to Folder as Workspace"/>
|
||||||
<Item id="44109" name="Switch to Document List"/>
|
<Item id="44109" name="Switch to Document List"/>
|
||||||
<Item id="44108" name="Switch to Function List"/>
|
<Item id="44108" name="Switch to Function List"/>
|
||||||
|
<Item id="44110" name="Remove Tab Colour"/>
|
||||||
|
<Item id="44111" name="Apply Tab Colour 1"/>
|
||||||
|
<Item id="44112" name="Apply Tab Colour 2"/>
|
||||||
|
<Item id="44113" name="Apply Tab Colour 3"/>
|
||||||
|
<Item id="44114" name="Apply Tab Colour 4"/>
|
||||||
|
<Item id="44115" name="Apply Tab Colour 5"/>
|
||||||
<Item id="11002" name="Sort By Name A to Z"/>
|
<Item id="11002" name="Sort By Name A to Z"/>
|
||||||
<Item id="11003" name="Sort By Name Z to A"/>
|
<Item id="11003" name="Sort By Name Z to A"/>
|
||||||
<Item id="11004" name="Sort By Path A to Z"/>
|
<Item id="11004" name="Sort By Path A to Z"/>
|
||||||
|
@ -24,7 +24,7 @@ The comments are here for explanation, it's not necessary to translate them.
|
|||||||
<!-- Sub Menu Entries -->
|
<!-- Sub Menu Entries -->
|
||||||
<SubEntries>
|
<SubEntries>
|
||||||
<Item subMenuId="file-openFolder" name="Ouvrir le répertoire du fichier en cours"/>
|
<Item subMenuId="file-openFolder" name="Ouvrir le répertoire du fichier en cours"/>
|
||||||
<Item subMenuId="file-closeMore" name="Fermer +"/>
|
<Item subMenuId="file-closeMore" name="Fermer plusieurs documents"/>
|
||||||
<Item subMenuId="file-recentFiles" name="Fichiers récents"/>
|
<Item subMenuId="file-recentFiles" name="Fichiers récents"/>
|
||||||
<Item subMenuId="edit-insert" name="Insertion"/>
|
<Item subMenuId="edit-insert" name="Insertion"/>
|
||||||
<Item subMenuId="edit-copyToClipboard" name="Copier dans le presse-papiers"/>
|
<Item subMenuId="edit-copyToClipboard" name="Copier dans le presse-papiers"/>
|
||||||
@ -402,6 +402,17 @@ The comments are here for explanation, it's not necessary to translate them.
|
|||||||
<Item CMID="21" name="Ouvrir dans l'application par défaut"/>
|
<Item CMID="21" name="Ouvrir dans l'application par défaut"/>
|
||||||
<Item CMID="22" name="Fermer tous les documents non-modifiés"/>
|
<Item CMID="22" name="Fermer tous les documents non-modifiés"/>
|
||||||
<Item CMID="23" name="Ouvrir le répertoire du fichier en cours en tant qu'espace de travail"/>
|
<Item CMID="23" name="Ouvrir le répertoire du fichier en cours en tant qu'espace de travail"/>
|
||||||
|
<Item CMID="24" name="Appliquer la couleur 1"/>
|
||||||
|
<Item CMID="25" name="Appliquer la couleur 2"/>
|
||||||
|
<Item CMID="26" name="Appliquer la couleur 3"/>
|
||||||
|
<Item CMID="27" name="Appliquer la couleur 4"/>
|
||||||
|
<Item CMID="28" name="Appliquer la couleur 5"/>
|
||||||
|
<Item CMID="29" name="Enlever la couleur"/>
|
||||||
|
<Item CMID="30" name="Fermer plusieurs onglets"/>
|
||||||
|
<Item CMID="31" name="Ouvrir dans"/>
|
||||||
|
<Item CMID="32" name="Copier dans le presse-papiers"/>
|
||||||
|
<Item CMID="33" name="Déplacer le document"/>
|
||||||
|
<Item CMID="34" name="Appliquer la Couleur à l'onglet"/>
|
||||||
</TabBar>
|
</TabBar>
|
||||||
</Menu>
|
</Menu>
|
||||||
|
|
||||||
|
@ -393,6 +393,17 @@
|
|||||||
<Item CMID="21" name="在預設檢視中開啟"/>
|
<Item CMID="21" name="在預設檢視中開啟"/>
|
||||||
<Item CMID="22" name="關閉所有未更改的檔案"/>
|
<Item CMID="22" name="關閉所有未更改的檔案"/>
|
||||||
<Item CMID="23" name="在工作區開啟此檔資料夾"/>
|
<Item CMID="23" name="在工作區開啟此檔資料夾"/>
|
||||||
|
<Item CMID="24" name="顏色一"/>
|
||||||
|
<Item CMID="25" name="顏色二"/>
|
||||||
|
<Item CMID="26" name="顏色三"/>
|
||||||
|
<Item CMID="27" name="顏色四"/>
|
||||||
|
<Item CMID="28" name="顏色五"/>
|
||||||
|
<Item CMID="29" name="移除顏色"/>
|
||||||
|
<Item CMID="30" name="關閉多個檔案"/>
|
||||||
|
<Item CMID="31" name="開啟至"/>
|
||||||
|
<Item CMID="32" name="複製到剪貼簿"/>
|
||||||
|
<Item CMID="33" name="文件移至"/>
|
||||||
|
<Item CMID="34" name="頁籤使用顏色"/>
|
||||||
</TabBar>
|
</TabBar>
|
||||||
</Menu>
|
</Menu>
|
||||||
<Dialog>
|
<Dialog>
|
||||||
|
@ -406,7 +406,7 @@ BEGIN
|
|||||||
MENUITEM "&Rename...", IDM_FILE_RENAME
|
MENUITEM "&Rename...", IDM_FILE_RENAME
|
||||||
MENUITEM "&Close", IDM_FILE_CLOSE
|
MENUITEM "&Close", IDM_FILE_CLOSE
|
||||||
MENUITEM "Clos&e All", IDM_FILE_CLOSEALL
|
MENUITEM "Clos&e All", IDM_FILE_CLOSEALL
|
||||||
POPUP "Close &More"
|
POPUP "Close &Multiple Documents"
|
||||||
BEGIN
|
BEGIN
|
||||||
MENUITEM "Close All but Active Document", IDM_FILE_CLOSEALL_BUT_CURRENT
|
MENUITEM "Close All but Active Document", IDM_FILE_CLOSEALL_BUT_CURRENT
|
||||||
MENUITEM "Close All to the Left", IDM_FILE_CLOSEALL_TOLEFT
|
MENUITEM "Close All to the Left", IDM_FILE_CLOSEALL_TOLEFT
|
||||||
|
@ -528,41 +528,39 @@ BOOL Notepad_plus::notify(SCNotification *notification)
|
|||||||
// IMPORTANT: If list below is modified, you have to change the value of tabContextMenuItemPos[] in localization.cpp file
|
// IMPORTANT: If list below is modified, you have to change the value of tabContextMenuItemPos[] in localization.cpp file
|
||||||
std::vector<MenuItemUnit> itemUnitArray;
|
std::vector<MenuItemUnit> itemUnitArray;
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSE, TEXT("Close")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSE, TEXT("Close")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_BUT_CURRENT, TEXT("Close All BUT This")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_BUT_CURRENT, TEXT("Close All BUT This"), TEXT("Close Multiple Tabs")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_TOLEFT, TEXT("Close All to the Left")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_TOLEFT, TEXT("Close All to the Left"), TEXT("Close Multiple Tabs")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_TORIGHT, TEXT("Close All to the Right")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_TORIGHT, TEXT("Close All to the Right"), TEXT("Close Multiple Tabs")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_UNCHANGED, TEXT("Close All Unchanged")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CLOSEALL_UNCHANGED, TEXT("Close All Unchanged"), TEXT("Close Multiple Tabs")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_SAVE, TEXT("Save")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_SAVE, TEXT("Save")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_SAVEAS, TEXT("Save As...")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_SAVEAS, TEXT("Save As...")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_FOLDER, TEXT("Open Containing Folder in Explorer"), TEXT("Open into")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_CMD, TEXT("Open Containing Folder in cmd"), TEXT("Open into")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CONTAININGFOLDERASWORKSPACE, TEXT("Open Containing Folder as Workspace"), TEXT("Open into")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(0, NULL, TEXT("Open into")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_DEFAULT_VIEWER, TEXT("Open in Default Viewer"), TEXT("Open into")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_RENAME, TEXT("Rename")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_RENAME, TEXT("Rename")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_DELETE, TEXT("Move to Recycle Bin")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_DELETE, TEXT("Move to Recycle Bin")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_RELOAD, TEXT("Reload")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_RELOAD, TEXT("Reload")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_PRINT, TEXT("Print")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_PRINT, TEXT("Print")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_1, TEXT("Apply Color 1")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_2, TEXT("Apply Color 2")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_3, TEXT("Apply Color 3")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_4, TEXT("Apply Color 4")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_5, TEXT("Apply Color 5")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_NONE, TEXT("Remove Color")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_FOLDER, TEXT("Open Containing Folder in Explorer")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_CMD, TEXT("Open Containing Folder in cmd")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_CONTAININGFOLDERASWORKSPACE, TEXT("Open Containing Folder as Workspace")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_FILE_OPEN_DEFAULT_VIEWER, TEXT("Open in Default Viewer")));
|
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_SETREADONLY, TEXT("Read-Only")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_SETREADONLY, TEXT("Read-Only")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_CLEARREADONLY, TEXT("Clear Read-Only Flag")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_CLEARREADONLY, TEXT("Clear Read-Only Flag")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_FULLPATHTOCLIP, TEXT("Copy Full File Path")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_FULLPATHTOCLIP, TEXT("Copy Full File Path"), TEXT("Copy to Clipboard")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_FILENAMETOCLIP, TEXT("Copy Filename")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_FILENAMETOCLIP, TEXT("Copy Filename"), TEXT("Copy to Clipboard")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_CURRENTDIRTOCLIP, TEXT("Copy Current Dir. Path")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_EDIT_CURRENTDIRTOCLIP, TEXT("Copy Current Dir. Path"), TEXT("Copy to Clipboard")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(0, NULL));
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_GOTO_ANOTHER_VIEW, TEXT("Move to Other View"), TEXT("Move Document")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_GOTO_ANOTHER_VIEW, TEXT("Move to Other View")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_CLONE_TO_ANOTHER_VIEW, TEXT("Clone to Other View"), TEXT("Move Document")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_CLONE_TO_ANOTHER_VIEW, TEXT("Clone to Other View")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_GOTO_NEW_INSTANCE, TEXT("Move to New Instance"), TEXT("Move Document")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_GOTO_NEW_INSTANCE, TEXT("Move to New Instance")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_LOAD_IN_NEW_INSTANCE, TEXT("Open in New Instance"), TEXT("Move Document")));
|
||||||
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_LOAD_IN_NEW_INSTANCE, TEXT("Open in New Instance")));
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_1, TEXT("Apply Color 1"), TEXT("Apply Color to Tab")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_2, TEXT("Apply Color 2"), TEXT("Apply Color to Tab")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_3, TEXT("Apply Color 3"), TEXT("Apply Color to Tab")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_4, TEXT("Apply Color 4"), TEXT("Apply Color to Tab")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_5, TEXT("Apply Color 5"), TEXT("Apply Color to Tab")));
|
||||||
|
itemUnitArray.push_back(MenuItemUnit(IDM_VIEW_TAB_COLOUR_NONE, TEXT("Remove Color"), TEXT("Apply Color to Tab")));
|
||||||
// IMPORTANT: If list above is modified, you have to change the value of tabContextMenuItemPos[] in localization.cpp file
|
// IMPORTANT: If list above is modified, you have to change the value of tabContextMenuItemPos[] in localization.cpp file
|
||||||
|
|
||||||
_tabPopupMenu.create(_pPublicInterface->getHSelf(), itemUnitArray);
|
_tabPopupMenu.create(_pPublicInterface->getHSelf(), itemUnitArray);
|
||||||
|
@ -377,43 +377,51 @@ void NativeLangSpeaker::changeMenuLang(HMENU menuHandle)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static const int tabContextMenuItemPos[] =
|
static const std::pair<int, int> tabContextMenuItemPos[] =
|
||||||
{
|
{
|
||||||
// +-------------- The item position in tab context menu
|
// +-------------- The item position on the top level of tab context menu
|
||||||
// |
|
// |
|
||||||
// | +------ Index order (CMDID) in <TabBar> of english.xml
|
// | +-------------- The item position in sub-menu of tab context menu. The item is on top level if -1, otherwise it's in the sub-menu
|
||||||
// | |
|
// | |
|
||||||
0, // 0: Close
|
// | | +--------- Index order (CMID: Context Menu ID) in <TabBar> of english.xml - the number and the order of this array should be synchronized with <TabBar>
|
||||||
1, // 1: Close ALL BUT This
|
// | | |
|
||||||
5, // 2: Save
|
{0, -1}, // 0: Close
|
||||||
6, // 3: Save As
|
{1, 0}, // 1: Close ALL BUT This
|
||||||
10, // 4: Print
|
{2, -1}, // 2: Save
|
||||||
32, // 5: Move to Other View
|
{3, -1}, // 3: Save As
|
||||||
33, // 6: Clone to Other View
|
{8, -1}, // 4: Print
|
||||||
28, // 7: Copy Full File Path
|
{14, 0}, // 5: Move to Other View
|
||||||
29, // 8: Copy Filename
|
{14, 1}, // 6: Clone to Other View
|
||||||
30, // 9: Copy Current Dir. Path
|
{13, 0}, // 7: Copy Full File Path
|
||||||
7, // 10: Rename
|
{13, 1}, // 8: Copy Filename
|
||||||
8, // 11: Move to Recycle Bin
|
{13, 2}, // 9: Copy Current Dir. Path
|
||||||
25, // 12: Read-Only
|
{5, -1}, // 10: Rename
|
||||||
24, // 13: Clear Read-Only Flag
|
{6, -1}, // 11: Move to Recycle Bin
|
||||||
34, // 14: Move to New Instance
|
{10, -1}, // 12: Read-Only
|
||||||
35, // 15: Open to New Instance
|
{11, -1}, // 13: Clear Read-Only Flag
|
||||||
9, // 16: Reload
|
{14, 2}, // 14: Move to New Instance
|
||||||
2, // 17: Close ALL to the Left
|
{14, 3}, // 15: Open to New Instance
|
||||||
3, // 18: Close ALL to the Right
|
{7, -1}, // 16: Reload
|
||||||
19, // 19: Open Containing Folder in Explorer
|
{1, 1}, // 17: Close ALL to the Left
|
||||||
20, // 20: Open Containing Folder in cmd
|
{1, 2}, // 18: Close ALL to the Right
|
||||||
23, // 21: Open in Default Viewer
|
{4, 0}, // 19: Open Containing Folder in Explorer
|
||||||
4, // 22: Close ALL Unchanged
|
{4, 1}, // 20: Open Containing Folder in cmd
|
||||||
21, // 23: Open Containing Folder as Workspace
|
{4, 4}, // 21: Open in Default Viewer
|
||||||
12, // 24: Apply Color
|
{1, 3}, // 22: Close ALL Unchanged
|
||||||
13, // 25: Apply Color
|
{4, 2}, // 23: Open Containing Folder as Workspace
|
||||||
14, // 26: Apply Color
|
{15, 0}, // 24: Apply Color
|
||||||
15, // 27: Apply Color
|
{15, 1}, // 25: Apply Color
|
||||||
16, // 28: Apply Color
|
{15, 2}, // 26: Apply Color
|
||||||
17, // 29: Remove Color
|
{15, 3}, // 27: Apply Color
|
||||||
-1 //-------End
|
{15, 4}, // 28: Apply Color
|
||||||
|
{15, 5}, // 29: Remove Color
|
||||||
|
{1, -1}, // 30: Close Multiple Tabs
|
||||||
|
{4, -1}, // 31: Open into
|
||||||
|
{13, -1}, // 32: Copy to Clipboard
|
||||||
|
{14, -1}, // 33: Move Document
|
||||||
|
{15, -1}, // Apply Color to Tab
|
||||||
|
|
||||||
|
{-1, -1}, //-------End
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -428,7 +436,7 @@ void NativeLangSpeaker::changeLangTabContextMenu(HMENU hCM)
|
|||||||
if (tabBarMenu)
|
if (tabBarMenu)
|
||||||
{
|
{
|
||||||
WcharMbcsConvertor& wmc = WcharMbcsConvertor::getInstance();
|
WcharMbcsConvertor& wmc = WcharMbcsConvertor::getInstance();
|
||||||
int nbCMItems = sizeof(tabContextMenuItemPos)/sizeof(int);
|
int nbCMItems = sizeof(tabContextMenuItemPos)/sizeof(std::pair<int, int>);
|
||||||
|
|
||||||
for (TiXmlNodeA *childNode = tabBarMenu->FirstChildElement("Item");
|
for (TiXmlNodeA *childNode = tabBarMenu->FirstChildElement("Item");
|
||||||
childNode ;
|
childNode ;
|
||||||
@ -440,13 +448,26 @@ void NativeLangSpeaker::changeLangTabContextMenu(HMENU hCM)
|
|||||||
if (!indexStr || (index < 0 || index >= nbCMItems-1))
|
if (!indexStr || (index < 0 || index >= nbCMItems-1))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
int pos = tabContextMenuItemPos[index];
|
std::pair<int, int> pos = tabContextMenuItemPos[index];
|
||||||
const char *pName = element->Attribute("name");
|
const char *pName = element->Attribute("name");
|
||||||
if (pName)
|
if (pName)
|
||||||
{
|
{
|
||||||
const wchar_t *pNameW = wmc.char2wchar(pName, _nativeLangEncoding);
|
const wchar_t *pNameW = wmc.char2wchar(pName, _nativeLangEncoding);
|
||||||
int cmdID = ::GetMenuItemID(hCM, pos);
|
|
||||||
::ModifyMenu(hCM, pos, MF_BYPOSITION, cmdID, pNameW);
|
if (pos.second == -1) // the 1st level
|
||||||
|
{
|
||||||
|
int cmdID = ::GetMenuItemID(hCM, pos.first);
|
||||||
|
::ModifyMenu(hCM, pos.first, MF_BYPOSITION, cmdID, pNameW);
|
||||||
|
}
|
||||||
|
else // it's the sub-menu item
|
||||||
|
{
|
||||||
|
HMENU hSubMenu = ::GetSubMenu(hCM, pos.first);
|
||||||
|
if (!hSubMenu)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
int cmdID = ::GetMenuItemID(hSubMenu, pos.second);
|
||||||
|
::ModifyMenu(hSubMenu, pos.second, MF_BYPOSITION, cmdID, pNameW);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -68,7 +68,7 @@
|
|||||||
//10 Rename...
|
//10 Rename...
|
||||||
//11 Close
|
//11 Close
|
||||||
//12 Close All
|
//12 Close All
|
||||||
//13 Close More
|
//13 Close Multiple Documents
|
||||||
//14 Move to Recycle Bin
|
//14 Move to Recycle Bin
|
||||||
//15 --------
|
//15 --------
|
||||||
//16 Load Session...
|
//16 Load Session...
|
||||||
|
Loading…
x
Reference in New Issue
Block a user