ReactOS 0.4.15-dev-7136-g77ab709
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)
 
HRESULT Popup ([in] POINTL *ppt, [in] RECTL *prcExclude, [in] MP_POPUPFLAGS dwFlags)
 
HRESULT OnSelect ([in] DWORD dwSelectType)
 
HRESULT SetSubMenu ([in] IMenuPopup *pmp, [in] BOOL fSet)
 
HRESULT SetClient ([in] IUnknown *punkClient)
 
HRESULT GetClient ([out] IUnknown **ppunkClient)
 
HRESULT OnPosRectChangeDB ([in] RECT *prc)
 
- 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,
148 }
149
150 /* Documents */
152 {
153 DeleteMenu(hMenu,
156 }
157
158 /* Settings */
159 hSettingsMenu = FindSubMenu(hMenu,
161 FALSE);
162 if (hSettingsMenu != NULL)
163 {
165 {
166 /* Control Panel */
168 {
169 DeleteMenu(hSettingsMenu,
172
173 /* Delete the separator below it */
174 DeleteMenu(hSettingsMenu,
175 0,
177 }
178
179 /* Network Connections */
181 {
182 DeleteMenu(hSettingsMenu,
185 }
186
187 /* Printers and Faxes */
188 DeleteMenu(hSettingsMenu,
191 }
192
193 /* Security */
194 if (GetSystemMetrics(SM_REMOTECONTROL) == 0 ||
196 {
197 DeleteMenu(hSettingsMenu,
200 }
201
202 if (GetMenuItemCount(hSettingsMenu) == 0)
203 {
204 DeleteMenu(hMenu,
207 }
208 }
209
210 /* Search */
212 {
213 DeleteMenu(hMenu,
216 }
217
218 /* FIXME: Help */
219
220 /* Run */
222 {
223 DeleteMenu(hMenu,
224 IDM_RUN,
226 }
227
228 /* Synchronize */
230 {
231 DeleteMenu(hMenu,
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,
252 szUser))
253 {
254 /* We couldn't update the menu item, delete it... */
255 DeleteMenu(hMenu,
258 }
259 }
260 else
261 {
262 DeleteMenu(hMenu,
265 uLastItemsCount--;
266 }
267
268
269 /* Disconnect */
270 if (GetSystemMetrics(SM_REMOTECONTROL) == 0)
271 {
272 DeleteMenu(hMenu,
275 uLastItemsCount--;
276 }
277
278 /* Undock computer */
279 if (!ShowUndockMenuItem())
280 {
281 DeleteMenu(hMenu,
284 uLastItemsCount--;
285 }
286
287 /* Shut down */
289 {
290 DeleteMenu(hMenu,
293 uLastItemsCount--;
294 }
295
296 if (uLastItemsCount == 0)
297 {
298 /* Remove the separator at the end of the menu */
299 DeleteMenu(hMenu,
302 }
303
304 return S_OK;
305 }
HINSTANCE hExplorerInstance
Definition: explorer.cpp:24
HMENU FindSubMenu(IN HMENU hMenu, IN UINT uItem, IN BOOL fByPosition)
Definition: util.cpp:55
BOOL FormatMenuString(IN HMENU hMenu, IN UINT uPosition, IN UINT uFlags,...)
Definition: util.cpp:106
HMENU LoadPopupMenu(IN HINSTANCE hInstance, IN LPCWSTR lpMenuName)
Definition: util.cpp:33
BOOL GetCurrentLoggedOnUserName(OUT LPWSTR szBuffer, IN DWORD dwBufferSize)
Definition: util.cpp:73
BOOL GetExplorerRegValueSet(IN HKEY hKey, IN LPCWSTR lpSubKey, IN LPCWSTR lpValue)
Definition: util.cpp:144
#define IDM_SEARCH
Definition: resource.h:71
#define IDM_FAVORITES
Definition: resource.h:63
#define IDM_UNDOCKCOMPUTER
Definition: resource.h:77
#define IDM_SECURITY
Definition: resource.h:67
#define IDM_SYNCHRONIZE
Definition: resource.h:74
#define IDM_NETWORKCONNECTIONS
Definition: resource.h:68
#define IDM_SHUTDOWN
Definition: resource.h:78
#define IDM_CONTROLPANEL
Definition: resource.h:66
#define IDM_PRINTERSANDFAXES
Definition: resource.h:69
#define IDM_LASTSTARTMENU_SEPARATOR
Definition: resource.h:79
#define IDM_SETTINGS
Definition: resource.h:65
#define IDM_DISCONNECT
Definition: resource.h:76
#define IDM_RUN
Definition: resource.h:73
#define IDM_STARTMENU
Definition: resource.h:56
#define IDM_DOCUMENTS
Definition: resource.h:64
#define IDM_LOGOFF
Definition: resource.h:75
virtual BOOL ShowSynchronizeMenuItem(VOID)
virtual BOOL ShowUndockMenuItem(VOID)
#define E_FAIL
Definition: ddrawi.h:102
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
#define S_OK
Definition: intsafe.h:52
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition: ordinal.c:63
unsigned int UINT
Definition: ndis.h:50
#define L(x)
Definition: ntvdm.h:50
@ REST_FORCESTARTMENULOGOFF
Definition: shlobj.h:1704
@ REST_NOSETFOLDERS
Definition: shlobj.h:1632
@ REST_NOCONTROLPANEL
Definition: shlobj.h:1693
@ REST_STARTMENULOGOFF
Definition: shlobj.h:1656
@ REST_NONETWORKCONNECTIONS
Definition: shlobj.h:1703
@ REST_NOSECURITY
Definition: shlobj.h:1793
@ REST_NORECENTDOCSMENU
Definition: shlobj.h:1660
@ REST_NORUN
Definition: shlobj.h:1628
@ REST_NOFIND
Definition: shlobj.h:1635
@ REST_NOCLOSE
Definition: shlobj.h:1629
DWORD WINAPI SHRestricted(RESTRICTIONS policy)
Definition: shpolicy.c:827
#define _countof(array)
Definition: sndvol32.h:68
#define TRACE(s)
Definition: solgame.cpp:4
#define _T(x)
Definition: vfdio.h:22
#define HKEY_CURRENT_USER
Definition: winreg.h:11
#define MF_BYCOMMAND
Definition: winuser.h:202
int WINAPI GetMenuItemCount(_In_opt_ HMENU)
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
#define MF_BYPOSITION
Definition: winuser.h:203
#define MAKEINTRESOURCEW(i)
Definition: winuser.h:582
int WINAPI GetSystemMetrics(_In_ int)
__wchar_t WCHAR
Definition: xmlstorage.h:180

◆ 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 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 }

◆ 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:2977
int ret
#define S_FALSE
Definition: winerror.h:2357

◆ 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 }

◆ 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 }

◆ 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 }

◆ 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 }

◆ 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 }

◆ 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 }

◆ 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 {
50 }
51
52 return E_NOINTERFACE;
53 }
REFIID riid
Definition: atlbase.h:39
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
Definition: wincrypt.h:6082
#define E_NOINTERFACE
Definition: winerror.h:2364

◆ 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 }

◆ 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 }

◆ 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 }
HRESULT Tray_OnStartMenuDismissed(ITrayWindow *Tray)
Definition: traywnd.cpp:3875

◆ 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 }

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 }

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 }
PRTL_UNICODE_STRING_BUFFER PULONG PULONG Unknown4
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES IN DWORD Unknown3
Definition: conport.c:37

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: