Author: sagamusix
Date: Tue Apr 9 19:02:30 2024
New Revision: 20543
URL: https://source.openmpt.org/browse/openmpt/?op=revision&rev=20543
Log:
[New] Templates can now be opened from the "New" icon in the main toolbar (https://bugs.openmpt.org/view.php?id=254).
Modified:
trunk/OpenMPT/mptrack/Mainbar.cpp
Modified: trunk/OpenMPT/mptrack/Mainbar.cpp
==============================================================================
--- trunk/OpenMPT/mptrack/Mainbar.cpp Mon Apr 8 23:44:54 2024 (r20542)
+++ trunk/OpenMPT/mptrack/Mainbar.cpp Tue Apr 9 19:02:30 2024 (r20543)
@@ -642,7 +642,17 @@
switch(pToolBar->iItem)
{
case ID_FILE_NEW:
- CMainFrame::GetMainFrame()->GetFileMenu()->GetSubMenu(0)->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, pToolBar->rcButton.left, pToolBar->rcButton.bottom, this);
+ {
+ auto *mainFrm = CMainFrame::GetMainFrame();
+ CMenu *newMenu = mainFrm->GetFileMenu()->GetSubMenu(0);
+ CMenu *templateMenu = mainFrm->GetFileMenu()->GetSubMenu(2);
+ const bool hasTemplates = templateMenu->GetMenuItemID(0) != 0;
+ if(hasTemplates)
+ newMenu->AppendMenu(MF_POPUP, reinterpret_cast<UINT_PTR>(templateMenu->m_hMenu), _T("&Templates"));
+ newMenu->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, pToolBar->rcButton.left, pToolBar->rcButton.bottom, this);
+ if(hasTemplates)
+ newMenu->RemoveMenu(newMenu->GetMenuItemCount() - 1, MF_BYPOSITION);
+ }
break;
case ID_MIDI_RECORD:
// Show a list of MIDI devices
|