xoblite™ / Blackbox for Windows bb5 | RC6 preview | 0.25.2.14
http://xoblite.net/
ConsoleMenu Class Reference

#include <ConsoleMenu.h>

Public Member Functions

 ConsoleMenu (char *pszTitle)
 
virtual ~ConsoleMenu ()
 
bool Active (bool bActivate)
 
void Attached (Menu *pMenu)
 
void UpdateFolder ()
 
- Public Member Functions inherited from FolderItem
 FolderItem (Menu *pSubMenu, char *pszTitleANSI, wchar_t *pszTitleUnicode)
 
virtual ~FolderItem ()
 
void Attached (Menu *pMenu)
 
bool Active (bool bActivate)
 
void Invoke ()
 
void Timer (int nTimer)
 
void ShowSubMenu ()
 
- Public Member Functions inherited from MenuItem
 MenuItem (int type, char *pszTitleANSI, wchar_t *pszTitleUnicode, char *pszCommand, char *pszArgument, bool isSelected)
 
virtual ~MenuItem ()
 
virtual LRESULT NcHitTest (int x, int y)
 
int IsOver (int x, int y)
 
virtual void Mouse (UINT nMsg, POINT pt)
 
virtual void Invoke (int button)
 
virtual bool IsActive ()
 
virtual char * GetSortString ()
 
virtual void GetItemRect (RECT *r)
 
virtual void GetTitleRect (RECT *r)
 
virtual UINT GetDrawTextFormat ()
 
virtual void SetTitleANSI (char *pszTitleANSI)
 
virtual void SetTitleUnicode (wchar_t *pszTitleUnicode)
 
void AddToSelectionGroup (int group)
 
void ItemSetTimer ()
 
void ItemKillTimer ()
 
virtual void SetWidth (int nWidth)
 
virtual int GetWidth ()
 
virtual void SetHeight (int nHeight)
 
virtual int GetHeight ()
 
virtual void SetPosition (int nLeft, int nTop)
 
virtual void SetSortPriority (int nSortPriority)
 
virtual int GetSortPriority ()
 
virtual LRESULT Command (WPARAM wParam, LPARAM lParam)
 
virtual bool OnUser (int nMessage, WPARAM wParam, LPARAM lParam, LRESULT &lResult)
 
virtual void Moving ()
 
virtual HWND GetWindow ()
 
void ToggleSelected ()
 

Additional Inherited Members

- Static Public Member Functions inherited from MenuItem
static bool Compare (MenuItem *pM1, MenuItem *pM2)
 
- Public Attributes inherited from FolderItem
UINT m_nTimerId
 
- Public Attributes inherited from MenuItem
char * m_pszTitleANSI
 
wchar_t * m_pszTitleUnicode
 
int itemType
 
char * m_pszCommand
 
char * m_pszArgument
 
char * m_pszOriginalTitleANSI
 
wchar_t * m_pszOriginalTitleUnicode
 
bool m_isSelected
 
int m_selectionGroup
 
int m_currentValue
 
int m_minValue
 
int m_maxValue
 
POINT m_mousePos
 
int m_nSortPriority
 
Menum_pParent
 
Menum_pSubMenu
 
int m_nLeft
 
int m_nTop
 
int m_nWidth
 
int m_nHeight
 
bool m_bActive
 
UINT m_nTimerId
 
int m_nLastMouseButton
 

Constructor & Destructor Documentation

◆ ConsoleMenu()

ConsoleMenu::ConsoleMenu ( char * pszTitle)
45 : FolderItem(NULL, pszTitle, NULL)
46{
47}
FolderItem(Menu *pSubMenu, char *pszTitleANSI, wchar_t *pszTitleUnicode)
Definition FolderItem.cpp:43

◆ ~ConsoleMenu()

