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.
74 lines
2.5 KiB
74 lines
2.5 KiB
#ifndef _BODYBAR_H
|
|
#define _BODYBAR_H
|
|
|
|
#include "mehost.h"
|
|
|
|
// for IBodyOptions
|
|
#include "ibodyopt.h"
|
|
|
|
class CBodyBar :
|
|
public IDockingWindow,
|
|
public IObjectWithSite,
|
|
public IInputObject
|
|
{
|
|
public:
|
|
CBodyBar();
|
|
virtual ~CBodyBar();
|
|
|
|
// IUnknown
|
|
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, LPVOID FAR *);
|
|
virtual ULONG STDMETHODCALLTYPE AddRef();
|
|
virtual ULONG STDMETHODCALLTYPE Release();
|
|
|
|
// IOleWindow methods
|
|
virtual STDMETHODIMP GetWindow(HWND *phwnd);
|
|
virtual STDMETHODIMP ContextSensitiveHelp(BOOL fEnterMode);
|
|
|
|
// IDockingWindow
|
|
virtual STDMETHODIMP ShowDW(BOOL fShow);
|
|
virtual STDMETHODIMP CloseDW(DWORD dwReserved);
|
|
virtual STDMETHODIMP ResizeBorderDW(LPCRECT prcBorder,
|
|
IUnknown* punkToolbarSite,
|
|
BOOL fReserved);
|
|
|
|
// IObjectWithSite
|
|
virtual STDMETHODIMP SetSite(IUnknown* punkSite);
|
|
virtual STDMETHODIMP GetSite(REFIID riid, LPVOID * ppvSite);
|
|
|
|
// IInputObject
|
|
virtual STDMETHODIMP UIActivateIO(BOOL fActivate, LPMSG lpMsg);
|
|
virtual STDMETHODIMP HasFocusIO();
|
|
virtual STDMETHODIMP TranslateAcceleratorIO(LPMSG lpmsg);
|
|
|
|
// overrides of CBody
|
|
virtual HRESULT STDMETHODCALLTYPE OnUIActivate();
|
|
virtual HRESULT STDMETHODCALLTYPE GetDropTarget(IDropTarget * pDropTarget, IDropTarget ** ppDropTarget);
|
|
|
|
HRESULT HrInit(LPBOOL pfShow);
|
|
|
|
int GetBodyBar_Top() { return( (int) HIWORD(m_dwBodyBarPos));}
|
|
int GetBodyBar_Bottom() { return( (int) LOWORD(m_dwBodyBarPos));}
|
|
|
|
protected:
|
|
LRESULT BodyBarWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
|
static LRESULT CALLBACK ExtBodyBarWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
|
|
BOOL OnCreate(HWND hwnd, LPCREATESTRUCT lpCreateStruct);
|
|
void OnSize(HWND hwnd, UINT state, int cxClient, int cyClient);
|
|
void OnLButtonDown(HWND hwnd, BOOL fDoubleClick, int x, int y, UINT keyFlags);
|
|
void OnMouseMove(HWND hwnd, int x, int y, UINT keyFlags);
|
|
void OnLButtonUp(HWND hwnd, int x, int y, UINT keyFlags);
|
|
|
|
private:
|
|
IDockingWindowSite *m_ptbSite;
|
|
HWND m_hwnd;
|
|
HWND m_hwndParent;
|
|
int m_cSize;
|
|
DWORD m_dwBodyBarPos;
|
|
LPTSTR m_pszURL;
|
|
BOOL m_fFirstPos;
|
|
BOOL m_fDragging;
|
|
CMimeEditDocHost *m_pMehost;
|
|
ULONG m_cRef;
|
|
};
|
|
|
|
#endif // _BODYBAR_H
|