-
Notifications
You must be signed in to change notification settings - Fork 0
/
mainPrefs.cpp
144 lines (129 loc) · 3.66 KB
/
mainPrefs.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#include <windows.h>
#include <fstream>
#include <tchar.h>
#include <string>
#include "mainPrefs.h"
#include "appconst.h"
MAINPREFS settings;
unsigned int overrideValArray[mainPrefsMax];
std::string overrideTxtArray[mainPrefsMax] =
{
"bConfirmExit=",
"\nbShowCompleteFilePathInTitle=",
"\nbFirstLaunch=",
"\nbSplashScreen=",
"\nbToolbarActive=",
"\nbToolbarText=",
"\nbDetectLinks=",
"\nbStartFullScr=",
"\nbRememberLastSizeByUser=",
"\niUsrLastWidth=",
"\niUsrLastHeight=",
"\niUsrLastXPos=",
"\niUsrLastYPos=",
"\nbOverrideSettings="
};
bool binary::chkIfConfigExists(void)
{
bool fileGood = true;
std::ifstream configFile(szConfigPath);
if (!configFile)
{
MessageBox
(
NULL,
_T("Configuration file is missing\nIt will be recreated"),
_T("Error"),
MB_ICONERROR | MB_OK
);
fileGood = false;
}
return fileGood;
}
void binary::loadMainPrefs(void)
{
//load from binary into struct
std::ifstream configFile;
configFile.std::ifstream::open(szConfigPath, std::ios::binary
| std::ios::in);
configFile.std::ifstream::read((char*)&settings, sizeof(MAINPREFS));
configFile.std::ifstream::close();
}
void binary::saveMainPrefs(void)
{
//save to binary from struct
std::ofstream configFile;
configFile.std::ofstream::open(szConfigPath,std::ios::binary|std::ios::out);
configFile.std::ofstream::write((char*)&settings,sizeof(MAINPREFS));
configFile.std::ofstream::close();
}
void binary::setDefaultPrefs(void)
{
settings.bConfirmExit = true;
settings.bShowCompleteFilePathInTitle = true; //default 1
settings.bFirstLaunch = true;
settings.bSplashScreen = true;
settings.bStartFullScr = false;
//headers
settings.bToolbarActive = true; //default 1
settings.bToolbarText = true;
//settings.iLang = 1; //default 1 - eng
//_tcscpy(settings.szFontFamily,_T("Arial"));
//settings.iFontSize = 11; //default 11
//settings.iZoom = 100; //default 100
//settings.bLastSizeByUser = false; //true if changed, false otherwise default 0
settings.bRememberLastSizeByUser = false; //default false
settings.iUsrLastWidth = wpInitWidth; //default 700
settings.iUsrLastHeight = wpInitHeight; //default 400
settings.iUsrLastXPos = wpInitPosX; //default center
settings.iUsrLastYPos = wpInitPosY; //default center
settings.bDetectLinks = false; //default false
settings.bOverrideSettings = false;
//cutoff app in
}
void binary::updatePrefs(void)
{
//update preferences when the program is running
}
void manualOverride::loadMainPrefs(void)
{
}
void manualOverride::saveMainPrefs(void)
{
populateValArray(); //filing array with the current values in the mainprefs struct
std::ofstream txtOverride(szConfigManualPath,std::ios::out);
for (register auto x = 0;x<mainPrefsMax;x++)
{
txtOverride<<overrideTxtArray[x]<<overrideValArray[x];//setting=value pair
}
}
void manualOverride::setDefaultPrefs(void)
{
}
bool manualOverride::chkIfConfigExists(void)
{
return 0;
}
void manualOverride::updatePrefs(void)
{
}
void manualOverride::parseTxtPrefs(void)
{
}
void manualOverride::populateValArray(void)
{
overrideValArray[0] = settings.bConfirmExit;
overrideValArray[1] = settings.bShowCompleteFilePathInTitle;
overrideValArray[2] = settings.bFirstLaunch;
overrideValArray[3] = settings.bSplashScreen;
overrideValArray[4] = settings.bToolbarActive;
overrideValArray[5] = settings.bToolbarText;
overrideValArray[6] = settings.bDetectLinks;
overrideValArray[7] = settings.bStartFullScr;
overrideValArray[8] = settings.bRememberLastSizeByUser;
overrideValArray[9] = settings.iUsrLastWidth;
overrideValArray[10] = settings.iUsrLastHeight;
overrideValArray[11] = settings.iUsrLastXPos;
overrideValArray[12] = settings.iUsrLastYPos;
overrideValArray[13] = settings.bOverrideSettings;
}