ConsoleMenu::~ConsoleMenu ( )
virtual
50{
51 m_pParent->RemoveChild(m_pSubMenu);
52 if (m_pSubMenu) delete m_pSubMenu;
53 m_pSubMenu = NULL;
54}
Menu * m_pSubMenu
Definition MenuItem.h:181
Menu * m_pParent
Definition MenuItem.h:180

Member Function Documentation

◆ Active()

bool ConsoleMenu::Active ( bool bActivate)
virtual

Reimplemented from MenuItem.

59{
60 if (bActivate && !m_bActive) UpdateFolder();
61 return FolderItem::Active(bActivate);
62}
void UpdateFolder()
Definition ConsoleMenu.cpp:74
bool Active(bool bActivate)
Definition FolderItem.cpp:76
bool m_bActive
Definition MenuItem.h:188

◆ Attached()

void ConsoleMenu::Attached ( Menu * pMenu)
virtual

Reimplemented from MenuItem.

65{
67 m_pSubMenu = new Menu(pMenuCommon->hInst);
68 m_pParent->AddChild(m_pSubMenu);
69 m_pSubMenu->SetParent(m_pParent);
70}
MenuCommon * pMenuCommon
Definition Blackbox.cpp:41
Menu * pMenu
Definition Blackbox.cpp:40
HINSTANCE hInst
Definition MenuCommon.h:94

◆ UpdateFolder()

