ReactOS  0.4.15-dev-1033-gd7d716a
StartMenuHandler Struct Reference

Handling of standard start menu commands. More...

#include <startmenu.h>

Inheritance diagram for StartMenuHandler:
Collaboration diagram for StartMenuHandler:

Public Types

typedef StartMenu super
 
- Public Types inherited from StartMenu
typedef ExtContextMenuHandlerT< OwnerDrawParent< DialogWindow > > super
 
- Public Types inherited from ExtContextMenuHandlerT< OwnerDrawParent< DialogWindow > >
typedef OwnerDrawParent< DialogWindowsuper
 
- Public Types inherited from OwnerDrawParent< DialogWindow >
typedef DialogWindow super
 
- Public Types inherited from DialogWindow
typedef Window super
 
- Public Types inherited from Window
typedef map< HWND, Window * > WindowMap
 
typedef Window *(* CREATORFUNC) (HWND)
 
typedef Window *(* CREATORFUNC_INFO) (HWND, const void *)
 

Public Member Functions

 StartMenuHandler (HWND hwnd, int icon_size=ICON_SIZE_SMALL)
 
 StartMenuHandler (HWND hwnd, const StartMenuCreateInfo &create_info, int icon_size=ICON_SIZE_SMALL)
 
- Public Member Functions inherited from StartMenu
 StartMenu (HWND hwnd, int icon_size=ICON_SIZE_SMALL)
 
 StartMenu (HWND hwnd, const StartMenuCreateInfo &create_info, int icon_size=ICON_SIZE_SMALL)
 
 ~StartMenu ()
 
- Public Member Functions inherited from ExtContextMenuHandlerT< OwnerDrawParent< DialogWindow > >
 ExtContextMenuHandlerT (HWND hwnd)
 
 ExtContextMenuHandlerT (HWND hwnd, const PARA &info)
 
LRESULT WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
 
- Public Member Functions inherited from OwnerDrawParent< DialogWindow >
 OwnerDrawParent (HWND hwnd)
 
LRESULT WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
 
- Public Member Functions inherited from DialogWindow
 DialogWindow (HWND hwnd)
 
 ~DialogWindow ()
 
- Public Member Functions inherited from Window
 Window (HWND hwnd)
 
virtual ~Window ()
 
LRESULT SendParent (UINT nmsg, WPARAM wparam=0, LPARAM lparam=0)
 
LRESULT PostParent (UINT nmsg, WPARAM wparam=0, LPARAM lparam=0)
 
 Window (INT cx, INT cy, BOOL fAutoHide=FALSE)
 
virtual ~Window ()
 
