OSDN Git Service

Change when encrypting, ask password twice.
[tombo/Tombo.git] / Src / TomboPropertyTab.h
1 #ifndef TOMBOPROPERTYTAB_H\r
2 #define TOMBOPROPERTYTAB_H\r
3 \r
4 //////////////////////////////////////////\r
5 // TOMBO general property tab\r
6 //////////////////////////////////////////\r
7 \r
8 class TomboPropertyTab : public PropertyTab {\r
9 protected:\r
10         Property *pProperty;\r
11 public:\r
12         TomboPropertyTab(Property *prop, DWORD id, DLGPROC proc, LPCTSTR pTitleName) : PropertyTab(id, pTitleName, proc), pProperty(prop) {}\r
13 };\r
14 \r
15 //////////////////////////////////////////\r
16 // TomboRoot setting tab\r
17 //////////////////////////////////////////\r
18 \r
19 class FolderTab : public TomboPropertyTab {\r
20 public:\r
21         FolderTab(Property *p) : \r
22           TomboPropertyTab(p, IDD_PROPTAB_FOLDER,(DLGPROC)DefaultPageProc, MSG_PROPTAB_FOLDER) {}\r
23         ~FolderTab() {}\r
24         void Init(HWND hDlg);\r
25         BOOL Apply(HWND hDlg);\r
26         BOOL OnCommand(HWND hDlg, WPARAM wParam, LPARAM lParam);\r
27 };\r
28 \r
29 //////////////////////////////////////////\r
30 // Password timeout setting tab\r
31 //////////////////////////////////////////\r
32 \r
33 class PassTimeoutTab : public TomboPropertyTab {\r
34 public:\r
35         PassTimeoutTab(Property *p) : \r
36           TomboPropertyTab(p, IDD_PROPTAB_PASS_TIMEOUT,(DLGPROC)DefaultPageProc, MSG_PROPTAB_PASS_TIMEOUT) {}\r
37         ~PassTimeoutTab() {}\r
38         void Init(HWND hDlg);\r
39         BOOL Apply(HWND hDlg);\r
40 };\r
41 \r
42 //////////////////////////////////////////\r
43 // Font setting tab\r
44 //////////////////////////////////////////\r
45 \r
46 class FontTab : public TomboPropertyTab {\r
47 public:\r
48         FontTab(Property *p) :\r
49           TomboPropertyTab(p, IDD_PROPTAB_FONT, (DLGPROC)DefaultPageProc, MSG_PROPTAB_FONT) {}\r
50         ~FontTab() {}\r
51         void Init(HWND hDlg);\r
52         BOOL Apply(HWND hDlg);\r
53         BOOL OnCommand(HWND hDlg, WPARAM wParam, LPARAM lParam);\r
54 };\r
55 \r
56 //////////////////////////////////////////\r
57 // Date format\r
58 //////////////////////////////////////////\r
59 \r
60 class DateFormatTab : public TomboPropertyTab {\r
61 public:\r
62         DateFormatTab(Property *p) :\r
63           TomboPropertyTab(p, IDD_PROPTAB_INSDATE, (DLGPROC)DefaultPageProc, MSG_PROPTAB_DATE) {}\r
64         ~DateFormatTab() {}\r
65         void Init(HWND hDlg);\r
66         BOOL Apply(HWND hDlg);\r
67 };\r
68 \r
69 //////////////////////////////////////////\r
70 // Caret setting tab\r
71 //////////////////////////////////////////\r
72 \r
73 class KeepCaretTab : public TomboPropertyTab {\r
74 public:\r
75         KeepCaretTab(Property *p) :\r
76           TomboPropertyTab(p, IDD_PROPTAB_KEEPCARET, (DLGPROC)DefaultPageProc, MSG_PROPTAB_KEEPCARET) {}\r
77         ~KeepCaretTab() {}\r
78         void Init(HWND hDlg);\r
79         BOOL Apply(HWND hDlg);\r
80 };\r
81 \r
82 //////////////////////////////////////////\r
83 // Action buttons\r
84 //////////////////////////////////////////\r
85 \r
86 #if defined(PLATFORM_PKTPC) || defined(PLATFORM_WM5)\r
87 class AppButtonTab : public TomboPropertyTab {\r
88 public:\r
89         AppButtonTab(Property *p) :\r
90           TomboPropertyTab(p, IDD_PROPTAB_APPBUTTON, (DLGPROC)DefaultPageProc, MSG_PROPTAB_APPBUTTON) {}\r
91         ~AppButtonTab() {}\r
92         void Init(HWND hDlg);\r
93         BOOL Apply(HWND hDlg);\r
94 };\r
95 #endif\r
96 \r
97 //////////////////////////////////////////\r
98 // SIP tab\r
99 //////////////////////////////////////////\r
100 \r
101 #if defined(PLATFORM_PKTPC) || defined(PLATFORM_WM5)\r
102 \r
103 class SipTab : public TomboPropertyTab {\r
104 public:\r
105         SipTab(Property *p) :\r
106           TomboPropertyTab(p, IDD_PROPTAB_SIP, (DLGPROC)DefaultPageProc, MSG_PROPTAB_SIP) {}\r
107   ~SipTab() {}\r
108 \r
109   void Init(HWND hDlg);\r
110   BOOL Apply(HWND hDlg);\r
111 };\r
112 #endif\r
113 \r
114 //////////////////////////////////////////\r
115 // Codepage tab\r
116 //////////////////////////////////////////\r
117 \r
118 class CodepageTab : public TomboPropertyTab {\r
119 public:\r
120         CodepageTab(Property *p) :\r
121           TomboPropertyTab(p, IDD_PROPTAB_CODEPAGE, (DLGPROC)DefaultPageProc, MSG_PROPTAB_CODEPAGE) {}\r
122         ~CodepageTab() {}\r
123         void Init(HWND hDlg);\r
124         BOOL Apply(HWND hDlg);\r
125 };\r
126 \r
127 //////////////////////////////////////////\r
128 // DefaultNote tab\r
129 //////////////////////////////////////////\r
130 \r
131 class DefaultNoteTab : public TomboPropertyTab {\r
132         LPCTSTR pCurrentPath;\r
133 public:\r
134         DefaultNoteTab(Property *p, LPCTSTR pPath) :\r
135           TomboPropertyTab(p, IDD_PROPTAB_DEFNOTE, (DLGPROC)DefaultPageProc, MSG_PROPTAB_DEFNOTE), pCurrentPath(pPath) {}\r
136         ~DefaultNoteTab() {}\r
137         void Init(HWND hDlg);\r
138         BOOL Apply(HWND hDlg);\r
139         BOOL OnCommand(HWND hDlg, WPARAM wParam, LPARAM lParam);\r
140 \r
141 protected:\r
142         void SetBlank(HWND hDlg);\r
143         void SetCurrent(HWND hDlg);\r
144 };\r
145 \r
146 //////////////////////////////////////////\r
147 // External application tab\r
148 //////////////////////////////////////////\r
149 \r
150 #if !defined(PLATFORM_PSPC)\r
151 class ExtAppTab : public TomboPropertyTab {\r
152         DWORD nUseAssoc;\r
153         TCHAR aExtApp1[MAX_PATH];\r
154         TCHAR aExtApp2[MAX_PATH];\r
155 protected:\r
156         void Choose1(HWND hDlg);\r
157         void Choose2(HWND hDlg);\r
158 \r
159 public:\r
160         ExtAppTab(Property *p) :\r
161           TomboPropertyTab(p, IDD_PROPTAB_EXTAPP, (DLGPROC)DefaultPageProc, MSG_PROPTAB_EXTAPP) {}\r
162         ~ExtAppTab() {}\r
163 \r
164         void Init(HWND hDlg);\r
165         BOOL Apply(HWND hDlg);\r
166         BOOL OnCommand(HWND hDlg, WPARAM wParam, LPARAM lParam);\r
167 };\r
168 #endif\r
169 \r
170 // ChooseColor dialog\r
171 class ColorTab : public TomboPropertyTab {\r
172 protected:\r
173         static LRESULT APIENTRY CustomPageProc(HWND hDlg, UINT nMessage, WPARAM wParam, LPARAM lParam);\r
174 \r
175         void Choose(HWND hDlg, DWORD nCtlId, HBRUSH* pBrush, COLORREF *pColor);\r
176 \r
177 public:\r
178         COLORREF cFg, cBg, cEol, cLEol, cTab, cEof;\r
179         HBRUSH hFgBrush, hBgBrush, hEolBrush, hLEolBrush, hTabBrush, hEofBrush;\r
180 \r
181         ColorTab(Property *p) :\r
182           TomboPropertyTab(p, IDD_PROPTAB_COLOR, (DLGPROC)CustomPageProc, MSG_PROPTAB_COLOR) {}\r
183         ~ColorTab();\r
184 \r
185         void Init(HWND hDlg);\r
186         BOOL Apply(HWND hDlg);\r
187         BOOL OnCommand(HWND hDlg, WPARAM wParam, LPARAM lParam);\r
188 };\r
189 \r
190 #endif