xref: /aosp_15_r20/external/lzma/CPP/Windows/Control/Window2.h (revision f6dc9357d832569d4d1f5d24eacdb3935a1ae8e6)
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