virtual LRESULT CALLBACK WindowProcDx (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
void DoAction ()
 

Protected Member Functions

int Command (int id, int code)
 
- Protected Member Functions inherited from StartMenu
LRESULT Init (LPCREATESTRUCT pcs)
 
LRESULT WndProc (UINT nmsg, WPARAM wparam, LPARAM lparam)
 
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 More...
 
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 ()
 
- Protected Member Functions inherited from Window
virtual int Notify (int id, NMHDR *pnmh)
 
void OnCommand (HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
 
void OnPaint (HWND hwnd)
 
void OnRButtonDown (HWND hwnd, BOOL fDoubleClick, int x, int y, UINT keyFlags)
 
void OnKey (HWND hwnd, UINT vk, BOOL fDown, int cRepeat, UINT flags)
 
void OnAppBarCallback (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
BOOL AppBar_Register (HWND hwnd)
 
BOOL AppBar_UnRegister (HWND hwnd)
 
BOOL AppBar_SetAutoHide (HWND hwnd, BOOL fHide)
 
BOOL AppBar_AutoHide (HWND hwnd)
 
BOOL AppBar_NoAutoHide (HWND hwnd)
 
BOOL AppBar_SetSide (HWND hwnd, UINT uSide)
 
void AppBar_SetAlwaysOnTop (HWND hwnd, BOOL fOnTop)
 
void AppBar_Hide (HWND hwnd)
 
void AppBar_UnHide (HWND hwnd)
 
void AppBar_SetAutoHideTimer (HWND hwnd)
 
void AppBar_SetAutoUnhideTimer (HWND hwnd)
 
void AppBar_Size (HWND hwnd)
 
void AppBar_QueryPos (HWND hwnd, LPRECT lprc)
 
void AppBar_QuerySetPos (UINT uEdge, LPRECT lprc, PAPPBARDATA pabd, BOOL fMove)
 
void AppBar_PosChanged (PAPPBARDATA pabd)
 
BOOL OnCreate (HWND hwnd, LPCREATESTRUCT lpCreateStruct)
 
void OnActivate (HWND hwnd, UINT state, HWND hwndActDeact, BOOL fMinimized)
 
void OnWindowPosChanged (HWND hwnd, const LPWINDOWPOS lpwpos)
 
void OnSize (HWND hwnd, UINT state, int cx, int cy)
 
void OnMove (HWND hwnd, int x, int y)
 
void OnNCDestroy (HWND hwnd)
 
void OnTimer (HWND hwnd, UINT id)
 
UINT OnNCHitTest (HWND hwnd, int x, int y)
 
void OnLButtonDown (HWND hwnd, BOOL fDoubleClick, int x, int y, UINT keyFlags)
 
void OnMouseMove (HWND hwnd, int x, int y, UINT keyFlags)
 
void OnLButtonUp (HWND hwnd, int x, int y, UINT keyFlags)
 
void GetWorkArea (LPRECT prc) const
 

Static Protected Member Functions

static void ShowLaunchDialog (HWND hwndOwner)
 
static void ShowLogoffDialog (HWND hwndOwner)
 
static void ShowRestartDialog (HWND hwndOwner, UINT flags)
 
static void ShowSearchDialog ()
 
static void ShowSearchComputer ()
 
- Static Protected Member Functions inherited from StartMenu
static BtnWindowClassGetWndClasss ()
 
- Static Protected Member Functions inherited from Window
static Windowcreate_controller (HWND hwnd)
 create controller for a new window More...
 
static StaticWindowDataGetStaticWindowData ()
 
static LRESULT CALLBACK MDICBTHookProc (int code, WPARAM wparam, LPARAM lparam)
 
static LRESULT CALLBACK PropSheetCBTHookProc (int code, WPARAM wparam, LPARAM lparam)
 

Additional Inherited Members

- Static Public Member Functions inherited from StartMenu
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 Member Functions inherited from Window
static HWND Create (CREATORFUNC creator, DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int w, int h, HWND hwndParent=0, HMENU hMenu=0)
 
static HWND Create (CREATORFUNC_INFO creator, const void *info, DWORD dwExStyle, LPCTSTR lpClassName, LPCTSTR lpWindowName, DWORD dwStyle, int x, int y, int w, int h, HWND hwndParent=0, HMENU hMenu=0)
 
static Windowcreate_mdi_child (const ChildWndInfo &info, const MDICREATESTRUCT &mcs, CREATORFUNC_INFO creator)
 
static LRESULT CALLBACK WindowWndProc (HWND hwnd, UINT nmsg, WPARAM wparam, LPARAM lparam)
 
static INT_PTR CALLBACK DialogProc (HWND hwnd, UINT nmsg, WPARAM wparam, LPARAM lparam)
 
static Windowget_window (HWND hwnd)
 get window controller from window handle More...
 
template<typename CLASS >
static CLASS * get_window (HWND hwnd)
 
static void register_pretranslate (HWND hwnd)
 
static void unregister_pretranslate (HWND hwnd)
 
static BOOL pretranslate_msg (LPMSG pmsg)
 
static void register_dialog (HWND hwnd)
 
static void unregister_dialog (HWND hwnd)
 
static BOOL dispatch_dialog_msg (LPMSG pmsg)
 
static int MessageLoop ()
 
static void CancelModes ()
 
static BOOL DoRegisterClass (HINSTANCE hInstance)
 
static HWND DoCreateMainWnd (HINSTANCE hInstance, LPCTSTR pszText, INT cx, INT cy, DWORD style=WS_POPUP|WS_THICKFRAME|WS_CLIPCHILDREN, DWORD exstyle=WS_EX_WINDOWEDGE|WS_EX_TOOLWINDOW|WS_EX_TOPMOST, BOOL fAutoHide=FALSE)
 
static INT DoMainLoop ()
 
static WindowGetAppbarData (HWND hwnd)
 
static LRESULT CALLBACK WindowProc (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 
static DWORD WINAPI ActionThreadFunc (LPVOID args)
 
- Public Attributes inherited from Window
IAccessible IAccessible_iface
 
IOleWindow IOleWindow_iface
 
IEnumVARIANT IEnumVARIANT_iface
 
LONG ref
 
- Static Public Attributes inherited from StartMenu
static CREATORFUNC_INFO s_def_creator = STARTMENU_CREATOR(StartMenu)
 
- Protected Types inherited from StartMenu
enum  SCROLL_MODE { SCROLL_NOT, SCROLL_UP, SCROLL_DOWN }
 
- Protected Attributes inherited from StartMenu
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
 
- Protected Attributes inherited from ExtContextMenuHandlerT< OwnerDrawParent< DialogWindow > >
CtxMenuInterfaces _cm_ifs
 
- Protected Attributes inherited from Window
HWND m_hwnd
 
BOOL m_fAutoHide
 
BOOL m_fOnTop
 
BOOL m_fHiding
 
UINT m_uSide
 
LONG m_cxWidth
 
LONG m_cyHeight
 
LONG m_cxSave
 
LONG m_cySave
 
BOOL m_fAppBarRegd
 
BOOL m_fMoving
 
BOOL m_bDragged
 
POINT m_ptDragOn
 
RECT m_rcAppBar
 
RECT m_rcDrag
 
- Static Protected Attributes inherited from Window
static WindowMap s_wnd_map
 
static const voids_new_info = NULL
 
static CREATORFUNC s_window_creator = NULL
 
static HHOOK s_hcbtHook = 0
 
static WindowSet s_pretranslate_windows
 
static WindowSet s_dialogs
 

Detailed Description

Handling of standard start menu commands.

Definition at line 332 of file startmenu.h.

Member Typedef Documentation

◆ super

Definition at line 334 of file startmenu.h.

Constructor & Destructor Documentation

◆ StartMenuHandler() [1/2]

StartMenuHandler::StartMenuHandler ( HWND  hwnd,
int  icon_size = ICON_SIZE_SMALL 
)
inline

Definition at line 336 of file startmenu.h.

337  : super(hwnd, icon_size)
338  {
339  }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
StartMenu super
Definition: startmenu.h:334
iconPos iconPos icon_size
Definition: startmenu.cpp:1416

◆ StartMenuHandler() [2/2]

StartMenuHandler::StartMenuHandler ( HWND  hwnd,
const StartMenuCreateInfo create_info,
int  icon_size = ICON_SIZE_SMALL 
)
inline

Definition at line 341 of file startmenu.h.

342  : super(hwnd, create_info, icon_size)
343  {
344  }
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
StartMenu super
Definition: startmenu.h:334
iconPos iconPos icon_size
Definition: startmenu.cpp:1416

Member Function Documentation

◆ Command()

int StartMenuHandler::Command ( int  id,
int  code 
)
protectedvirtual
Todo:
use printer start menu folder per default and allow opening "printers" cabinet window using the context menu
Todo:
to be removed when network browsing will be implemented in shell namespace
Todo:
exclude removable drives

Reimplemented from StartMenu.

Reimplemented in StartMenuRoot.

Definition at line 1849 of file startmenu.cpp.

1850 {
1851  switch(id) {
1852 
1853  // start menu root
1854 
1855  case IDC_PROGRAMS:
1857  break;
1858 
1859  case IDC_EXPLORE:
1860  CloseStartMenu(id);
1862  break;
1863 
1864  case IDC_LAUNCH:
1865  CloseStartMenu(id);
1867  break;
1868 
1869  case IDC_DOCUMENTS:
1871  break;
1872 
1873  case IDC_RECENT:
1875  break;
1876 
1877  case IDC_FAVORITES:
1878 #ifndef _SHELL32_FAVORITES
1880 #else
1882 #endif
1883  break;
1884 
1885  case IDC_BROWSE:
1887  break;
1888 
1889  case IDC_SETTINGS:
1891  break;
1892 
1893  case IDC_SEARCH:
1895  break;
1896 
1897  case IDC_START_HELP:
1898  CloseStartMenu(id);
1899  MessageBox(g_Globals._hwndDesktopBar, TEXT("Help not yet implemented"), ResString(IDS_TITLE), MB_OK);
1900  break;
1901 
1902  case IDC_LOGOFF:
1903  CloseStartMenu(id);
1905  break;
1906 
1907 #ifndef __REACTOS__
1908  case IDC_TERMINATE:
1911  break;
1912 #endif
1913 
1914  case IDC_SHUTDOWN:
1915  CloseStartMenu(id);
1917  break;
1918 
1919  case IDC_RESTART:
1920  CloseStartMenu(id);
1922  /* An alternative way to do restart without shell32 help */
1923  //launch_file(_hwnd, TEXT("shutdown.exe"), SW_HIDE, TEXT("-r"));
1924  break;
1925 
1926  // settings menu
1927 
1929  CloseStartMenu(id);
1931  break;
1932 
1933  case IDC_CONTROL_PANEL: {
1934  CloseStartMenu(id);
1935 #ifndef ROSSHELL
1936 #ifndef _NO_MDI
1937  XMLPos explorer_options = g_Globals.get_cfg("general/explorer");
1938  bool mdi = XMLBool(explorer_options, "mdi", true);
1939 
1940  if (mdi)
1941  MDIMainFrame::Create(TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}"), 0);
1942  else
1943 #endif
1944  SDIMainFrame::Create(TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}"), 0);
1945 #else
1947 #endif
1948  break;}
1949 
1950  case IDC_SETTINGS_MENU:
1952  break;
1953 
1954  case IDC_PRINTERS: {
1955  CloseStartMenu(id);
1956 
1957 #ifndef ROSSHELL
1958 #ifndef _NO_MDI
1959  XMLPos explorer_options = g_Globals.get_cfg("general/explorer");
1960  bool mdi = XMLBool(explorer_options, "mdi", true);
1961 
1962  if (mdi)
1963  MDIMainFrame::Create(TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}"), 0);
1964  else
1965 #endif
1966  SDIMainFrame::Create(TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}"), 0);
1967 #else
1969 #endif
1970  break;}
1971 
1972 #if 0
1973  case IDC_PRINTERS_MENU:
1975 /* StartMenuFolders new_folders;
1976 
1977  try {
1978  new_folders.push_back(ShellPath(TEXT("::{20D04FE0-3AEA-1069-A2D8-08002B30309D}\\::{21EC2020-3AEA-1069-A2DD-08002B30309D}\\::{2227A280-3AEA-1069-A2DE-08002B30309D}")));
1979  } catch(COMException&) {
1980  }
1981 
1982  CreateSubmenu(id, new_folders, ResString(IDS_PRINTERS));*/
1983  break;
1984 #endif
1985 
1986  case IDC_ADMIN:
1987 #ifndef ROSSHELL
1989  //CloseStartMenu(id);
1990  //MainFrame::Create(SpecialFolderPath(CSIDL_COMMON_ADMINTOOLS, _hwnd), OWM_PIDL);
1991 #else
1993 #endif
1994  break;
1995 
1996  case IDC_CONNECTIONS:{
1997  CloseStartMenu(id);
1998 #ifndef ROSSHELL
1999 #ifndef _NO_MDI
2000  XMLPos explorer_options = g_Globals.get_cfg("general/explorer");
2001  bool mdi = XMLBool(explorer_options, "mdi", true);
2002 
2003  if (mdi)
2005  else
2006 #endif
2008 #else
2010 #endif
2011  break;}
2012 
2013 
2014  // browse menu
2015 
2016  case IDC_NETWORK:
2017 #ifdef __REACTOS__
2018  MessageBox(0, TEXT("not yet implemented"), ResString(IDS_TITLE), MB_OK);
2019 #else
2021 #endif
2022  break;
2023 
2024  case IDC_DRIVES:
2027  break;
2028 
2029 
2030  // search menu
2031 
2032  case IDC_SEARCH_PROGRAM:
2033  CloseStartMenu(id);
2035  break;
2036 
2037  case IDC_SEARCH_FILES:
2038  CloseStartMenu(id);
2039  ShowSearchDialog();
2040  break;
2041 
2042  case IDC_SEARCH_COMPUTER:
2043  CloseStartMenu(id);
2045  break;
2046 
2047 
2048  default:
2049  return super::Command(id, code);
2050  }
2051 
2052  return 0;
2053 }
virtual void CloseStartMenu(int id=0)
close all windows of the start menu popup
Definition: startmenu.cpp:1361
static void ShowSearchComputer()
Definition: startmenu.cpp:2068
#define WINDOW_CREATOR(WND_CLASS)
Definition: window.h:202
#define IDC_ADMIN
Definition: desktopbar.h:45
void CreateSubmenu(int id, LPCTSTR title, CREATORFUNC_INFO creator=s_def_creator, void *info=NULL)
Definition: startmenu.cpp:1217
#define IDC_NETWORK
Definition: desktopbar.h:51
file system path of special folder
#define IDC_PRINTERS
Definition: desktopbar.h:56
BOOL launch_file(HWND hwnd, LPCTSTR cmd, UINT nCmdShow, LPCTSTR parameters)
Definition: utility.cpp:189
void explorer_show_frame(int cmdShow, LPTSTR lpCmdLine)
Definition: explorer.cpp:707
void ExplorerPropertySheet(HWND hparent)
Definition: settings.cpp:37
#define CSIDL_COMMON_FAVORITES
Definition: shlobj.h:2042
#define IDC_BROWSE
Definition: resource.h:21
#define SHELLPATH_CONTROL_PANEL
Definition: startmenu.cpp:42
#define IDS_DRIVES
Definition: resource.h:22
#define IDC_FAVORITES
Definition: desktopbar.h:48
#define ID_DESKTOPBAR_SETTINGS
Definition: resource.h:205
static void ShowRestartDialog(HWND hwndOwner, UINT flags)
Definition: startmenu.cpp:2138
#define IDC_PROGRAMS
Definition: desktopbar.h:49
#define IDC_RECENT
Definition: desktopbar.h:47
#define IDS_FAVORITES
Definition: resource.h:31
#define IDS_ADMIN
Definition: resource.h:19
#define STARTMENU_CREATOR(WND_CLASS)
Definition: startmenu.h:149
#define IDS_SETTINGS_MENU
Definition: resource.h:24
#define IDC_CONTROL_PANEL
Definition: desktopbar.h:54
#define IDS_SETTINGS
Definition: resource.h:15
#define SHELLPATH_NET_CONNECTIONS
Definition: startmenu.cpp:44
#define EWX_REBOOT
Definition: winuser.h:633
static HWND Create()
Definition: mainframe.cpp:1342
#define IDC_SEARCH
Definition: desktopbar.h:60
BOOL WINAPI DestroyWindow(_In_ HWND)
#define CSIDL_CONTROLS
Definition: shlobj.h:2015
#define CSIDL_COMMON_PROGRAMS
Definition: shlobj.h:2034
#define CSIDL_RECENT
Definition: shlobj.h:2020
#define CSIDL_PRINTERS
Definition: shlobj.h:2016
#define CSIDL_DRIVES
Definition: shlobj.h:2028
void ShowExitWindowsDialog(HWND hwndOwner)
Definition: startmenu.cpp:2128
#define CSIDL_FAVORITES
Definition: shlobj.h:2018
#define IDC_DRIVES
Definition: desktopbar.h:53
#define IDC_EXPLORE
Definition: desktopbar.h:50
#define IDS_PROGRAMS
Definition: resource.h:69
#define IDC_TERMINATE
Definition: desktopbar.h:61
static void ShowLaunchDialog(HWND hwndOwner)
Definition: startmenu.cpp:2107
int Command(int id, int code)
Definition: startmenu.cpp:1041
#define CSIDL_COMMON_ADMINTOOLS
Definition: shlobj.h:2058
static HWND Create()
Definition: mainframe.cpp:866
#define IDS_TITLE
Definition: resource.h:30
#define IDS_PRINTERS
Definition: shresdef.h:253
#define IDS_NETWORK
Definition: resource.h:20
#define CSIDL_ADMINTOOLS
Definition: shlobj.h:2059
#define IDC_DOCUMENTS
Definition: desktopbar.h:46
Search sub-startmenu.
Definition: startmenu.h:426
HWND _hwndDesktopBar
Definition: globals.h:287
#define IDS_BROWSE
Definition: resource.h:27
Favorites _favorites
Definition: globals.h:297
#define IDD_SEARCH_PROGRAM
Definition: resource.h:61
#define IDS_RECENT
Definition: shresdef.h:82
#define IDC_CONNECTIONS
Definition: desktopbar.h:52
#define IDC_SETTINGS
Definition: desktopbar.h:44
static void ShowLogoffDialog(HWND hwndOwner)
Definition: startmenu.cpp:2113
ExplorerGlobals g_Globals
Definition: explorer.cpp:52
#define MessageBox
Definition: winuser.h:5797
#define SHELLPATH_PRINTERS
Definition: startmenu.cpp:43
#define IDC_SEARCH_PROGRAM
Definition: desktopbar.h:59
Definition: inflate.c:139
#define IDC_LOGOFF
Definition: desktopbar.h:38
Dialog to work with the complete list of start menu entries.
Definition: searchprogram.h:78
#define SW_SHOWNORMAL
Definition: winuser.h:764
#define TEXT(s)
Definition: k32.h:26
#define CSIDL_PRINTHOOD
Definition: shlobj.h:2038
#define IDS_DOCUMENTS
Definition: resource.h:12
#define IDC_LAUNCH
Definition: desktopbar.h:40
XMLPos get_cfg()
Definition: explorer.cpp:119
#define MB_OK
Definition: winuser.h:784
#define IDC_START_HELP
Definition: desktopbar.h:41
#define CSIDL_PERSONAL
Definition: shlobj.h:2017
static int DoModal(UINT nid, CREATORFUNC creator, HWND hwndParent=0)
Definition: window.cpp:701
#define IDC_SEARCH_FILES
Definition: desktopbar.h:42
Settings sub-startmenu.
Definition: startmenu.h:396
#define IDC_SETTINGS_MENU
Definition: desktopbar.h:55
#define IDC_RESTART
Definition: desktopbar.h:62
convenient loading of string resources
Definition: globals.h:303
#define IDC_SHUTDOWN
Definition: desktopbar.h:39
"Browse Files..." sub-start menu
Definition: startmenu.h:411
#define CSIDL_NETWORK
Definition: shlobj.h:2029
#define IDC_SEARCH_COMPUTER
Definition: desktopbar.h:43
#define CSIDL_PROGRAMS
Definition: shlobj.h:2014
Bookmarks sub-startmenu.
Definition: startmenu.h:462
HWND _hwndDesktop
Definition: globals.h:289
static void ShowSearchDialog()
Definition: startmenu.cpp:2056
#define IDS_SEARCH
Definition: resource.h:30
"Recent Files" sub-start menu
Definition: startmenu.h:443

Referenced by StartMenuRoot::Command().

◆ ShowLaunchDialog()

void StartMenuHandler::ShowLaunchDialog ( HWND  hwndOwner)
staticprotected

Definition at line 2107 of file startmenu.cpp.

2108 {
2109  RunDialogThread * rdt = new RunDialogThread();
2110  rdt->Start();
2111 }

Referenced by Command().

◆ ShowLogoffDialog()

void StartMenuHandler::ShowLogoffDialog ( HWND  hwndOwner)
staticprotected

Definition at line 2113 of file startmenu.cpp.

2114 {
2115  static DynamicFct<LOGOFFWINDOWSDIALOG> LogoffWindowsDialog(TEXT("SHELL32"), 54);
2116 // static DynamicFct<RESTARTWINDOWSDLG> RestartDialog(TEXT("SHELL32"), 59);
2117 
2118  if (LogoffWindowsDialog)
2119  (*LogoffWindowsDialog)(0);
2120 /* The RestartDialog function prompts about some system setting change. This is not what we want to display here.
2121  else if (RestartDialog)
2122  return (*RestartDialog)(hwndOwner, (LPWSTR)L"You selected <Log Off>.\n\n", EWX_LOGOFF) == 1; ///@todo ANSI string conversion if needed
2123 */
2124  else
2125  MessageBox(hwndOwner, TEXT("LogoffWindowsDialog() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK);
2126 }
#define IDS_TITLE
Definition: resource.h:30
#define MessageBox
Definition: winuser.h:5797
#define TEXT(s)
Definition: k32.h:26
#define MB_OK
Definition: winuser.h:784
EXTERN_C int WINAPI LogoffWindowsDialog(HWND hWndOwner)
Definition: dialogs.cpp:1094
convenient loading of string resources
Definition: globals.h:303

Referenced by Command().

◆ ShowRestartDialog()

void StartMenuHandler::ShowRestartDialog ( HWND  hwndOwner,
UINT  flags 
)
staticprotected

Definition at line 2138 of file startmenu.cpp.

2139 {
2140  static DynamicFct<RESTARTWINDOWSDLG> RestartDlg(TEXT("SHELL32"), 59);
2141 
2142  if (RestartDlg)
2143  (*RestartDlg)(hwndOwner, (LPWSTR)L"You selected restart.\n\n", flags);
2144  else
2145  MessageBox(hwndOwner, TEXT("RestartDlg() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK);
2146 }
#define IDS_TITLE
Definition: resource.h:30
GLbitfield flags
Definition: glext.h:7161
static const WCHAR L[]
Definition: oid.c:1250
#define MessageBox
Definition: winuser.h:5797
#define TEXT(s)
Definition: k32.h:26
#define MB_OK
Definition: winuser.h:784
convenient loading of string resources
Definition: globals.h:303
WCHAR * LPWSTR
Definition: xmlstorage.h:184

Referenced by Command().

◆ ShowSearchComputer()

void StartMenuHandler::ShowSearchComputer ( )
staticprotected
Todo:
to be removed when SHFindComputer() will be implemented in shell32.dll

Definition at line 2068 of file startmenu.cpp.

2069 {
2070 #ifndef __REACTOS__
2071  static DynamicFct<SHFINDCOMPUTER> SHFindComputer(TEXT("SHELL32"), 91);
2072 
2073  if (SHFindComputer)
2074  (*SHFindComputer)(NULL, NULL);
2075  else
2076 #endif
2077  MessageBox(0, TEXT("SHFindComputer() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK);
2078 }
EXTERN_C BOOL WINAPI SHFindComputer(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2)
Definition: stubs.cpp:33
smooth NULL
Definition: ftsmooth.c:416
#define IDS_TITLE
Definition: resource.h:30
#define MessageBox
Definition: winuser.h:5797
#define TEXT(s)
Definition: k32.h:26
#define MB_OK
Definition: winuser.h:784
convenient loading of string resources
Definition: globals.h:303

Referenced by Command().

◆ ShowSearchDialog()

void StartMenuHandler::ShowSearchDialog ( )
staticprotected
Todo:
to be removed when SHFindFiles() will be implemented in shell32.dll

Definition at line 2056 of file startmenu.cpp.

2057 {
2058 #ifndef __REACTOS__
2059  static DynamicFct<SHFINDFILES> SHFindFiles(TEXT("SHELL32"), 90);
2060 
2061  if (SHFindFiles)
2062  (*SHFindFiles)(NULL, NULL);
2063  else
2064 #endif
2065  MessageBox(0, TEXT("SHFindFiles() not yet implemented in SHELL32"), ResString(IDS_TITLE), MB_OK);
2066 }
BOOL WINAPI SHFindFiles(PCIDLIST_ABSOLUTE pidlFolder, PCIDLIST_ABSOLUTE pidlSaveFile)
Definition: shellord.c:2234
smooth NULL
Definition: ftsmooth.c:416
#define IDS_TITLE
Definition: resource.h:30
#define MessageBox
Definition: winuser.h:5797
#define TEXT(s)
Definition: k32.h:26
#define MB_OK
Definition: winuser.h:784
convenient loading of string resources
Definition: globals.h:303

Referenced by Command().


The documentation for this struct was generated from the following files: