ReactOS 0.4.16-dev-136-g52192f1
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
133 /* Favorites */
135 !GetAdvancedBool(L"StartMenuFavorites", FALSE))
136 {
138 }
139
140 /* Documents */
142 !GetAdvancedBool(L"Start_ShowRecentDocs", TRUE))
143 {
145 }
146
147 /* Settings */
148 hSettingsMenu = FindSubMenu(hMenu, IDM_SETTINGS, FALSE);
149
150 /* Control Panel */
153 !GetAdvancedBool(L"Start_ShowControlPanel", TRUE))
154 {
156
157 /* Delete the separator below it */
158 DeleteMenu(hSettingsMenu, 0, MF_BYPOSITION);
159 }
160
161 /* Network Connections */
164 !GetAdvancedBool(L"Start_ShowNetConn", TRUE))
165 {
167 }
168
169 /* Printers and Faxes */
171 !GetAdvancedBool(L"Start_ShowPrinters", TRUE))
172 {
174 }
175
176 /* Security */
178 GetSystemMetrics(SM_REMOTECONTROL) == 0 ||
180 {
181 DeleteMenu(hSettingsMenu, IDM_SECURITY, MF_BYCOMMAND);
182 }
183
184 /* Delete Settings menu if it was empty */
185 if (GetMenuItemCount(hSettingsMenu) == 0)
186 {
188 }
189
190 /* Search */
192 !GetAdvancedBool(L"Start_ShowSearch", TRUE))
193 {
195 }
196
197 /* Help */
199 !GetAdvancedBool(L"Start_ShowHelp", TRUE))
200 {
202 }
203
204 /* Run */
206 !GetAdvancedBool(L"StartMenuRun", TRUE))
207 {
209 }
210
211 /* Synchronize */
213 {
215 uLastItemsCount--;
216 }
217
218 /* Log off */
220 bWantLogoff = (dwLogoff == 2 ||
222 GetAdvancedBool(L"StartMenuLogoff", FALSE));
223 if (dwLogoff != 1 && bWantLogoff)
224 {
225 /* FIXME: We need a more sophisticated way to determine whether to show
226 or hide it, it might be hidden in too many cases!!! */
227
228 /* Update Log Off menu item */
229 if (!GetCurrentLoggedOnUserName(szUser, _countof(szUser)))
230 {
231 szUser[0] = _T('\0');
232 }
233
234 if (!FormatMenuString(hMenu,
237 szUser))
238 {
239 /* We couldn't update the menu item, delete it... */
241 }
242 }
243 else
244 {
246 uLastItemsCount--;
247 }
248
249 /* Disconnect */
251 GetSystemMetrics(SM_REMOTECONTROL) == 0)
252 {
254 uLastItemsCount--;
255 }
256
257 /* Undock computer */
258 if (!ShowUndockMenuItem())
259 {
261 uLastItemsCount--;
262 }
263
264 /* Shut down */
266 {
268 uLastItemsCount--;
269 }
270
271 if (uLastItemsCount == 0)
272 {
273 /* Remove the separator at the end of the menu */
275 }
276
277 return S_OK;
278 }
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
BOOL GetAdvancedBool(IN LPCWSTR pszValueName, IN BOOL bDefaultValue)
Definition: util.cpp:156
HMENU LoadPopupMenu(IN HINSTANCE hInstance, IN LPCWSTR lpMenuName)
Definition: util.cpp:33
BOOL GetCurrentLoggedOnUserName(OUT LPWSTR szBuffer, IN DWORD dwBufferSize)
Definition: util.cpp:73
#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_HELPANDSUPPORT
Definition: resource.h:72
#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 TRUE
Definition: types.h:120
#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:1719
@ REST_NOSETFOLDERS
Definition: shlobj.h:1647
@ REST_NOCONTROLPANEL
Definition: shlobj.h:1708
@ REST_STARTMENULOGOFF
Definition: shlobj.h:1671
@ REST_NONETWORKCONNECTIONS
Definition: shlobj.h:1718
@ REST_NOSECURITY
Definition: shlobj.h:1867
@ REST_NORECENTDOCSMENU
Definition: shlobj.h:1675
@ REST_NORUN
Definition: shlobj.h:1643
@ REST_NOFIND
Definition: shlobj.h:1650
@ REST_NODISCONNECT
Definition: shlobj.h:1866
@ REST_NOSMHELP
Definition: shlobj.h:1740
@ REST_NOCLOSE
Definition: shlobj.h:1644
@ REST_NOFAVORITESMENU
Definition: shlobj.h:1678
DWORD WINAPI SHRestricted(RESTRICTIONS rest)
Definition: shpolicy.c:150
#define _countof(array)
Definition: sndvol32.h:70
#define TRACE(s)
Definition: solgame.cpp:4
#define _T(x)
Definition: vfdio.h:22
#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 291 of file startmnusite.cpp.

297 {
298 return E_NOTIMPL;
299 }

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

◆ GetClient()

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

Implements IDeskBar.

Definition at line 308 of file startmnusite.cpp.

309 {
310 return E_NOTIMPL;
311 }

◆ 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 340 of file startmnusite.cpp.

341 {
342 m_Tray = tray;
343 return S_OK;
344 }

◆ OnPosRectChangeDB()

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

Implements IDeskBar.

Definition at line 313 of file startmnusite.cpp.

314 {
315 return E_NOTIMPL;
316 }

◆ OnSelect()

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

Implements IMenuPopup.

Definition at line 323 of file startmnusite.cpp.

324 {
325 return E_NOTIMPL;
326 }

◆ Popup()

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

Implements IMenuPopup.

Definition at line 318 of file startmnusite.cpp.

319 {
320 return E_NOTIMPL;
321 }

◆ 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 282 of file startmnusite.cpp.

287 {
288 return E_NOTIMPL;
289 }

◆ SetClient()

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

Implements IDeskBar.

Definition at line 303 of file startmnusite.cpp.

304 {
305 return E_NOTIMPL;
306 }

◆ SetSubMenu()

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

Implements IMenuPopup.

Definition at line 328 of file startmnusite.cpp.

329 {
330 if (!fSet)
331 {
333 }
334
335 return S_OK;
336 }
HRESULT Tray_OnStartMenuDismissed(ITrayWindow *Tray)
Definition: traywnd.cpp:3711

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