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.
 
 
 
 
 
 

70 lines
2.5 KiB

#ifndef _FRAME_H
#define _FRAME_H
class CMDIFrame :
public IOleInPlaceFrame
{
public:
CMDIFrame();
virtual ~CMDIFrame();
// *** IUnknown methods ***
virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID, LPVOID FAR *);
virtual ULONG STDMETHODCALLTYPE AddRef();
virtual ULONG STDMETHODCALLTYPE Release();
// *** IOleWindow methods ***
virtual HRESULT STDMETHODCALLTYPE GetWindow(HWND *);
virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL);
// *** IOleInPlaceUIWindow methods ***
virtual HRESULT STDMETHODCALLTYPE GetBorder(LPRECT);
virtual HRESULT STDMETHODCALLTYPE RequestBorderSpace(LPCBORDERWIDTHS);
virtual HRESULT STDMETHODCALLTYPE SetBorderSpace(LPCBORDERWIDTHS);
virtual HRESULT STDMETHODCALLTYPE SetActiveObject(IOleInPlaceActiveObject *, LPCOLESTR);
// *** IOleInPlaceFrame methods ***
virtual HRESULT STDMETHODCALLTYPE InsertMenus(HMENU, LPOLEMENUGROUPWIDTHS);
virtual HRESULT STDMETHODCALLTYPE SetMenu(HMENU, HOLEMENU, HWND);
virtual HRESULT STDMETHODCALLTYPE RemoveMenus(HMENU);
virtual HRESULT STDMETHODCALLTYPE SetStatusText(LPCOLESTR);
virtual HRESULT STDMETHODCALLTYPE EnableModeless(BOOL);
virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(LPMSG, WORD);
static LRESULT CALLBACK ExtWndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
static BOOL CALLBACK ExtOptDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
LRESULT WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
BOOL OptDlgProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam);
HRESULT HrInit(LPSTR pszCmdLine);
HRESULT TranslateAcclerator(LPMSG);
private:
HWND m_hwnd,
m_hToolbar,
m_hStatusbar,
m_hwndClient,
m_hwndFocus;
BOOL m_fToolbar;
BOOL m_fStatusbar;
ULONG m_cRef;
IOleInPlaceActiveObject *m_pInPlaceActiveObj;
BOOL WMCreate(HWND hwnd);
void WMDestroy();
HRESULT HrWMCommand(HWND hwnd, int id, WORD wCmd);
void WMNotify(WPARAM wParam, NMHDR* pnmhdr);
void WMPaint();
void WMSize();
void SetToolbar();
void SetStatusbar();
void DoOptions();
LRESULT WMInitMenuPopup(HWND hwnd, HMENU hmenuPopup, UINT uPos);
HRESULT OpenDoc(LPSTR pszFileName);
};
typedef CMDIFrame *LPMDIFRAME;
#endif //_FRAME_H