ReactOS  0.4.14-dev-297-g23e575c
CStartMenuSite Class Reference
Inheritance diagram for CStartMenuSite:
Collaboration diagram for CStartMenuSite:

Public Member Functions

 CStartMenuSite ()
 
virtual ~CStartMenuSite ()
 
virtual HRESULT STDMETHODCALLTYPE QueryService (IN REFGUID guidService, IN REFIID riid, OUT PVOID *ppvObject)
 
virtual HRESULT STDMETHODCALLTYPE GetWindow (OUT HWND *phwnd)
 
virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp (IN BOOL fEnterMode)
 
virtual HRESULT STDMETHODCALLTYPE Execute (IN IShellFolder *pShellFolder, IN LPCITEMIDLIST pidl)
 
virtual HRESULT STDMETHODCALLTYPE Unknown (IN PVOID Unknown1, IN PVOID Unknown2, IN PVOID Unknown3, IN PVOID Unknown4)
 
virtual BOOL ShowUndockMenuItem (VOID)
 
virtual BOOL ShowSynchronizeMenuItem (VOID)
 
virtual HRESULT STDMETHODCALLTYPE AppendMenu (OUT HMENU *phMenu)
 
virtual HRESULT STDMETHODCALLTYPE QueryStatus (IN const GUID *pguidCmdGroup OPTIONAL, IN ULONG cCmds, IN OUT OLECMD *prgCmds, IN OUT OLECMDTEXT *pCmdText OPTIONAL)
 
virtual HRESULT STDMETHODCALLTYPE Exec (IN const GUID *pguidCmdGroup OPTIONAL, IN DWORD nCmdID, IN DWORD nCmdExecOpt, IN VARIANTARG *pvaIn OPTIONAL, IN VARIANTARG *pvaOut OPTIONAL)
 
virtual HRESULT STDMETHODCALLTYPE SetClient (IUnknown *punkClient)
 
virtual HRESULT STDMETHODCALLTYPE GetClient (IUnknown **ppunkClient)
 
virtual HRESULT STDMETHODCALLTYPE OnPosRectChangeDB (RECT *prc)
 
virtual HRESULT STDMETHODCALLTYPE Popup (POINTL *ppt, RECTL *prcExclude, MP_POPUPFLAGS dwFlags)
 
virtual HRESULT STDMETHODCALLTYPE OnSelect (DWORD dwSelectType)
 
virtual HRESULT STDMETHODCALLTYPE SetSubMenu (IMenuPopup *pmp, BOOL fSet)
 
HRESULT Initialize (IN ITrayWindow *tray)
 
- Public Member Functions inherited from ATL::CComObjectRootEx< CComMultiThreadModelNoCS >
 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 
- Public Member Functions inherited from IServiceProvider
HRESULT QueryService ([in] REFGUID guidService, [in] REFIID riid, [out] void **ppvObject)
 
HRESULT RemoteQueryService ([in] REFGUID guidService, [in] REFIID riid, [out, iid_is(riid)] IUnknown **ppvObject)
 
- Public Member Functions inherited from IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 
- Public Member Functions inherited from IOleCommandTarget
HRESULT QueryStatus ([in, unique] const GUID *pguidCmdGroup, [in] ULONG cCmds, [in, out, size_is(cCmds)] OLECMD prgCmds[], [in, out, unique] OLECMDTEXT *pCmdText)
 
HRESULT Exec ([in, unique] const GUID *pguidCmdGroup, [in] DWORD nCmdID, [in] DWORD nCmdexecopt, [in, unique] VARIANT *pvaIn, [in, out, unique] VARIANT *pvaOut)
 
- Public Member Functions inherited from IOleWindow
HRESULT GetWindow ([out] HWND *phwnd)
 
HRESULT ContextSensitiveHelp ([in] BOOL fEnterMode)
 

Private Attributes

CComPtr< ITrayWindow > m_Tray
 

Additional Inherited Members

- Public Types inherited from IServiceProvider
typedef IServiceProviderLPSERVICEPROVIDER
 
- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 
- Public Types inherited from IOleCommandTarget
enum  OLECMDF {
  OLECMDF_SUPPORTED = 0x1, OLECMDF_ENABLED = 0x2, OLECMDF_LATCHED = 0x4, OLECMDF_NINCHED = 0x8,
  OLECMDF_INVISIBLE = 0x10, OLECMDF_DEFHIDEONCTXTMENU = 0x20
}
 
