Starting to mock up a Recent Files menu
This commit is contained in:
parent
4d601c31b0
commit
fe8f177b32
@ -82,7 +82,11 @@ BEGIN
|
|||||||
MENUITEM "&Save\tCtrl+S", ID_FILE_SAVE
|
MENUITEM "&Save\tCtrl+S", ID_FILE_SAVE
|
||||||
MENUITEM "Save &As", ID_FILE_SAVE_AS
|
MENUITEM "Save &As", ID_FILE_SAVE_AS
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "Remote Export\tCtrl+E", ID_FILE_REMOTEEXPORT
|
MENUITEM "Remote &Export\tCtrl+E", ID_FILE_REMOTEEXPORT
|
||||||
|
POPUP "Recent &Files"
|
||||||
|
BEGIN
|
||||||
|
MENUITEM "No recent files", ID_RECENTFILES_NORECENTFILES, GRAYED
|
||||||
|
END
|
||||||
MENUITEM SEPARATOR
|
MENUITEM SEPARATOR
|
||||||
MENUITEM "E&xit", ID_FILE_EXIT
|
MENUITEM "E&xit", ID_FILE_EXIT
|
||||||
END
|
END
|
||||||
|
|||||||
@ -6,28 +6,36 @@
|
|||||||
#define IDR_MENU 102
|
#define IDR_MENU 102
|
||||||
#define IDD_SETROWS 103
|
#define IDD_SETROWS 103
|
||||||
#define IDD_BIASSELECTION 104
|
#define IDD_BIASSELECTION 104
|
||||||
|
|
||||||
#define IDC_EDIT 1002
|
#define IDC_EDIT 1002
|
||||||
#define IDC_SETROWS_EDIT 1002
|
#define IDC_SETROWS_EDIT 1002
|
||||||
#define IDC_BIASSELECTION_EDIT 1003
|
#define IDC_BIASSELECTION_EDIT 1003
|
||||||
|
|
||||||
#define ID_FILE 40001
|
#define ID_FILE 40001
|
||||||
#define ID_FILE_EXIT 40002
|
#define ID_FILE_EXIT 40002
|
||||||
#define ID_EDIT 40003
|
#define ID_FILE_REMOTEEXPORT 40003
|
||||||
#define ID_EDIT_SETROWS 40007
|
#define ID_FILE_RECENTFILES 40004
|
||||||
#define ID_EDIT_BIAS 40008
|
|
||||||
#define ID_EDIT_CLEAR40011 40011
|
#define ID_RECENTFILES_NORECENTFILES 40010
|
||||||
#define ID_EDIT_SELECTALL 40012
|
#define ID_RECENTFILES_FILE1 40011
|
||||||
#define ID_EDIT_SELECTROW 40013
|
#define ID_RECENTFILES_FILE2 40012
|
||||||
#define ID_EDIT_SELECTTRACK 40014
|
#define ID_RECENTFILES_FILE3 40013
|
||||||
#define ID_FILE_NEW40015 40015
|
#define ID_RECENTFILES_FILE4 40014
|
||||||
#define ID_FILE_REMOTEEXPORT 40016
|
#define ID_RECENTFILES_FILE5 40015
|
||||||
#define ID_ACCELERATOR40019 40019
|
|
||||||
|
#define ID_EDIT 40020
|
||||||
|
#define ID_EDIT_SETROWS 40021
|
||||||
|
#define ID_EDIT_BIAS 40022
|
||||||
|
#define ID_EDIT_SELECTALL 40023
|
||||||
|
#define ID_EDIT_SELECTROW 40024
|
||||||
|
#define ID_EDIT_SELECTTRACK 40025
|
||||||
|
|
||||||
// Next default values for new objects
|
// Next default values for new objects
|
||||||
//
|
//
|
||||||
#ifdef APSTUDIO_INVOKED
|
#ifdef APSTUDIO_INVOKED
|
||||||
#ifndef APSTUDIO_READONLY_SYMBOLS
|
#ifndef APSTUDIO_READONLY_SYMBOLS
|
||||||
#define _APS_NEXT_RESOURCE_VALUE 104
|
#define _APS_NEXT_RESOURCE_VALUE 104
|
||||||
#define _APS_NEXT_COMMAND_VALUE 40021
|
#define _APS_NEXT_COMMAND_VALUE 40026
|
||||||
#define _APS_NEXT_CONTROL_VALUE 1004
|
#define _APS_NEXT_CONTROL_VALUE 1004
|
||||||
#define _APS_NEXT_SYMED_VALUE 101
|
#define _APS_NEXT_SYMED_VALUE 101
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -207,6 +207,24 @@ void fileSave()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HMENU findSubMenuContaining(HMENU menu, UINT id)
|
||||||
|
{
|
||||||
|
for (int i = 0; i < GetMenuItemCount(menu); ++i)
|
||||||
|
{
|
||||||
|
if (GetMenuItemID(menu, i) == id) return menu;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
HMENU subMenu = GetSubMenu(menu, i);
|
||||||
|
if ((HMENU)0 != subMenu)
|
||||||
|
{
|
||||||
|
HMENU ret = findSubMenuContaining(subMenu, id);
|
||||||
|
if ((HMENU)0 != ret) return ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (HMENU)0;
|
||||||
|
}
|
||||||
|
|
||||||
static LRESULT CALLBACK mainWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
static LRESULT CALLBACK mainWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
|
||||||
{
|
{
|
||||||
switch(msg)
|
switch(msg)
|
||||||
@ -234,6 +252,19 @@ static LRESULT CALLBACK mainWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARA
|
|||||||
SendMessage(statusBarWin, SB_SETTEXT, 1, (LPARAM)_T("0"));
|
SendMessage(statusBarWin, SB_SETTEXT, 1, (LPARAM)_T("0"));
|
||||||
SendMessage(statusBarWin, SB_SETTEXT, 2, (LPARAM)_T("0"));
|
SendMessage(statusBarWin, SB_SETTEXT, 2, (LPARAM)_T("0"));
|
||||||
SendMessage(statusBarWin, SB_SETTEXT, 3, (LPARAM)_T("---"));
|
SendMessage(statusBarWin, SB_SETTEXT, 3, (LPARAM)_T("---"));
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
/* mock up a Recent Files menu */
|
||||||
|
HMENU lruFileMenu = findSubMenuContaining(GetMenu(hwnd), ID_RECENTFILES_NORECENTFILES);
|
||||||
|
RemoveMenu(lruFileMenu, 0, MF_BYPOSITION);
|
||||||
|
for (int i = 0; i < 5; ++i)
|
||||||
|
{
|
||||||
|
char temp[256];
|
||||||
|
_snprintf(temp, 256, "&%d test%d.ROCKET", i + 1, i);
|
||||||
|
InsertMenu(lruFileMenu, -1, MF_BYPOSITION | MF_STRING, ID_RECENTFILES_FILE1 + i, temp);
|
||||||
|
}
|
||||||
|
DrawMenuBar(hwnd);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user