[BROWSEUI]
[reactos.git] / dll / win32 / browseui / bandsitemenu.h
index bf7ae6d..9388c79 100644 (file)
@@ -1,8 +1,8 @@
 /*
- *     Band site menu
+ *  Band site menu
  *
- *     Copyright 2007  HervĂ© Poussineua
- *     Copyright 2009  Andrew Hill
+ *  Copyright 2007  HervĂ© Poussineua
+ *  Copyright 2009  Andrew Hill
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
 
 // oddly, this class also responds to QueryInterface for CLSID_BandSiteMenu by returning the vtable at offset 0
 class CBandSiteMenu :
-       public CComCoClass<CBandSiteMenu, &CLSID_BandSiteMenu>,
-       public CComObjectRootEx<CComMultiThreadModelNoCS>,
-       public IShellService,
-       public IContextMenu2
+    public CComCoClass<CBandSiteMenu, &CLSID_BandSiteMenu>,
+    public CComObjectRootEx<CComMultiThreadModelNoCS>,
+    public IContextMenu3,
+    public IShellService
 {
 public:
-       CBandSiteMenu();
-       ~CBandSiteMenu();
+    CBandSiteMenu();
+    ~CBandSiteMenu();
 
-       // *** IShellService methods ***
-       virtual HRESULT STDMETHODCALLTYPE SetOwner(IUnknown *);
+    // *** IShellService methods ***
+    virtual HRESULT STDMETHODCALLTYPE SetOwner(IUnknown *);
 
-       // *** IContextMenu methods ***
-       virtual HRESULT STDMETHODCALLTYPE QueryContextMenu(HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags);
-       virtual HRESULT STDMETHODCALLTYPE InvokeCommand(LPCMINVOKECOMMANDINFO lpici);
-       virtual HRESULT STDMETHODCALLTYPE GetCommandString(UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax);
+    // *** IContextMenu methods ***
+    virtual HRESULT STDMETHODCALLTYPE QueryContextMenu(HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags);
+    virtual HRESULT STDMETHODCALLTYPE InvokeCommand(LPCMINVOKECOMMANDINFO lpici);
+    virtual HRESULT STDMETHODCALLTYPE GetCommandString(UINT_PTR idCmd, UINT uType, UINT *pwReserved, LPSTR pszName, UINT cchMax);
 
-       // *** IContextMenu2 methods ***
-       virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg(UINT uMsg, WPARAM wParam, LPARAM lParam);
+    // *** IContextMenu2 methods ***
+    virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg(UINT uMsg, WPARAM wParam, LPARAM lParam);
 
-DECLARE_REGISTRY_RESOURCEID(IDR_BANDSITEMENU)
-DECLARE_NOT_AGGREGATABLE(CBandSiteMenu)
+    // *** IContextMenu3 methods ***
+    virtual HRESULT STDMETHODCALLTYPE HandleMenuMsg2(UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *plResult);
 
-DECLARE_PROTECT_FINAL_CONSTRUCT()
+    DECLARE_REGISTRY_RESOURCEID(IDR_BANDSITEMENU)
+    DECLARE_NOT_AGGREGATABLE(CBandSiteMenu)
 
-BEGIN_COM_MAP(CBandSiteMenu)
-       COM_INTERFACE_ENTRY_IID(IID_IShellService, IShellService)
-       COM_INTERFACE_ENTRY_IID(IID_IContextMenu2, IContextMenu2)
-       COM_INTERFACE_ENTRY_IID(IID_IContextMenu, IContextMenu)
-END_COM_MAP()
+    DECLARE_PROTECT_FINAL_CONSTRUCT()
 
+    BEGIN_COM_MAP(CBandSiteMenu)
+        COM_INTERFACE_ENTRY_IID(IID_IShellService, IShellService)
+        COM_INTERFACE_ENTRY_IID(IID_IContextMenu2, IContextMenu2)
+        COM_INTERFACE_ENTRY_IID(IID_IContextMenu, IContextMenu)
+    END_COM_MAP()
 };