enum  OLECMDTEXTF { OLECMDTEXTF_NONE = 0, OLECMDTEXTF_NAME = 1, OLECMDTEXTF_STATUS = 2 }
 
enum  OLECMDEXECOPT { OLECMDEXECOPT_DODEFAULT = 0, OLECMDEXECOPT_PROMPTUSER = 1, OLECMDEXECOPT_DONTPROMPTUSER = 2, OLECMDEXECOPT_SHOWHELP = 3 }
 
enum  OLECMDID {
  OLECMDID_OPEN = 1, OLECMDID_NEW = 2, OLECMDID_SAVE = 3, OLECMDID_SAVEAS = 4,
  OLECMDID_SAVECOPYAS = 5, OLECMDID_PRINT = 6, OLECMDID_PRINTPREVIEW = 7, OLECMDID_PAGESETUP = 8,
  OLECMDID_SPELL = 9, OLECMDID_PROPERTIES = 10, OLECMDID_CUT = 11, OLECMDID_COPY = 12,
  OLECMDID_PASTE = 13, OLECMDID_PASTESPECIAL = 14, OLECMDID_UNDO = 15, OLECMDID_REDO = 16,
  OLECMDID_SELECTALL = 17, OLECMDID_CLEARSELECTION = 18, OLECMDID_ZOOM = 19, OLECMDID_GETZOOMRANGE = 20,
  OLECMDID_UPDATECOMMANDS = 21, OLECMDID_REFRESH = 22, OLECMDID_STOP = 23, OLECMDID_HIDETOOLBARS = 24,
  OLECMDID_SETPROGRESSMAX = 25, OLECMDID_SETPROGRESSPOS = 26, OLECMDID_SETPROGRESSTEXT = 27, OLECMDID_SETTITLE = 28,
  OLECMDID_SETDOWNLOADSTATE = 29, OLECMDID_STOPDOWNLOAD = 30, OLECMDID_ONTOOLBARACTIVATED = 31, OLECMDID_FIND = 32,
  OLECMDID_DELETE = 33, OLECMDID_HTTPEQUIV = 34, OLECMDID_HTTPEQUIV_DONE = 35, OLECMDID_ENABLE_INTERACTION = 36,
  OLECMDID_ONUNLOAD = 37, OLECMDID_PROPERTYBAG2 = 38, OLECMDID_PREREFRESH = 39, OLECMDID_SHOWSCRIPTERROR = 40,
  OLECMDID_SHOWMESSAGE = 41, OLECMDID_SHOWFIND = 42, OLECMDID_SHOWPAGESETUP = 43, OLECMDID_SHOWPRINT = 44,
  OLECMDID_CLOSE = 45, OLECMDID_ALLOWUILESSSAVEAS = 46, OLECMDID_DONTDOWNLOADCSS = 47, OLECMDID_UPDATEPAGESTATUS = 48,
  OLECMDID_PRINT2 = 49, OLECMDID_PRINTPREVIEW2 = 50, OLECMDID_SETPRINTTEMPLATE = 51, OLECMDID_GETPRINTTEMPLATE = 52,
  OLECMDID_PAGEACTIONBLOCKED = 55, OLECMDID_PAGEACTIONUIQUERY = 56, OLECMDID_FOCUSVIEWCONTROLS = 57, OLECMDID_FOCUSVIEWCONTROLSQUERY = 58,
  OLECMDID_SHOWPAGEACTIONMENU = 59, OLECMDID_ADDTRAVELENTRY = 60, OLECMDID_UPDATETRAVELENTRY = 61, OLECMDID_UPDATEBACKFORWARDSTATE = 62,
  OLECMDID_OPTICAL_ZOOM = 63, OLECMDID_OPTICAL_GETZOOMRANGE = 64, OLECMDID_WINDOWSTATECHANGED = 65, OLECMDID_ACTIVEXINSTALLSCOPE = 66,
  OLECMDID_UPDATETRAVELENTRY_DATARECOVERY = 67, OLECMDID_SHOWTASKDLG = 68, OLECMDID_POPSTATEEVENT = 69, OLECMDID_VIEWPORT_MODE = 70,
  OLECMDID_LAYOUT_VIEWPORT_WIDTH = 71, OLECMDID_VISUAL_VIEWPORT_EXCLUDE_BOTTOM = 72, OLECMDID_USER_OPTICAL_ZOOM = 73, OLECMDID_PAGEAVAILABLE = 74,
  OLECMDID_GETUSERSCALABLE = 75, OLECMDID_UPDATE_CARET = 76, OLECMDID_ENABLE_VISIBILITY = 77, OLECMDID_MEDIA_PLAYBACK = 78
}
 
typedef IOleCommandTargetLPOLECOMMANDTARGET
 
typedef enum IOleCommandTarget::OLECMDF OLECMDF
 
typedef struct IOleCommandTarget::_tagOLECMD OLECMD
 
typedef struct IOleCommandTarget::_tagOLECMDTEXT OLECMDTEXT
 
typedef enum IOleCommandTarget::OLECMDTEXTF OLECMDTEXTF
 
typedef enum IOleCommandTarget::OLECMDEXECOPT OLECMDEXECOPT
 
typedef enum IOleCommandTarget::OLECMDID OLECMDID
 
- Public Types inherited from IMenuPopup
enum  tagMENUPOPUPSELECT {
  MPOS_EXECUTE = 0, MPOS_FULLCANCEL, MPOS_CANCELLEVEL, MPOS_SELECTLEFT,
  MPOS_SELECTRIGHT, MPOS_CHILDTRACKING
}
 
enum  tagMENUPOPUPPOPUPFLAGS {
  MPPF_SETFOCUS = 0x00000001, MPPF_INITIALSELECT = 0x00000002, MPPF_NOANIMATE = 0x00000004, MPPF_KEYBOARD = 0x00000010,
  MPPF_REPOSITION = 0x00000020, MPPF_FORCEZORDER = 0x00000040, MPPF_FINALSELECT = 0x00000080, MPPF_TOP = 0x20000000,
  MPPF_LEFT = 0x40000000, MPPF_RIGHT = 0x60000000, MPPF_BOTTOM = 0x80000000, MPPF_POS_MASK = 0xE0000000,
  MPPF_ALIGN_LEFT = 0x02000000, MPPF_ALIGN_RIGHT = 0x04000000
}
 
typedef int MP_POPUPFLAGS
 
- Public Types inherited from IOleWindow
typedef IOleWindowLPOLEWINDOW
 
- Static Public Member Functions inherited from ATL::CComCoClass< CStartMenuSite >
static LPCTSTR WINAPI GetObjectDescription ()
 
- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 

Detailed Description

Definition at line 23 of file startmnusite.cpp.

Constructor & Destructor Documentation

◆ CStartMenuSite()

CStartMenuSite::CStartMenuSite ( )
inline

Definition at line 34 of file startmnusite.cpp.

35  {
36  }

◆ ~CStartMenuSite()

virtual CStartMenuSite::~CStartMenuSite ( )
inlinevirtual

Definition at line 38 of file startmnusite.cpp.

38 {}

Member Function Documentation

◆ AppendMenu()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::AppendMenu ( OUT HMENU phMenu)
inlinevirtual

Definition at line 115 of file startmnusite.cpp.

