1*f6dc9357SAndroid Build Coastguard Worker // Windows/Control/Window2.h 2*f6dc9357SAndroid Build Coastguard Worker 3*f6dc9357SAndroid Build Coastguard Worker #ifndef ZIP7_INC_WINDOWS_CONTROL_WINDOW2_H 4*f6dc9357SAndroid Build Coastguard Worker #define ZIP7_INC_WINDOWS_CONTROL_WINDOW2_H 5*f6dc9357SAndroid Build Coastguard Worker 6*f6dc9357SAndroid Build Coastguard Worker #include "../Window.h" 7*f6dc9357SAndroid Build Coastguard Worker 8*f6dc9357SAndroid Build Coastguard Worker namespace NWindows { 9*f6dc9357SAndroid Build Coastguard Worker namespace NControl { 10*f6dc9357SAndroid Build Coastguard Worker 11*f6dc9357SAndroid Build Coastguard Worker class CWindow2: public CWindow 12*f6dc9357SAndroid Build Coastguard Worker { 13*f6dc9357SAndroid Build Coastguard Worker // Z7_CLASS_NO_COPY(CWindow2) 14*f6dc9357SAndroid Build Coastguard Worker 15*f6dc9357SAndroid Build Coastguard Worker LRESULT DefProc(UINT message, WPARAM wParam, LPARAM lParam); 16*f6dc9357SAndroid Build Coastguard Worker public: CWindow(newWindow)17*f6dc9357SAndroid Build Coastguard Worker CWindow2(HWND newWindow = NULL): CWindow(newWindow) {} ~CWindow2()18*f6dc9357SAndroid Build Coastguard Worker virtual ~CWindow2() {} 19*f6dc9357SAndroid Build Coastguard Worker 20*f6dc9357SAndroid Build Coastguard Worker bool CreateEx(DWORD exStyle, LPCTSTR className, LPCTSTR windowName, 21*f6dc9357SAndroid Build Coastguard Worker DWORD style, int x, int y, int width, int height, 22*f6dc9357SAndroid Build Coastguard Worker HWND parentWindow, HMENU idOrHMenu, HINSTANCE instance); 23*f6dc9357SAndroid Build Coastguard Worker 24*f6dc9357SAndroid Build Coastguard Worker #ifndef _UNICODE 25*f6dc9357SAndroid Build Coastguard Worker bool CreateEx(DWORD exStyle, LPCWSTR className, LPCWSTR windowName, 26*f6dc9357SAndroid Build Coastguard Worker DWORD style, int x, int y, int width, int height, 27*f6dc9357SAndroid Build Coastguard Worker HWND parentWindow, HMENU idOrHMenu, HINSTANCE instance); 28*f6dc9357SAndroid Build Coastguard Worker #endif 29*f6dc9357SAndroid Build Coastguard Worker 30*f6dc9357SAndroid Build Coastguard Worker virtual LRESULT OnMessage(UINT message, WPARAM wParam, LPARAM lParam); OnCreate(CREATESTRUCT *)31*f6dc9357SAndroid Build Coastguard Worker virtual bool OnCreate(CREATESTRUCT * /* createStruct */) { return true; } 32*f6dc9357SAndroid Build Coastguard Worker // virtual LRESULT OnCommand(WPARAM wParam, LPARAM lParam); 33*f6dc9357SAndroid Build Coastguard Worker // bool OnCommand2(WPARAM wParam, LPARAM lParam, LRESULT &result); 34*f6dc9357SAndroid Build Coastguard Worker virtual bool OnCommand(unsigned code, unsigned itemID, LPARAM lParam, LRESULT &result); OnSize(WPARAM,int,int)35*f6dc9357SAndroid Build Coastguard Worker virtual bool OnSize(WPARAM /* wParam */, int /* xSize */, int /* ySize */) { return false; } OnNotify(UINT,LPNMHDR,LRESULT &)36*f6dc9357SAndroid Build Coastguard Worker virtual bool OnNotify(UINT /* controlID */, LPNMHDR /* lParam */, LRESULT & /* result */) { return false; } OnDestroy()37*f6dc9357SAndroid Build Coastguard Worker virtual void OnDestroy() { PostQuitMessage(0); } OnClose()38*f6dc9357SAndroid Build Coastguard Worker virtual void OnClose() { Destroy(); } 39*f6dc9357SAndroid Build Coastguard Worker /* 40*f6dc9357SAndroid Build Coastguard Worker virtual LRESULT OnHelp(LPHELPINFO helpInfo) { OnHelp(); } 41*f6dc9357SAndroid Build Coastguard Worker virtual LRESULT OnHelp() {}; 42*f6dc9357SAndroid Build Coastguard Worker virtual bool OnButtonClicked(unsigned buttonID, HWND buttonHWND); 43*f6dc9357SAndroid Build Coastguard Worker virtual void OnOK() {}; 44*f6dc9357SAndroid Build Coastguard Worker virtual void OnCancel() {}; 45*f6dc9357SAndroid Build Coastguard Worker */ 46*f6dc9357SAndroid Build Coastguard Worker SetMsgResult(LONG_PTR newLongPtr)47*f6dc9357SAndroid Build Coastguard Worker LONG_PTR SetMsgResult(LONG_PTR newLongPtr) { return SetLongPtr(DWLP_MSGRESULT, newLongPtr); } GetMsgResult()48*f6dc9357SAndroid Build Coastguard Worker LONG_PTR GetMsgResult() const { return GetLongPtr(DWLP_MSGRESULT); } 49*f6dc9357SAndroid Build Coastguard Worker }; 50*f6dc9357SAndroid Build Coastguard Worker 51*f6dc9357SAndroid Build Coastguard Worker }} 52*f6dc9357SAndroid Build Coastguard Worker 53*f6dc9357SAndroid Build Coastguard Worker #endif 54