3 #include "../Common/AppSettingsHeader.h"
4 #include "../DasherCore/SettingsStore.h"
12 //#include "WinCommon.h"
15 // Define first int value of the first element of each type.
16 // Useful for offsetting into specific arrays,
17 // since each setting is a unique int, but all 3 arrays start at 0
18 #define FIRST_APP_BP END_OF_SPS
19 #define FIRST_APP_LP END_OF_APP_BPS
20 #define FIRST_APP_SP END_OF_APP_LPS
22 #define NUM_OF_APP_BPS (END_OF_APP_BPS - END_OF_SPS)
23 #define NUM_OF_APP_LPS (END_OF_APP_LPS - END_OF_APP_BPS)
24 #define NUM_OF_APP_SPS (END_OF_APP_SPS - END_OF_APP_LPS)
33 // The constructor takes ownership of the settings_store.
34 CAppSettings(Dasher::CDasher
*pDasher
, HWND hWnd
, Dasher::CSettingsStore
* settings_store
);
38 /// The following all just wrap corresponding methods in CDasher,
39 /// augmented for dealing with platform-specific parameters (APP_*),
40 /// allowing the AppSettings to be used as a central point-of-access
41 /// to all the settings data necessary for the GUI.
43 bool GetBoolParameter(int iParameter
);
44 void SetBoolParameter(int iParameter
, bool bValue
);
45 long GetLongParameter(int iParameter
);
46 void SetLongParameter(int iParameter
, long iValue
);
47 std::string
GetStringParameter(int iParameter
);
48 void SetStringParameter(int iParameter
, const std::string
&strValue
);
49 void ResetParamater(int iParameter
);
50 void GetPermittedValues(int iParameter
, std::vector
<std::string
> &vList
);
52 void SetHwnd(HWND hWnd
) {
57 void SetDasher(Dasher::CDasher
*pDasher
) {
63 Dasher::CDasher
*m_pDasher
;
66 std::unique_ptr
<Dasher::CSettingsStore
> settings_store_
;