117  {
118  HMENU hMenu, hSettingsMenu;
119  DWORD dwLogoff;
120  BOOL bWantLogoff;
121  UINT uLastItemsCount = 5; /* 5 menu items below the last separator */
122  WCHAR szUser[128];
123 
124  TRACE("ITrayPriv::AppendMenu\n");
125 
127  *phMenu = hMenu;
128  if (hMenu == NULL)
129  return E_FAIL;
130 
131  /* Remove menu items that don't apply */
132 
134  bWantLogoff = (dwLogoff == 2 ||
137  L"Advanced",
138  L"StartMenuLogoff"));
139 
140  /* Favorites */
142  L"Advanced",
143  L"StartMenuFavorites"))
144  {
145  DeleteMenu(hMenu,
147  MF_BYCOMMAND);
148  }
149 
150  /* Documents */
152  {
153  DeleteMenu(hMenu,
155  MF_BYCOMMAND);
156  }
157 
158  /* Settings */
159  hSettingsMenu = FindSubMenu(hMenu,
160  IDM_SETTINGS,
161  FALSE);
162  if (hSettingsMenu != NULL)
163  {
165  {
166  /* Control Panel */
168  {
169  DeleteMenu(hSettingsMenu,
171  MF_BYCOMMAND);
172 
173  /* Delete the separator below it */
174  DeleteMenu(hSettingsMenu,
175  0,
176  MF_BYPOSITION);
177  }
178 
179  /* Network Connections */
181  {
182  DeleteMenu(hSettingsMenu,
184  MF_BYCOMMAND);
185  }
186 
187  /* Printers and Faxes */
188  DeleteMenu(hSettingsMenu,
190  MF_BYCOMMAND);
191  }
192 
193  /* Security */
194  if (GetSystemMetrics(SM_REMOTECONTROL) == 0 ||
196  {
197  DeleteMenu(hSettingsMenu,
198  IDM_SECURITY,
199  MF_BYCOMMAND);
200  }
201 
202  if (GetMenuItemCount(hSettingsMenu) == 0)
203  {
204  DeleteMenu(hMenu,
205  IDM_SETTINGS,
206  MF_BYCOMMAND);
207  }
208  }
209 
210  /* Search */
212  {
213  DeleteMenu(hMenu,
214  IDM_SEARCH,
215  MF_BYCOMMAND);
216  }
217 
218  /* FIXME: Help */
219 
220  /* Run */
222  {
223  DeleteMenu(hMenu,
224  IDM_RUN,
225  MF_BYCOMMAND);
226  }
227 
228  /* Synchronize */
230  {
231  DeleteMenu(hMenu,
233  MF_BYCOMMAND);
234  uLastItemsCount--;
235  }
236 
237  /* Log off */
238  if (dwLogoff != 1 && bWantLogoff)
239  {
240  /* FIXME: We need a more sophisticated way to determine whether to show
241  or hide it, it might be hidden in too many cases!!! */
242 
243  /* Update Log Off menu item */
244  if (!GetCurrentLoggedOnUserName(szUser, _countof(szUser)))
245  {
246  szUser[0] = _T('\0');
247  }
248 
249  if (!FormatMenuString(hMenu,
250  IDM_LOGOFF,
251  MF_BYCOMMAND,
252  szUser))
253  {
254  /* We couldn't update the menu item, delete it... */
255  DeleteMenu(hMenu,
256  IDM_LOGOFF,
257  MF_BYCOMMAND);
258  }
259  }
260  else
261  {
262  DeleteMenu(hMenu,
263  IDM_LOGOFF,
264  MF_BYCOMMAND);
265  uLastItemsCount--;
266  }
267 
268 
269  /* Disconnect */
270  if (GetSystemMetrics(SM_REMOTECONTROL) == 0)
271  {
272  DeleteMenu(hMenu,
274  MF_BYCOMMAND);
275  uLastItemsCount--;
276  }
277 
278  /* Undock computer */
279  if (!ShowUndockMenuItem())
280  {
281  DeleteMenu(hMenu,
283  MF_BYCOMMAND);
284  uLastItemsCount--;
285  }
286 
287  /* Shut down */
289  {
290  DeleteMenu(hMenu,
291  IDM_SHUTDOWN,
292  MF_BYCOMMAND);
293  uLastItemsCount--;
294  }
295 
296  if (uLastItemsCount == 0)
297  {
298  /* Remove the separator at the end of the menu */
299  DeleteMenu(hMenu,
301  MF_BYCOMMAND);
302  }
303 
304  return S_OK;
305  }
#define IDM_LASTSTARTMENU_SEPARATOR
Definition: resource.h:79
BOOL GetCurrentLoggedOnUserName(OUT LPWSTR szBuffer, IN DWORD dwBufferSize)
Definition: util.cpp:73
BOOL FormatMenuString(IN HMENU hMenu, IN UINT uPosition, IN UINT uFlags,...)
Definition: util.cpp:106
#define IDM_CONTROLPANEL
Definition: resource.h:66
#define MF_BYCOMMAND
Definition: winuser.h:202
#define _countof(array)
Definition: fontsub.cpp:30
#define HKEY_CURRENT_USER
Definition: winreg.h:11
#define IDM_SETTINGS
Definition: resource.h:65
#define E_FAIL
Definition: ddrawi.h:102
#define IDM_NETWORKCONNECTIONS
Definition: resource.h:68
virtual BOOL ShowSynchronizeMenuItem(VOID)
unsigned int BOOL
Definition: ntddk_ex.h:94
#define MF_BYPOSITION
Definition: winuser.h:203
int WINAPI GetMenuItemCount(_In_opt_ HMENU)
#define IDM_FAVORITES
Definition: resource.h:63
#define IDM_LOGOFF
Definition: resource.h:75
smooth NULL
Definition: ftsmooth.c:416
BOOL GetExplorerRegValueSet(IN HKEY hKey, IN LPCWSTR lpSubKey, IN LPCWSTR lpValue)
Definition: util.cpp:144
#define IDM_SEARCH
Definition: resource.h:71
#define IDM_DOCUMENTS
Definition: resource.h:64
#define _T(x)
Definition: vfdio.h:22
#define TRACE(s)
Definition: solgame.cpp:4
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
HINSTANCE hExplorerInstance
Definition: explorer.cpp:24
int WINAPI GetSystemMetrics(_In_ int)
unsigned long DWORD
Definition: ntddk_ex.h:95
#define IDM_DISCONNECT
Definition: resource.h:76
virtual BOOL ShowUndockMenuItem(VOID)
static const WCHAR L[]
Definition: oid.c:1250
#define IDM_PRINTERSANDFAXES
Definition: resource.h:69
#define IDM_UNDOCKCOMPUTER
Definition: resource.h:77
HMENU LoadPopupMenu(IN HINSTANCE hInstance, IN LPCWSTR lpMenuName)
Definition: util.cpp:33
#define S_OK
Definition: intsafe.h:59
#define IDM_SYNCHRONIZE
Definition: resource.h:74
#define IDM_STARTMENU
Definition: resource.h:56
unsigned int UINT
Definition: ndis.h:50
#define IDM_SHUTDOWN
Definition: resource.h:78
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
#define IDM_RUN
Definition: resource.h:73
DWORD WINAPI SHRestricted(RESTRICTIONS policy)
Definition: shpolicy.c:836
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:60
HMENU FindSubMenu(IN HMENU hMenu, IN UINT uItem, IN BOOL fByPosition)
Definition: util.cpp:55
#define IDM_SECURITY
Definition: resource.h:67

