Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#include "taskband.h"
#include "tray.h"
#ifdef __cplusplus
class CSimpleOleWindow : public IDeskBar // public IOleWindow,
{ public: // *** IUnknown ***
virtual STDMETHODIMP QueryInterface(REFIID riid, LPVOID * ppvObj); virtual STDMETHODIMP_(ULONG) AddRef(void); virtual STDMETHODIMP_(ULONG) Release(void);
// *** IDeskBar ***
STDMETHOD(OnPosRectChangeDB)(THIS_ LPRECT prc) { ASSERT(0); return E_NOTIMPL; } STDMETHOD(SetClient) (THIS_ IUnknown* punkClient) { return E_NOTIMPL; } STDMETHOD(GetClient) (THIS_ IUnknown** ppunkClient) { return E_NOTIMPL; }
// *** IOleWindow methods ***
virtual STDMETHODIMP GetWindow(HWND * lphwnd); virtual STDMETHODIMP ContextSensitiveHelp(BOOL fEnterMode) { return E_NOTIMPL; }
CSimpleOleWindow(HWND hwnd); protected: virtual ~CSimpleOleWindow(); UINT _cRef; HWND _hwnd; };
class CTaskBar : public CSimpleOleWindow , public IContextMenu , public IServiceProvider , public IRestrict { public: // *** IUnknown ***
virtual STDMETHODIMP QueryInterface(REFIID riid, void ** ppvObj); virtual STDMETHODIMP_(ULONG) AddRef(void) { return CSimpleOleWindow::AddRef();}; virtual STDMETHODIMP_(ULONG) Release(void){ return CSimpleOleWindow::Release();};
// *** IContextMenu methods ***
STDMETHOD(QueryContextMenu)(HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags);
STDMETHOD(InvokeCommand)(LPCMINVOKECOMMANDINFO lpici); STDMETHOD(GetCommandString)(UINT_PTR idCmd, UINT uType, UINT * pwReserved, LPSTR pszName, UINT cchMax); // *** IServiceProvider methods ***
virtual STDMETHODIMP QueryService(REFGUID guidService, REFIID riid, void ** ppvObj);
// *** IRestrict ***
virtual STDMETHODIMP IsRestricted(const GUID * pguidID, DWORD dwRestrictAction, VARIANT * pvarArgs, DWORD * pdwRestrictionResult); // *** CSimpleOleWindow - IDeskBar ***
STDMETHOD(OnPosRectChangeDB)(LPRECT prc);
CTaskBar(); HWND _hwndRebar;
protected: //virtual ~CTaskBar();
BOOL _fRestrictionsInited; // Have we read in the restrictions?
BOOL _fRestrictDDClose; // Restrict: Add, Close, Drag & Drop
BOOL _fRestrictMove; // Restrict: Move
};
#endif
|