void ConsoleMenu::UpdateFolder ( )
75{
76 m_pSubMenu->DeleteMenuItems();
78
79 MenuItem* groupItem;
80 char command[50];
81
82 //====================
83
84 Menu* placementSubMenu = MakeMenu("Placement");
85
87 {
88 char itemTitle[128];
89 sprintf_s(itemTitle, sizeof(itemTitle), "<%s>", pSettings->ConsolePlacement.rcString);
91 }
92 else groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_EDITSTRING, consolePlacementBroam, "Manual xC yC", "<Manual xC yC>", false);
94 pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
97 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "CenterLeft", "Center Left", (pSettings->ConsolePlacement.placement == PLACEMENT_CENTER_LEFT));
99 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "BottomLeft", "Bottom Left", (pSettings->ConsolePlacement.placement == PLACEMENT_BOTTOM_LEFT));
101 pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
102 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "TopCenter", "Top Center", (pSettings->ConsolePlacement.placement == PLACEMENT_TOP_CENTER));
104 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "CenterCenter", "Center Center", (pSettings->ConsolePlacement.placement == PLACEMENT_CENTER_CENTER));
106 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "BottomCenter", "Bottom Center", (pSettings->ConsolePlacement.placement == PLACEMENT_BOTTOM_CENTER));
108 pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
109 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "TopRight", "Top Right", (pSettings->ConsolePlacement.placement == PLACEMENT_TOP_RIGHT));
111 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "CenterRight", "Center Right", (pSettings->ConsolePlacement.placement == PLACEMENT_CENTER_RIGHT));
113 groupItem = pMenuCommon->CreateMenuItem(placementSubMenu, MENUITEM_COMMAND, consolePlacementBroam, "BottomRight", "Bottom Right", (pSettings->ConsolePlacement.placement == PLACEMENT_BOTTOM_RIGHT));
115
116 MakeSubmenu(m_pSubMenu, placementSubMenu, "Placement");
117
118 //====================
119
120 Menu* messagesSubMenu = MakeMenu("Number of messages");
121
122 sprintf(command, "\"@xoblite Console Messages Maximized\" %d 1 255", pSettings->consoleMaximizedMessages);
123 pMenuCommon->CreateMenuItem(messagesSubMenu, MENUITEM_EDITINT, command, NULL, "Maximized:", false);
124 sprintf(command, "\"@xoblite Console Messages Restored\" %d 1 255", pSettings->consoleRestoredMessages);
125 pMenuCommon->CreateMenuItem(messagesSubMenu, MENUITEM_EDITINT, command, NULL, "Restored:", false);
126
127 MakeSubmenu(m_pSubMenu, messagesSubMenu, "Number of messages");
128
129 //====================
130
131 sprintf(command, "\"@xoblite Console Transparency\" %d 1 255", pSettings->consoleTransparencyAlpha);
132 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_EDITINT, command, NULL, "Transparency:", false);
133
134 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
135
136 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_BOOLEAN, "@xoblite Console ToggleDesktopMode", NULL, "Desktop mode", pSettings->consoleDesktopMode);
137 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_BOOLEAN, "@xoblite Console ToggleRoundedCorners", NULL, "Rounded corners", pSettings->consoleRoundedCorners);
138
139 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
140
141 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_COMMAND, "@xoblite Console ClearHistory", NULL, "Clear history...", false);
142
143 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
144
145 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_BOOLEAN, "@xoblite Console Toggle", NULL, "Hide Console", pSettings->consoleHidden);
146
147 //====================
148
150
151 m_pSubMenu->Invalidate();
152 m_pSubMenu->Validate();
153}
MenuItem * MakeSubmenu(Menu *ParentMenu, Menu *ChildMenu, LPCSTR Title)
Definition BBApi.cpp:2797
Menu * MakeMenu(LPCSTR HeaderText)
Definition BBApi.cpp:2735
Settings * pSettings
Definition Blackbox.cpp:46
#define GROUP_CONSOLE_PLACEMENT
Definition ConsoleMenu.cpp:40
char consolePlacementBroam[]
Definition ConsoleMenu.cpp:38
#define MENUITEM_EDITINT
Definition MenuItem.h:44
#define MENUITEM_COMMAND
Definition MenuItem.h:42
#define MENUITEM_SEPARATOR
Definition MenuItem.h:47
#define MENUITEM_BOOLEAN
Definition MenuItem.h:45
#define MENUITEM_EDITSTRING
Definition MenuItem.h:43
#define PLACEMENT_CENTER_LEFT
Definition Settings.h:71
#define PLACEMENT_TOP_CENTER
Definition Settings.h:69
#define PLACEMENT_BOTTOM_CENTER
Definition Settings.h:75
#define PLACEMENT_MANUAL
Definition Settings.h:67
#define PLACEMENT_BOTTOM_LEFT
Definition Settings.h:74
#define PLACEMENT_TOP_LEFT
Definition Settings.h:68
#define PLACEMENT_CENTER_CENTER
Definition Settings.h:72
#define PLACEMENT_TOP_RIGHT
Definition Settings.h:70
#define PLACEMENT_BOTTOM_RIGHT
Definition Settings.h:76
#define PLACEMENT_CENTER_RIGHT
Definition Settings.h:73
void AddFooterItem(Menu *pMenu, LPSTR pszTitle)
Definition MenuCommon.cpp:813
MenuItem * CreateMenuItem(Menu *pMenu, int itemType, char *pszCommand, char *pszArgument, char *pszTitle, bool isSelected)
Definition MenuCommon.cpp:1065
void AddHeaderItem(Menu *pMenu, LPSTR pszTitle)
Definition MenuCommon.cpp:791
MenuItem(int type, char *pszTitleANSI, wchar_t *pszTitleUnicode, char *pszCommand, char *pszArgument, bool isSelected)
Definition MenuItem.cpp:42
void AddToSelectionGroup(int group)
Definition MenuItem.cpp:534
char * m_pszTitleANSI
Definition MenuItem.h:93
bool consoleDesktopMode
Definition Settings.h:249
int consoleMaximizedMessages
Definition Settings.h:245
int consoleRestoredMessages
Definition Settings.h:247
BYTE consoleTransparencyAlpha
Definition Settings.h:248
bool consoleRoundedCorners
Definition Settings.h:250
Placement ConsolePlacement
Definition Settings.h:242
bool consoleHidden
Definition Settings.h:241
int placement
Definition Settings.h:89
char rcString[255]
Definition Settings.h:98