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

#include <ConfigMenu.h>

Public Member Functions

 MenuConfig (char *pszTitle)
 
virtual ~MenuConfig ()
 
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 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

◆ MenuConfig()

MenuConfig::MenuConfig ( char * pszTitle)
227 : FolderItem(NULL, pszTitle, NULL)
228{
229}
FolderItem(Menu *pSubMenu, char *pszTitleANSI, wchar_t *pszTitleUnicode)
Definition FolderItem.cpp:43

◆ ~MenuConfig()

MenuConfig::~MenuConfig ( )
virtual
232{
233 m_pParent->RemoveChild(m_pSubMenu);
234 if (m_pSubMenu) delete m_pSubMenu;
235 m_pSubMenu = NULL;
236}
Menu * m_pSubMenu
Definition MenuItem.h:181
Menu * m_pParent
Definition MenuItem.h:180

Member Function Documentation

◆ Active()

bool MenuConfig::Active ( bool bActivate)
virtual

Reimplemented from FolderItem.

241{
242 if (bActivate && !m_bActive) UpdateFolder();
243 return FolderItem::Active(bActivate);
244}
bool Active(bool bActivate)
Definition FolderItem.cpp:76
void UpdateFolder()
Definition ConfigMenu.cpp:256
bool m_bActive
Definition MenuItem.h:188

◆ Attached()

void MenuConfig::Attached ( Menu * pMenu)
virtual

Reimplemented from FolderItem.

247{
249 m_pSubMenu = new Menu(pMenuCommon->hInst);
250 m_pParent->AddChild(m_pSubMenu);
251 m_pSubMenu->SetParent(m_pParent);
252}
MenuCommon * pMenuCommon
Definition Blackbox.cpp:41
Menu * pMenu
Definition Blackbox.cpp:40
HINSTANCE hInst
Definition MenuCommon.h:94

◆ UpdateFolder()

void MenuConfig::UpdateFolder ( )
257{
258 m_pSubMenu->DeleteMenuItems();
260
261 //====================
262
263 Menu* transparencySubMenu = MakeMenu("Transparency");
264
265 char command[128];
266 sprintf(command, "\"@xoblite Menu Transparency\" %d 1 255", pSettings->menuTransparencyAlpha);
267 pMenuCommon->CreateMenuItem(transparencySubMenu, MENUITEM_EDITINT, command, NULL, "Menu:", false);
268 sprintf(command, "\"@xoblite Menu Transparency Title\" %d 1 255", pSettings->menuTitleTransparencyAlpha);
269 pMenuCommon->CreateMenuItem(transparencySubMenu, MENUITEM_EDITINT, command, NULL, "Title:", false);
270 sprintf(command, "\"@xoblite Menu Transparency Frame\" %d 1 255", pSettings->menuFrameTransparencyAlpha);
271 pMenuCommon->CreateMenuItem(transparencySubMenu, MENUITEM_EDITINT, command, NULL, "Frame:", false);
272 sprintf(command, "\"@xoblite Menu Transparency Active\" %d 1 255", pSettings->menuActiveTransparencyAlpha);
273 pMenuCommon->CreateMenuItem(transparencySubMenu, MENUITEM_EDITINT, command, NULL, "Active:", false);
274 sprintf(command, "\"@xoblite Menu Transparency Grip\" %d 1 255", pSettings->menuGripTransparencyAlpha);
275 pMenuCommon->CreateMenuItem(transparencySubMenu, MENUITEM_EDITINT, command, NULL, "Grip:", false);
276
277 MakeSubmenu(m_pSubMenu, transparencySubMenu, "Transparency");
278
279 //====================
280
281 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
282
283 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_BOOLEAN, "@xoblite Menu ToggleRoundedCorners", NULL, "Rounded corners", pSettings->menuRoundedCorners);
284 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_BOOLEAN, "@xoblite Menu ToggleSeparators", NULL, "Hide separators", !pSettings->menuSeparators);
285
286 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_SEPARATOR, NULL, NULL, NULL, false);
287
288 pMenuCommon->CreateMenuItem(m_pSubMenu, MENUITEM_COMMAND, "@xoblite Edit", pSettings->menuFile, "Edit menu.rc", false);
289
290 //====================
291
293
294 m_pSubMenu->Invalidate();
295 m_pSubMenu->Validate();
296}
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 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
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
char * m_pszTitleANSI
Definition MenuItem.h:93
BYTE menuActiveTransparencyAlpha
Definition Settings.h:181
BYTE menuTitleTransparencyAlpha
Definition Settings.h:178
bool menuSeparators
Definition Settings.h:175
char menuFile[MAX_LINE_LENGTH]
Definition Settings.h:174
BYTE menuFrameTransparencyAlpha
Definition Settings.h:179
BYTE menuGripTransparencyAlpha
Definition Settings.h:180
bool menuRoundedCorners
Definition Settings.h:176
BYTE menuTransparencyAlpha
Definition Settings.h:177