forked from kovacsv/VisualScriptEngine
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathWAS_FileMenu.cpp
More file actions
49 lines (41 loc) · 1.04 KB
/
Copy pathWAS_FileMenu.cpp
File metadata and controls
49 lines (41 loc) · 1.04 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include "WAS_FileMenu.hpp"
#include "NE_Debug.hpp"
namespace WAS
{
FileMenu::FileMenu () :
menuBar (NULL),
commandToPopupMenu ()
{
menuBar = CreateMenu ();
}
HMENU FileMenu::GetMenuBar ()
{
return menuBar;
}
HMENU FileMenu::AddPopupMenu (const std::wstring& name)
{
HMENU menu = CreateMenu ();
AppendMenu (menuBar, MF_POPUP, (UINT_PTR) menu, name.c_str ());
return menu;
}
void FileMenu::AddPopupMenuItem (HMENU popupMenu, UINT commandId, const std::wstring& name)
{
if (DBGERROR (commandToPopupMenu.find (commandId) != commandToPopupMenu.end ())) {
return;
}
AppendMenu (popupMenu, MF_STRING, commandId, name.c_str ());
commandToPopupMenu.insert ({ commandId, popupMenu });
}
void FileMenu::AddPopupMenuSeparator (HMENU popupMenu)
{
AppendMenu (popupMenu, MF_SEPARATOR, 0, NULL);
}
void FileMenu::EnableItem (UINT id, bool enabled)
{
if (DBGERROR (commandToPopupMenu.find (id) == commandToPopupMenu.end ())) {
return;
}
HMENU popupMenu = commandToPopupMenu.at (id);
EnableMenuItem (popupMenu, id, enabled ? MF_ENABLED : MF_DISABLED);
}
}