xref: /aosp_15_r20/external/lzma/CPP/7zip/UI/FileManager/MenuPage.h (revision f6dc9357d832569d4d1f5d24eacdb3935a1ae8e6)
1 // MenuPage.h
2 
3 #ifndef ZIP7_INC_MENU_PAGE_H
4 #define ZIP7_INC_MENU_PAGE_H
5 
6 #include "../../../Windows/Control/PropertyPage.h"
7 #include "../../../Windows/Control/ComboBox.h"
8 #include "../../../Windows/Control/ListView.h"
9 
10 struct CShellDll
11 {
12   FString Path;
13   bool wasChanged;
14   bool prevValue;
15   unsigned ctrl;
16   UInt32 wow;
17 
CShellDllCShellDll18   CShellDll(): wasChanged (false), prevValue(false), ctrl(0), wow(0) {}
19 };
20 
21 class CMenuPage: public NWindows::NControl::CPropertyPage
22 {
23   bool _initMode;
24 
25   bool _cascaded_Changed;
26   bool _menuIcons_Changed;
27   bool _elimDup_Changed;
28   bool _writeZone_Changed;
29   bool _flags_Changed;
30 
Clear_MenuChanged()31   void Clear_MenuChanged()
32   {
33     _cascaded_Changed = false;
34     _menuIcons_Changed = false;
35     _elimDup_Changed = false;
36     _writeZone_Changed = false;
37     _flags_Changed = false;
38   }
39 
40   #ifndef UNDER_CE
41   CShellDll _dlls[2];
42   #endif
43 
44   NWindows::NControl::CListView _listView;
45   NWindows::NControl::CComboBox _zoneCombo;
46 
47   virtual bool OnInit() Z7_override;
48   virtual void OnNotifyHelp() Z7_override;
49   virtual bool OnNotify(UINT controlID, LPNMHDR lParam) Z7_override;
50   virtual LONG OnApply() Z7_override;
51   virtual bool OnButtonClicked(unsigned buttonID, HWND buttonHWND) Z7_override;
52   virtual bool OnCommand(unsigned code, unsigned itemID, LPARAM param) Z7_override;
53 
54   bool OnItemChanged(const NMLISTVIEW* info);
55 };
56 
57 #endif
58