| |
4 |
4 |
|
| |
5 |
5 |
|
| |
6 |
6 |
|
| |
7 |
7 |
|
| |
8 |
8 |
|
| |
9 |
9 |
|
| |
10 |
10 |
|
| |
11 |
11 |
|
| |
12 |
12 |
|
| |
13 |
13 |
|
| |
14 |
14 |
|
| |
15 |
15 |
|
| |
16 |
16 |
|
| |
17 |
17 |
|
| |
18 |
18 |
|
| |
19 |
19 |
#ifndef __PROPERTYTYPES_H__ |
| |
20 |
20 |
#define __PROPERTYTYPES_H__ |
| |
21 |
21 |
|
| |
22 |
22 |
#pragma once |
| |
23 |
23 |
|
| |
24 |
|
#include "TTaskConfiguration.h" |
| |
|
24 |
#include "../libchcore/TTaskConfiguration.h" |
| |
25 |
25 |
|
| |
26 |
26 |
namespace chcore { class TConfig; } |
| |
27 |
27 |
|
| |
28 |
28 |
|
| |
29 |
29 |
enum ECHProperties |
| |
30 |
30 |
{ |
| |
31 |
31 |
PP_PCLIPBOARDMONITORING = 0, |
| |
32 |
32 |
PP_PMONITORSCANINTERVAL, |
| |
33 |
33 |
PP_PRELOADAFTERRESTART, |
| |
34 |
34 |
PP_PCHECK_FOR_UPDATES_FREQUENCY, |
| |
35 |
35 |
PP_PUPDATE_CHECK_FOR_BETA, |
| |
36 |
36 |
PP_PSHUTDOWNAFTREFINISHED, |
| |
37 |
37 |
PP_PTIMEBEFORESHUTDOWN, |
| |
38 |
38 |
PP_PFORCESHUTDOWN, |
| |
39 |
39 |
PP_PAUTOSAVEINTERVAL, |
| |
40 |
40 |
PP_PPROCESSPRIORITYCLASS, |
| |
41 |
41 |
PP_PLANGUAGE, |
| |
42 |
42 |
|
| |
43 |
43 |
PP_STATUSREFRESHINTERVAL, |
| |
44 |
44 |
PP_STATUSSHOWDETAILS, |
|
| |
131 |
131 |
template<> struct PropData<enum_id>\ |
| |
132 |
132 |
{\ |
| |
133 |
133 |
typedef val_type value_type;\ |
| |
134 |
134 |
static value_type GetDefaultValue() { return def_value; }\ |
| |
135 |
135 |
static const wchar_t* GetPropertyName() { return val_name; }\ |
| |
136 |
136 |
static const wchar_t* GetPropertyNamePrefix() { return _T(""); }\ |
| |
137 |
137 |
} |
| |
138 |
138 |
|
| |
139 |
139 |
#define PROPERTY_MINMAX(enum_id, val_type, val_name, def_value, min_val, max_val)\ |
| |
140 |
140 |
template<> struct PropData<enum_id>\ |
| |
141 |
141 |
{\ |
| |
142 |
142 |
typedef val_type value_type;\ |
| |
143 |
143 |
static value_type GetDefaultValue() { return def_value; }\ |
| |
144 |
144 |
static const wchar_t* GetPropertyName() { return val_name; }\ |
| |
145 |
145 |
static const wchar_t* GetPropertyNamePrefix() { return _T(""); }\ |
| |
146 |
146 |
} |
| |
147 |
147 |
|
| |
148 |
148 |
#define ADAPT_TASK_PROPERTY(enum_id, task_enum_id)\ |
| |
149 |
149 |
template<> struct PropData<enum_id>\ |
| |
150 |
150 |
{\ |
| |
151 |
|
typedef TaskPropData<task_enum_id>::value_type value_type;\ |
| |
152 |
|
static value_type GetDefaultValue() { return TaskPropData<task_enum_id>::GetDefaultValue(); }\ |
| |
153 |
|
static const wchar_t* GetPropertyName() { return TaskPropData<task_enum_id>::GetPropertyName(); }\ |
| |
|
151 |
typedef chcore::TaskPropData<task_enum_id>::value_type value_type;\ |
| |
|
152 |
static value_type GetDefaultValue() { return chcore::TaskPropData<task_enum_id>::GetDefaultValue(); }\ |
| |
|
153 |
static const wchar_t* GetPropertyName() { return chcore::TaskPropData<task_enum_id>::GetPropertyName(); }\ |
| |
154 |
154 |
static const wchar_t* GetPropertyNamePrefix() { return BRANCH_TASK_SETTINGS _T("."); }\ |
| |
155 |
155 |
} |
| |
156 |
156 |
|
| |
157 |
157 |
const long long Hour = 3600UL*1000UL; |
| |
158 |
158 |
const long long Minute = 60UL*1000UL; |
| |
159 |
159 |
const long long Second = 1000UL; |
| |
160 |
160 |
|
| |
161 |
161 |
typedef std::vector<CString> CStringVector; |
| |
162 |
162 |
|
| |
163 |
163 |
|
| |
164 |
164 |
|
| |
165 |
165 |
PROPERTY(PP_PCLIPBOARDMONITORING, bool, _T("CHConfig.General.Program.EnableClipboardMonitoring"), false); |
| |
166 |
166 |
PROPERTY_MINMAX(PP_PMONITORSCANINTERVAL, unsigned int, _T("CHConfig.General.Program.ClipboardMonitorScanInterval"), 1000, 0, 3600UL*1000UL); |
| |
167 |
167 |
PROPERTY(PP_PRELOADAFTERRESTART, bool, _T("CHConfig.General.Program.RunWithSystem"), false); |
| |
168 |
168 |
|
| |
169 |
169 |
PROPERTY_MINMAX(PP_PCHECK_FOR_UPDATES_FREQUENCY, unsigned int, _T("CHConfig.General.Program.Updates.Frequency"), eFreq_Weekly, eFreq_Never, eFreq_Max - 1); |
| |
170 |
170 |
PROPERTY(PP_PUPDATE_CHECK_FOR_BETA, bool, _T("CHConfig.General.Program.Updates.CheckForBetaVersions"), true); |
| |
171 |
171 |
|
| |
172 |
172 |
PROPERTY(PP_PPROCESSPRIORITYCLASS, int, _T("CHConfig.General.Program.ProcessPriority"), NORMAL_PRIORITY_CLASS); |
| |
173 |
173 |
PROPERTY(PP_PLANGUAGE, CString, _T("CHConfig.General.Program.Language"), _T("<PROGRAM>\\Langs\\English.lng")); |
|
| |
194 |
194 |
PROPERTY(PP_MVSHOWSINGLETASKS, bool, _T("CHConfig.GUI.MiniView.ShowSingleTasks"), true); |
| |
195 |
195 |
PROPERTY_MINMAX(PP_MVREFRESHINTERVAL, unsigned int, _T("CHConfig.GUI.MiniView.RefreshInterval"), 200, 0, 24*Hour); |
| |
196 |
196 |
PROPERTY(PP_MVAUTOSHOWWHENRUN, bool, _T("CHConfig.GUI.MiniView.AutoShowOnStartup"), true); |
| |
197 |
197 |
PROPERTY(PP_MVAUTOHIDEWHENEMPTY, bool, _T("CHConfig.GUI.MiniView.AutohideWhenEmpty"), true); |
| |
198 |
198 |
PROPERTY(PP_MVUSESMOOTHPROGRESS, bool, _T("CHConfig.GUI.MiniView.UseSmoothProgress"), true); |
| |
199 |
199 |
|
| |
200 |
200 |
|
| |
201 |
201 |
PROPERTY_MINMAX(PP_PAUTOSAVEINTERVAL, unsigned int, _T("CHConfig.Core.AutosaveInterval"), 30*Second, 0, 24*Hour); |
| |
202 |
202 |
|
| |
203 |
203 |
PROPERTY(PP_PSHUTDOWNAFTREFINISHED, bool, _T("CHConfig.Core.Shutdown.ShutdownSystemAfterFinished"), false); |
| |
204 |
204 |
PROPERTY_MINMAX(PP_PTIMEBEFORESHUTDOWN, int, _T("CHConfig.Core.Shutdown.TimeBeforeShutdown"), 10000, 0, 24*Hour); |
| |
205 |
205 |
PROPERTY(PP_PFORCESHUTDOWN, bool, _T("CHConfig.Core.Shutdown.ForceShutdown"), false); |
| |
206 |
206 |
|
| |
207 |
207 |
PROPERTY(PP_SNDPLAYSOUNDS, bool, _T("CHConfig.Core.Notifications.Sounds.Enable"), true); |
| |
208 |
208 |
PROPERTY(PP_SNDERRORSOUNDPATH, CString, _T("CHConfig.Core.Notifications.Sounds.ErrorSoundPath"), _T("<WINDOWS>\\media\\chord.wav")); |
| |
209 |
209 |
PROPERTY(PP_SNDFINISHEDSOUNDPATH, CString, _T("CHConfig.Core.Notifications.Sounds.FinishedSoundPath"), _T("<WINDOWS>\\media\\ding.wav")); |
| |
210 |
210 |
|
| |
211 |
211 |
PROPERTY(PP_CMLIMITMAXOPERATIONS, unsigned int, _T("CHConfig.Core.Operation.LimitMaxOperations"), 1); |
| |
212 |
212 |
|
| |
213 |
213 |
|
| |
214 |
|
ADAPT_TASK_PROPERTY(PP_BFUSEONLYDEFAULT, eTO_UseOnlyDefaultBuffer); |
| |
215 |
|
ADAPT_TASK_PROPERTY(PP_BFDEFAULT, eTO_DefaultBufferSize); |
| |
216 |
|
ADAPT_TASK_PROPERTY(PP_BFONEDISK, eTO_OneDiskBufferSize); |
| |
217 |
|
ADAPT_TASK_PROPERTY(PP_BFTWODISKS, eTO_TwoDisksBufferSize); |
| |
218 |
|
ADAPT_TASK_PROPERTY(PP_BFCD, eTO_CDBufferSize); |
| |
219 |
|
ADAPT_TASK_PROPERTY(PP_BFLAN, eTO_LANBufferSize); |
| |
220 |
|
ADAPT_TASK_PROPERTY(PP_BFUSENOBUFFERING, eTO_DisableBuffering); |
| |
221 |
|
ADAPT_TASK_PROPERTY(PP_BFBOUNDARYLIMIT, eTO_DisableBufferingMinSize); |
| |
|
214 |
ADAPT_TASK_PROPERTY(PP_BFUSEONLYDEFAULT, chcore::eTO_UseOnlyDefaultBuffer); |
| |
|
215 |
ADAPT_TASK_PROPERTY(PP_BFDEFAULT, chcore::eTO_DefaultBufferSize); |
| |
|
216 |
ADAPT_TASK_PROPERTY(PP_BFONEDISK, chcore::eTO_OneDiskBufferSize); |
| |
|
217 |
ADAPT_TASK_PROPERTY(PP_BFTWODISKS, chcore::eTO_TwoDisksBufferSize); |
| |
|
218 |
ADAPT_TASK_PROPERTY(PP_BFCD, chcore::eTO_CDBufferSize); |
| |
|
219 |
ADAPT_TASK_PROPERTY(PP_BFLAN, chcore::eTO_LANBufferSize); |
| |
|
220 |
ADAPT_TASK_PROPERTY(PP_BFUSENOBUFFERING, chcore::eTO_DisableBuffering); |
| |
|
221 |
ADAPT_TASK_PROPERTY(PP_BFBOUNDARYLIMIT, chcore::eTO_DisableBufferingMinSize); |
| |
222 |
222 |
|
| |
223 |
|
ADAPT_TASK_PROPERTY(PP_CMSETDESTATTRIBUTES, eTO_SetDestinationAttributes); |
| |
224 |
|
ADAPT_TASK_PROPERTY(PP_CMSETDESTDATE, eTO_SetDestinationDateTime); |
| |
225 |
|
ADAPT_TASK_PROPERTY(PP_CMPROTECTROFILES, eTO_ProtectReadOnlyFiles); |
| |
226 |
|
ADAPT_TASK_PROPERTY(PP_CMREADSIZEBEFOREBLOCKING, eTO_ScanDirectoriesBeforeBlocking); |
| |
227 |
|
ADAPT_TASK_PROPERTY(PP_CMDEFAULTPRIORITY, eTO_ThreadPriority); |
| |
228 |
|
ADAPT_TASK_PROPERTY(PP_CMDISABLEPRIORITYBOOST, eTO_DisablePriorityBoost); |
| |
229 |
|
ADAPT_TASK_PROPERTY(PP_CMDELETEAFTERFINISHED, eTO_DeleteInSeparateSubTask); |
| |
|
223 |
ADAPT_TASK_PROPERTY(PP_CMSETDESTATTRIBUTES, chcore::eTO_SetDestinationAttributes); |
| |
|
224 |
ADAPT_TASK_PROPERTY(PP_CMSETDESTDATE, chcore::eTO_SetDestinationDateTime); |
| |
|
225 |
ADAPT_TASK_PROPERTY(PP_CMPROTECTROFILES, chcore::eTO_ProtectReadOnlyFiles); |
| |
|
226 |
ADAPT_TASK_PROPERTY(PP_CMREADSIZEBEFOREBLOCKING, chcore::eTO_ScanDirectoriesBeforeBlocking); |
| |
|
227 |
ADAPT_TASK_PROPERTY(PP_CMDEFAULTPRIORITY, chcore::eTO_ThreadPriority); |
| |
|
228 |
ADAPT_TASK_PROPERTY(PP_CMDISABLEPRIORITYBOOST, chcore::eTO_DisablePriorityBoost); |
| |
|
229 |
ADAPT_TASK_PROPERTY(PP_CMDELETEAFTERFINISHED, chcore::eTO_DeleteInSeparateSubTask); |
| |
230 |
230 |
|
| |
231 |
231 |
|
| |
232 |
232 |
PROPERTY(PP_SHSHOWCOPY, bool, _T("CHConfig.ShellExtension.ShowCommands.Copy"), true); |
| |
233 |
233 |
PROPERTY(PP_SHSHOWMOVE, bool, _T("CHConfig.ShellExtension.ShowCommands.Move"), true); |
| |
234 |
234 |
PROPERTY(PP_SHSHOWCOPYMOVE, bool, _T("CHConfig.ShellExtension.ShowCommands.CopyMoveSpecial"), true); |
| |
235 |
235 |
PROPERTY(PP_SHSHOWPASTE, bool, _T("CHConfig.ShellExtension.ShowCommands.Paste"), true); |
| |
236 |
236 |
PROPERTY(PP_SHSHOWPASTESPECIAL, bool, _T("CHConfig.ShellExtension.ShowCommands.PasteSpecial"), true); |
| |
237 |
237 |
PROPERTY(PP_SHSHOWCOPYTO, bool, _T("CHConfig.ShellExtension.ShowCommands.CopyTo"), true); |
| |
238 |
238 |
PROPERTY(PP_SHSHOWMOVETO, bool, _T("CHConfig.ShellExtension.ShowCommands.MoveTo"), true); |
| |
239 |
239 |
PROPERTY(PP_SHSHOWCOPYMOVETO, bool, _T("CHConfig.ShellExtension.ShowCommands.CopyToMoveToSpecial"), true); |
| |
240 |
240 |
PROPERTY(PP_SHSHOWFREESPACE, bool, _T("CHConfig.ShellExtension.ShowFreeSpaceAlongShortcuts"), true); |
| |
241 |
241 |
PROPERTY(PP_SHSHOWSHELLICONS, bool, _T("CHConfig.ShellExtension.ShowShortcutsShellIcons"), false); |
| |
242 |
242 |
PROPERTY(PP_SHINTERCEPTDRAGDROP, bool, _T("CHConfig.ShellExtension.InterceptDragDrop"), true); |
| |
243 |
243 |
PROPERTY(PP_SHINTERCEPTKEYACTIONS, bool, _T("CHConfig.ShellExtension.InterceptKeyboardActions"), true); |
| |
244 |
244 |
PROPERTY(PP_SHINTERCEPTCTXMENUACTIONS, bool, _T("CHConfig.ShellExtension.InterceptDefaultContextMenuActions"), false); |
| |
245 |
245 |
|
| |
246 |
246 |
|
| |
247 |
247 |
PROPERTY_MINMAX(PP_LAST_UPDATE_TIMESTAMP, long long, _T("CHConfig.RuntimeState.LastCheckedForUpdates"), 0, 0, LLONG_MAX); |
| |
248 |
248 |
|
| |
249 |
249 |
|