◆ ContextSensitiveHelp()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::ContextSensitiveHelp ( IN BOOL  fEnterMode)
inlinevirtual

Definition at line 69 of file startmnusite.cpp.

71  {
72  TRACE("ITrayPriv::ContextSensitiveHelp\n");
73  return E_NOTIMPL;
74  }
#define TRACE(s)
Definition: solgame.cpp:4
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Exec()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::Exec ( IN const GUID *pguidCmdGroup  OPTIONAL,
IN DWORD  nCmdID,
IN DWORD  nCmdExecOpt,
IN VARIANTARG *pvaIn  OPTIONAL,
IN VARIANTARG *pvaOut  OPTIONAL 
)
inlinevirtual

Definition at line 318 of file startmnusite.cpp.

324  {
325  return E_NOTIMPL;
326  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Execute()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::Execute ( IN IShellFolder pShellFolder,
IN LPCITEMIDLIST  pidl 
)
inlinevirtual

Definition at line 76 of file startmnusite.cpp.

79  {
81 
82  TRACE("ITrayPriv::Execute\n");
83 
84  ret = SHInvokeDefaultCommand(m_Tray->GetHWND(), pShellFolder, pidl);
85 
86  return ret;
87  }
CComPtr< ITrayWindow > m_Tray
HRESULT WINAPI SHInvokeDefaultCommand(HWND hWnd, IShellFolder *lpFolder, LPCITEMIDLIST lpApidl)
Definition: ordinal.c:2928
#define S_FALSE
Definition: winerror.h:2357
#define TRACE(s)
Definition: solgame.cpp:4
LONG HRESULT
Definition: typedefs.h:77
int ret

◆ GetClient()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::GetClient ( IUnknown **  ppunkClient)
inlinevirtual

Implements IDeskBar.

Definition at line 335 of file startmnusite.cpp.

336  {
337  return E_NOTIMPL;
338  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ GetWindow()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::GetWindow ( OUT HWND phwnd)
inlinevirtual

Definition at line 57 of file startmnusite.cpp.

59  {
60  TRACE("ITrayPriv::GetWindow\n");
61 
62  *phwnd = m_Tray->GetHWND();
63  if (*phwnd != NULL)
64  return S_OK;
65 
66  return E_FAIL;
67  }
CComPtr< ITrayWindow > m_Tray
#define E_FAIL
Definition: ddrawi.h:102
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
#define S_OK
Definition: intsafe.h:59

◆ Initialize()

HRESULT CStartMenuSite::Initialize ( IN ITrayWindow *  tray)
inline

Definition at line 367 of file startmnusite.cpp.

368  {
369  m_Tray = tray;
370  return S_OK;
371  }
CComPtr< ITrayWindow > m_Tray
#define S_OK
Definition: intsafe.h:59

◆ OnPosRectChangeDB()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::OnPosRectChangeDB ( RECT prc)
inlinevirtual

Implements IDeskBar.

Definition at line 340 of file startmnusite.cpp.

341  {
342  return E_NOTIMPL;
343  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ OnSelect()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::OnSelect ( DWORD  dwSelectType)
inlinevirtual

Implements IMenuPopup.

Definition at line 350 of file startmnusite.cpp.

351  {
352  return E_NOTIMPL;
353  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ Popup()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::Popup ( POINTL ppt,
RECTL prcExclude,
MP_POPUPFLAGS  dwFlags 
)
inlinevirtual

Implements IMenuPopup.

Definition at line 345 of file startmnusite.cpp.

346  {
347  return E_NOTIMPL;
348  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ QueryService()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::QueryService ( IN REFGUID  guidService,
IN REFIID  riid,
OUT PVOID ppvObject 
)
inlinevirtual

Definition at line 42 of file startmnusite.cpp.

46  {
47  if (IsEqualGUID(guidService, SID_SMenuPopup))
48  {
49  return QueryInterface(riid, ppvObject);
50  }
51 
52  return E_NOINTERFACE;
53  }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
REFIID LPVOID * ppvObject
Definition: precomp.h:44
BOOL WINAPI IsEqualGUID(REFGUID rguid1, REFGUID rguid2)
Definition: compobj.c:4112
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)

◆ QueryStatus()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::QueryStatus ( IN const GUID *pguidCmdGroup  OPTIONAL,
IN ULONG  cCmds,
IN OUT OLECMD prgCmds,
IN OUT OLECMDTEXT *pCmdText  OPTIONAL 
)
inlinevirtual

Definition at line 309 of file startmnusite.cpp.

314  {
315  return E_NOTIMPL;
316  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ SetClient()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::SetClient ( IUnknown punkClient)
inlinevirtual

Implements IDeskBar.

Definition at line 330 of file startmnusite.cpp.

331  {
332  return E_NOTIMPL;
333  }
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ SetSubMenu()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::SetSubMenu ( IMenuPopup pmp,
BOOL  fSet 
)
inlinevirtual

Implements IMenuPopup.

Definition at line 355 of file startmnusite.cpp.

356  {
357  if (!fSet)
358  {
360  }
361 
362  return S_OK;
363  }
CComPtr< ITrayWindow > m_Tray
#define S_OK
Definition: intsafe.h:59
HRESULT Tray_OnStartMenuDismissed(ITrayWindow *Tray)
Definition: traywnd.cpp:3405

◆ ShowSynchronizeMenuItem()

virtual BOOL CStartMenuSite::ShowSynchronizeMenuItem ( VOID  )
inlinevirtual

Definition at line 108 of file startmnusite.cpp.

109  {
110  TRACE("ShowSynchronizeMenuItem() not implemented!\n");
111  /* FIXME: How do we detect this?! */
112  return FALSE;
113  }
#define TRACE(s)
Definition: solgame.cpp:4

Referenced by AppendMenu().

◆ ShowUndockMenuItem()

virtual BOOL CStartMenuSite::ShowUndockMenuItem ( VOID  )
inlinevirtual

Definition at line 100 of file startmnusite.cpp.

101  {
102  TRACE("ShowUndockMenuItem() not implemented!\n");
103  /* FIXME: How do we detect this?! */
104  return FALSE;
105  }
#define TRACE(s)
Definition: solgame.cpp:4

Referenced by AppendMenu().

◆ Unknown()

virtual HRESULT STDMETHODCALLTYPE CStartMenuSite::Unknown ( IN PVOID  Unknown1,
IN PVOID  Unknown2,
IN PVOID  Unknown3,
IN PVOID  Unknown4 
)
inlinevirtual

Definition at line 89 of file startmnusite.cpp.

94  {
95  TRACE("ITrayPriv::Unknown(0x%p,0x%p,0x%p,0x%p)\n", Unknown1, Unknown2, Unknown3, Unknown4);
96  return E_NOTIMPL;
97  }
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD Unknown3
Definition: conport.c:35
PRTL_UNICODE_STRING_BUFFER PULONG PULONG Unknown4
#define TRACE(s)
Definition: solgame.cpp:4
#define E_NOTIMPL
Definition: ddrawi.h:99

Member Data Documentation

◆ m_Tray

CComPtr<ITrayWindow> CStartMenuSite::m_Tray
private

Definition at line 31 of file startmnusite.cpp.

Referenced by Execute(), GetWindow(), Initialize(), and SetSubMenu().


The documentation for this class was generated from the following file: