Classes | Defines | Typedefs | Functions

startmenu.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  StartMenuDirectory
 StartMenuDirectory is used to store the base directory of start menus. More...
struct  StartMenuEntry
 structure holding information about one start menu entry More...
struct  StartMenuButton
 StartMenuButton draws the face of a StartMenuCtrl button control. More...
struct  StartMenuCtrl
 To create a Startmenu button control, construct a StartMenuCtrl object. More...
struct  StartMenuSeparator
 separator between start menu entries More...
struct  StartMenuCreateInfo
 structor containing information for creating of start menus More...
struct  StartMenu
 Startmenu window. More...
struct  StartMenuHandler
 Handling of standard start menu commands. More...
struct  StartMenuRootCreateInfo
struct  StartMenuRoot
 Startmenu root window. More...
struct  SettingsMenu
 Settings sub-startmenu. More...
struct  BrowseMenu
 "Browse Files..." sub-start menu More...
struct  SearchMenu
 Search sub-startmenu. More...
struct  RecentStartMenu
 "Recent Files" sub-start menu More...
struct  FavoritesMenu
 Bookmarks sub-startmenu. More...

Defines

#define CLASSNAME_STARTMENU   TEXT("ReactosStartmenuClass")
#define TITLE_STARTMENU   TEXT("Start Menu")
#define STARTMENU_WIDTH_MIN   120
#define STARTMENU_LINE_HEIGHT(icon_size)   (icon_size+4)
#define STARTMENU_SEP_HEIGHT(icon_size)   (STARTMENU_LINE_HEIGHT(icon_size)/2)
#define STARTMENU_TOP_BTN_SPACE   8
#define PM_STARTMENU_CLOSED   (WM_APP+0x11)
#define PM_STARTENTRY_LAUNCHED   (WM_APP+0x12)
#define PM_STARTENTRY_FOCUSED   (WM_APP+0x13)
#define PM_UPDATE_ICONS   (WM_APP+0x14)
#define PM_SELECT_ENTRY   (WM_APP+0x15)
#define STARTMENU_CREATOR(WND_CLASS)   WINDOW_CREATOR_INFO(WND_CLASS, StartMenuCreateInfo)
#define RFF_NOBROWSE   0x01
#define RFF_NODEFAULT   0x02
#define RFF_CALCDIRECTORY   0x04
#define RFF_NOLABEL   0x08
#define RFF_NOSEPARATEMEM   0x20
#define RECENT_DOCS_COUNT   20

Typedefs

typedef list< StartMenuDirectoryStartMenuShellDirs
typedef set< Entry * > ShellEntrySet
typedef list< ShellPathStartMenuFolders
typedef map< int, StartMenuEntryShellEntryMap
typedef void(WINAPI * RUNFILEDLG )(HWND hwndOwner, HICON hIcon, LPCSTR lpstrDirectory, LPCSTR lpstrTitle, LPCSTR lpstrDescription, UINT uFlags)
typedef void(WINAPI * EXITWINDOWSDLG )(HWND hwndOwner)
typedef int(WINAPI * LOGOFFWINDOWSDIALOG )(UINT flags)
typedef int(WINAPI * RESTARTWINDOWSDLG )(HWND hwndOwner, LPCWSTR reason, UINT flags)
typedef int(WINAPI * RESTARTWINDOWSDLGEX )(HWND hWndOwner, LPCWSTR lpwstrReason, DWORD uFlags, DWORD uReason)
typedef BOOL(WINAPI * SHFINDFILES )(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch)
typedef BOOL(WINAPI * SHFINDCOMPUTER )(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch)
typedef map< int, BookmarkNodeBookmarkMap

Functions

int GetStartMenuBtnTextWidth (HDC hdc, LPCTSTR title, HWND hwnd)
void DrawStartMenuButton (HDC hdc, const RECT &rect, LPCTSTR title, HICON hIcon, bool hasSubmenu, bool enabled, bool has_focus, bool pushed, int icon_size)

Define Documentation

#define CLASSNAME_STARTMENU   TEXT("ReactosStartmenuClass")

Definition at line 29 of file startmenu.h.

Referenced by StartMenu::GetWndClasss().

#define PM_SELECT_ENTRY   (WM_APP+0x15)

Definition at line 48 of file startmenu.h.

Referenced by StartMenu::WndProc().

#define PM_STARTENTRY_FOCUSED   (WM_APP+0x13)

Definition at line 44 of file startmenu.h.

Referenced by StartMenu::WndProc().

#define PM_STARTENTRY_LAUNCHED   (WM_APP+0x12)

Definition at line 41 of file startmenu.h.

Referenced by StartMenu::CloseStartMenu(), and StartMenu::WndProc().

#define PM_STARTMENU_CLOSED   (WM_APP+0x11)

Definition at line 40 of file startmenu.h.

Referenced by StartMenu::WndProc(), and StartMenu::~StartMenu().

#define PM_UPDATE_ICONS   (WM_APP+0x14)

Definition at line 47 of file startmenu.h.

Referenced by StartMenu::Init(), and StartMenu::WndProc().

#define RECENT_DOCS_COUNT   20

Definition at line 437 of file startmenu.h.

Referenced by RecentStartMenu::AddEntries().

#define RFF_CALCDIRECTORY   0x04

Definition at line 317 of file startmenu.h.

Referenced by StartMenuHandler::ShowLaunchDialog().

#define RFF_NOBROWSE   0x01

Definition at line 315 of file startmenu.h.

#define RFF_NODEFAULT   0x02

Definition at line 316 of file startmenu.h.

#define RFF_NOLABEL   0x08

Definition at line 318 of file startmenu.h.

#define RFF_NOSEPARATEMEM   0x20

Definition at line 319 of file startmenu.h.

#define STARTMENU_CREATOR (   WND_CLASS )    WINDOW_CREATOR_INFO(WND_CLASS, StartMenuCreateInfo)

Definition at line 149 of file startmenu.h.

Referenced by FavoritesMenu::Command(), and StartMenuHandler::Command().

#define STARTMENU_LINE_HEIGHT (   icon_size )    (icon_size+4)
#define STARTMENU_SEP_HEIGHT (   icon_size )    (STARTMENU_LINE_HEIGHT(icon_size)/2)

Definition at line 35 of file startmenu.h.

Referenced by StartMenu::AddSeparator(), StartMenu::GetButtonRect(), and StartMenu::Paint().

#define STARTMENU_TOP_BTN_SPACE   8

Definition at line 36 of file startmenu.h.

Referenced by StartMenu::Create(), and StartMenu::CreateSubmenu().

#define STARTMENU_WIDTH_MIN   120

Definition at line 33 of file startmenu.h.

Referenced by StartMenu::Create().

#define TITLE_STARTMENU   TEXT("Start Menu")

Definition at line 30 of file startmenu.h.

Referenced by StartMenuRoot::Create().


Typedef Documentation

typedef map<int, BookmarkNode> BookmarkMap

Definition at line 456 of file startmenu.h.

typedef void(WINAPI* EXITWINDOWSDLG)(HWND hwndOwner)

Definition at line 323 of file startmenu.h.

typedef int(WINAPI* LOGOFFWINDOWSDIALOG)(UINT flags)

Definition at line 324 of file startmenu.h.

typedef int(WINAPI* RESTARTWINDOWSDLG)(HWND hwndOwner, LPCWSTR reason, UINT flags)

Definition at line 325 of file startmenu.h.

typedef int(WINAPI* RESTARTWINDOWSDLGEX)(HWND hWndOwner, LPCWSTR lpwstrReason, DWORD uFlags, DWORD uReason)

Definition at line 326 of file startmenu.h.

typedef void(WINAPI* RUNFILEDLG)(HWND hwndOwner, HICON hIcon, LPCSTR lpstrDirectory, LPCSTR lpstrTitle, LPCSTR lpstrDescription, UINT uFlags)

Definition at line 309 of file startmenu.h.

Definition at line 151 of file startmenu.h.

typedef set<Entry*> ShellEntrySet

Definition at line 69 of file startmenu.h.

typedef BOOL(WINAPI* SHFINDCOMPUTER)(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch)

Definition at line 328 of file startmenu.h.

typedef BOOL(WINAPI* SHFINDFILES)(LPCITEMIDLIST pidlRoot, LPCITEMIDLIST pidlSavedSearch)

Definition at line 327 of file startmenu.h.

Definition at line 134 of file startmenu.h.

Definition at line 68 of file startmenu.h.


Function Documentation

void DrawStartMenuButton ( HDC  hdc,
const RECT &  rect,
LPCTSTR  title,
HICON  hIcon,
bool  hasSubmenu,
bool  enabled,
bool  has_focus,
bool  pushed,
int  icon_size 
)
int GetStartMenuBtnTextWidth ( HDC  hdc,
LPCTSTR  title,
HWND  hwnd 
)

Definition at line 1373 of file startmenu.cpp.

Referenced by StartMenu::AddButton().

{
    RECT rect = {0, 0, 0, 0};
    DrawText(hdc, title, -1, &rect, DT_SINGLELINE|DT_NOPREFIX|DT_CALCRECT);

    return rect.right-rect.left;
}

Here is the caller graph for this function:


ROS Explorer Source Code Documentation
generated on 02.01.2013 by doxygen

ROS Explorer Homepage