5 #ifndef _INC_cOleWindowless_H
6 #define _INC_cOleWindowless_H
13 #if defined(_WIN32) && defined(_MSC_VER)
20 :
public cOleWindowBase
22 ,
public IOleDocumentSite
23 ,
public IOleClientSite
24 ,
public IOleInPlaceSiteWindowless
25 ,
public IOleControlSite
31 typedef cOleWindowBase SUPER_t;
34 cIUnkPtr<IOleInPlaceObjectWindowless> m_pWindowlessObject;
38 cOleWindowless(cOleControl* pComControl, IOleInPlaceObjectWindowless* pWindowlessObject);
39 virtual ~cOleWindowless();
41 virtual HRESULT InitInstance()
override;
42 virtual bool CheckRectDirty()
override;
43 virtual HRESULT DrawControl(HDC hDC, DWORD dwDrawAspect)
override;
44 virtual LRESULT OnWindowMessage1(MSG& sMsg)
override;
46 bool isDisposed()
const
48 return m_pWindowlessObject ==
nullptr;
50 virtual void DisposeThis()
override
53 m_pWindowlessObject =
nullptr;
54 SUPER_t::DisposeThis();
59 STDMETHOD(QueryInterface)(
const IID& riid, LPVOID* ppv)
override;
63 STDMETHOD(QueryService)(
64 const GUID& guidService,
66 void __RPC_FAR *__RPC_FAR *ppvObject)
override;
70 STDMETHOD(ActivateMe)( IOleDocumentView* pViewToActivate)
override
75 DEBUG_MSG((
"cOleWindowless IOleDocumentSite ActivateMe pViewToActivate"));
82 STDMETHOD(SaveObject)(void)
override
85 DEBUG_MSG((
"cOleWindowless IOleClientSite SaveObject"));
89 STDMETHOD(GetMoniker)(DWORD dwAssign, DWORD dwWhichMoniker, IMoniker** ppmk)
override
95 DEBUG_MSG((
"cOleWindowless IOleClientSite GetMoniker"));
99 STDMETHOD(GetContainer)(IOleContainer** theContainerP)
override
103 return QueryInterface(__uuidof(IOleContainer), (
void**)theContainerP);
106 STDMETHOD(ShowObject)(void)
override
109 DEBUG_MSG((
"cOleWindowless IOleClientSite ShowObject"));
113 STDMETHOD(OnShowWindow)(BOOL)
override
119 STDMETHOD(RequestNewObjectLayout)(void)
override
128 STDMETHOD(GetWindow)( HWND __RPC_FAR* pHWND)
override
135 if (pHWND ==
nullptr)
137 *pHWND = m_pParentControl->get_WndParent();
141 STDMETHOD(ContextSensitiveHelp)( BOOL fEnterMode)
override
145 DEBUG_MSG((
"cOleWindowless IOleWindow ContextSensitiveHelp"));
152 STDMETHOD(CanInPlaceActivate)(void)
override
158 STDMETHOD(OnInPlaceActivate)(void)
override
161 DEBUG_MSG((
"cOleWindowless IOleInPlaceSite OnInPlaceActivate"));
165 STDMETHOD(OnUIActivate)(void)
override
168 DEBUG_MSG((
"cOleWindowless IOleInPlaceSite OnUIActivate"));
172 STDMETHOD(GetWindowContext)( IOleInPlaceFrame __RPC_FAR *__RPC_FAR *ppFrame, IOleInPlaceUIWindow __RPC_FAR *__RPC_FAR *ppDoc, LPRECT lprcPosRect, LPRECT lprcClipRect, LPOLEINPLACEFRAMEINFO lpFrameInfo)
override;
174 STDMETHOD(Scroll)( SIZE scrollExtant)
override
181 STDMETHOD(OnUIDeactivate)( BOOL fUndoable)
override
188 STDMETHOD(OnInPlaceDeactivate)(void)
override
194 STDMETHOD(DiscardUndoState)(void)
override
200 STDMETHOD(DeactivateAndUndo)(void)
override
206 STDMETHOD(OnPosRectChange)( LPCRECT lprcPosRect)
override
216 STDMETHOD(OnInPlaceActivateEx)( BOOL __RPC_FAR *pfNoRedraw, DWORD dwFlags)
override
222 DEBUG_MSG((
"cOleWindowless IOleInPlaceSiteEx OnInPlaceActivateEx"));
226 STDMETHOD(OnInPlaceDeactivateEx)( BOOL fNoRedraw)
override
233 STDMETHOD(RequestUIActivate)(void)
override
236 DEBUG_MSG((
"cOleWindowless IOleInPlaceSiteEx RequestUIActivate"));
243 STDMETHOD(CanWindowlessActivate)(void)
override
247 DEBUG_MSG((
"cOleWindowless IOleInPlaceSiteWindowless CanWindowlessActivate"));
251 STDMETHOD(GetCapture)(void)
override;
252 STDMETHOD(SetCapture)( BOOL fCapture)
override;
253 STDMETHOD(GetFocus)(void)
override;
254 STDMETHOD(SetFocus)( BOOL fFocus)
override;
255 STDMETHOD(GetDC)( LPCRECT pRect, DWORD grfFlags, HDC __RPC_FAR *phDC)
override;
256 STDMETHOD(ReleaseDC)( HDC hDC);
258 STDMETHOD(InvalidateRect)( LPCRECT pRect, BOOL fErase)
override
271 STDMETHOD(InvalidateRgn)( HRGN hRGN, BOOL fErase)
override
280 addRectDirty(
nullptr);
284 STDMETHOD(ScrollRect)( INT dx, INT dy, LPCRECT pRectScroll, LPCRECT pRectClip)
override
294 STDMETHOD(AdjustRect)( LPRECT prc)
override
305 STDMETHOD(OnDefWindowMessage)( UINT msg, WPARAM wParam, LPARAM lParam, LRESULT __RPC_FAR *plResult)
override;
310 STDMETHOD(OnControlInfoChanged)(void)
override
316 STDMETHOD(LockInPlaceActive)(
324 STDMETHOD(GetExtendedControl)(
325 IDispatch **ppDisp)
override
332 STDMETHOD(TransformCoords)(
333 POINTL *pPtlHimetric,
334 POINTF *pPtfContainer,
335 DWORD dwFlags)
override
344 STDMETHOD(TranslateAccelerator)(
346 DWORD grfModifiers)
override
355 BOOL fGotFocus)
override
359 DEBUG_MSG((
"cOleWindowless IOleControlSite OnFocus"));
363 STDMETHOD(ShowPropertyFrame)(void)
override
interface IServiceProvider IServiceProvider
Definition: Flash_h.h:87
#define IUNKNOWN_DISAMBIG_R(TYPE)
Definition: IUnknown.h:85
#define UNREFERENCED_PARAMETER(P)
< _WIN32 type thing. get rid of stupid warning.
Definition: SysTypes.h:299
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
#define DEBUG_MSG(_x_)
Definition: cLogMgr.h:158
Definition: IUnknown.h:34