Public Types |
typedef ExtContextMenuHandlerT
< OwnerDrawParent
< DialogWindow > > | super |
Public Member Functions |
| | StartMenu (HWND hwnd, int icon_size=ICON_SIZE_SMALL) |
| | StartMenu (HWND hwnd, const StartMenuCreateInfo &create_info, int icon_size=ICON_SIZE_SMALL) |
| | ~StartMenu () |
Static Public Member Functions |
| static HWND | Create (int x, int y, const StartMenuFolders &, HWND hwndParent, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL, const String &filter="") |
Static Public Attributes |
| static CREATORFUNC_INFO | s_def_creator = STARTMENU_CREATOR(StartMenu) |
Protected Types |
| enum | SCROLL_MODE { SCROLL_NOT,
SCROLL_UP,
SCROLL_DOWN
} |
Protected Member Functions |
| LRESULT | Init (LPCREATESTRUCT pcs) |
| LRESULT | WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam) |
| int | Command (int id, int code) |
| void | ResizeButtons (int cx) |
| virtual void | AddEntries () |
| ShellEntryMap::iterator | AddEntry (const String &title, ICON_ID icon_id, Entry *entry) |
| ShellEntryMap::iterator | AddEntry (const String &title, ICON_ID icon_id=ICID_NONE, int id=-1) |
| ShellEntryMap::iterator | AddEntry (const ShellFolder folder, ShellEntry *entry) |
| ShellEntryMap::iterator | AddEntry (const ShellFolder folder, Entry *entry) |
| void | AddShellEntries (const ShellDirectory &dir, int max=-1, const String &ignore="") |
| void | AddButton (LPCTSTR title, ICON_ID icon_id=ICID_NONE, bool hasSubmenu=false, int id=-1, bool enabled=true) |
| void | AddSeparator () |
| bool | CloseSubmenus () |
| bool | CloseOtherSubmenus (int id=0) |
| void | CreateSubmenu (int id, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL) |
| bool | CreateSubmenu (int id, int folder, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL) |
| bool | CreateSubmenu (int id, int folder1, int folder2, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL) |
| void | CreateSubmenu (int id, const StartMenuFolders &new_folders, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL) |
| void | ActivateEntry (int id, const ShellEntrySet &entries) |
| virtual void | CloseStartMenu (int id=0) |
| | close all windows of the start menu popup
|
| bool | GetButtonRect (int id, PRECT prect) const |
| void | DrawFloatingButton (HDC hdc) |
| void | GetFloatingButtonRect (LPRECT prect) |
| void | GetArrowButtonRects (LPRECT prect_up, LPRECT prect_down, int icon_size) |
| void | DrawArrows (HDC hdc, int icon_size) |
| void | Paint (PaintCanvas &canvas) |
| void | UpdateIcons () |
Static Protected Member Functions |
| static BtnWindowClass & | GetWndClasss () |
Protected Attributes |
| int | _next_id |
| ShellEntryMap | _entries |
| StartMenuShellDirs | _dirs |
| int | _submenu_id |
| WindowHandle | _submenu |
| int | _border_left |
| int | _border_top |
| int | _bottom_max |
| bool | _floating_btn |
| bool | _arrow_btns |
| POINT | _last_pos |
| enum StartMenu::SCROLL_MODE | _scroll_mode |
| int | _scroll_pos |
| int | _invisible_lines |
| StartMenuCreateInfo | _create_info |
| int | _icon_size |
Startmenu window. To create a start menu call its Create() function.
Definition at line 199 of file startmenu.h.