-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathLabelSettings.cpp
More file actions
133 lines (104 loc) · 5.26 KB
/
LabelSettings.cpp
File metadata and controls
133 lines (104 loc) · 5.26 KB
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
#include "common.h"
#include "LabelSettings.h"
#include "Font.h"
#include "Texture.h"
NameValuePair justifyValues[] = {
{ "left", DT_LEFT },
{ "center", DT_CENTER },
{ "right", DT_RIGHT },
{ 0, 0 }
};
NameValuePair bangCommandValues[] = {
{ "none", 0 },
{ "minimal", 1 },
{ "all", 5 }, // "6" reserved for lsbox
{ 0, 0 }
};
LabelSettings::LabelSettings()
{
const char *name = "AllLabels";
isDefault = true;
alwaysOnTop = GetRCBoolean(name, "AlwaysOnTop");
startHidden = GetRCBoolean(name, "StartHidden");
bUseFahrenheit = GetRCBoolean(name, "UseFahrenheit");
skin = GetRCTexture(name, "");
font = GetRCFont(name);
leftBorder = GetRCInt(name, "LeftBorder", 0);
topBorder = GetRCInt(name, "TopBorder", 0);
rightBorder = GetRCInt(name, "RightBorder", 0);
bottomBorder = GetRCInt(name, "BottomBorder", 0);
bangCommands = GetRCNamedValue(name, "BangCommands", bangCommandValues, 5);
justify = GetRCNamedValue(name, "Justify", justifyValues, DT_CENTER);
updateInterval = GetRCInt(name, "UpdateInterval", 1000);
int screenX = GetSystemMetrics(SM_CXSCREEN);
int screenY = GetSystemMetrics(SM_CYSCREEN);
width = GetRCDimension(name, "Width", 64, screenX);
height = GetRCDimension(name, "Height", 64, screenY);
x = GetRCCoordinate(name, "X", 0, screenX);
y = GetRCCoordinate(name, "Y", 0, screenY);
text = GetRCString(name, "Text", "");
leftClickCommand = GetRCLine(name, "OnLeftClick", "");
leftDoubleClickCommand = GetRCLine(name, "OnLeftDoubleClick", "");
middleClickCommand = GetRCLine(name, "OnMiddleClick", "");
middleDoubleClickCommand = GetRCLine(name, "OnMiddleDoubleClick", "");
rightClickCommand = GetRCLine(name, "OnRightClick", "");
rightDoubleClickCommand = GetRCLine(name, "OnRightDoubleClick", "");
wheelDownCommand = GetRCLine(name, "OnWheelDown", "");
wheelUpCommand = GetRCLine(name, "OnWheelUp", "");
enterCommand = GetRCLine(name, "OnMouseEnter", "");
leaveCommand = GetRCLine(name, "OnMouseLeave", "");
dropCommand = GetRCLine(name, "OnDrop", "");
scrollPadLength = GetRCInt(name, "scrollPad", 10);
scrollInterval = GetRCInt(name, "scrollInterval", 100);
scrollSpeed = GetRCInt(name, "scrollSpeed", 1);
scroll = GetRCBoolean(name, "scroll", false);
// trueTransparency = GetRCBoolean(name, "TrueTransparency", false);
}
LabelSettings::LabelSettings(const char *name)
{
isDefault = false;
alwaysOnTop = GetRCBoolean(name, "AlwaysOnTop", defaultSettings->alwaysOnTop);
startHidden = GetRCBoolean(name, "StartHidden", defaultSettings->startHidden);
bUseFahrenheit = GetRCBoolean(name, "UseFahrenheit", defaultSettings->bUseFahrenheit);
skin = GetRCTexture(name, "", defaultSettings->skin);
font = GetRCFont(name, defaultSettings->font);
leftBorder = GetRCInt(name, "LeftBorder", defaultSettings->leftBorder);
topBorder = GetRCInt(name, "TopBorder", defaultSettings->topBorder);
rightBorder = GetRCInt(name, "RightBorder", defaultSettings->rightBorder);
bottomBorder = GetRCInt(name, "BottomBorder", defaultSettings->bottomBorder);
bangCommands = GetRCNamedValue(name, "BangCommands", bangCommandValues, defaultSettings->bangCommands);
justify = GetRCNamedValue(name, "Justify", justifyValues, defaultSettings->justify);
updateInterval = GetRCInt(name, "UpdateInterval", defaultSettings->updateInterval);
int screenX = GetSystemMetrics(SM_CXSCREEN);
int screenY = GetSystemMetrics(SM_CYSCREEN);
width = GetRCDimension(name, "Width", defaultSettings->width, screenX);
height = GetRCDimension(name, "Height", defaultSettings->height, screenY);
x = GetRCCoordinate(name, "X", defaultSettings->x, screenX);
y = GetRCCoordinate(name, "Y", defaultSettings->y, screenY);
text = GetRCString(name, "Text", defaultSettings->text);
leftClickCommand = GetRCLine(name, "OnLeftClick", defaultSettings->leftClickCommand);
leftDoubleClickCommand = GetRCLine(name, "OnLeftDoubleClick", defaultSettings->leftDoubleClickCommand);
middleClickCommand = GetRCLine(name, "OnMiddleClick", defaultSettings->middleClickCommand);
middleDoubleClickCommand = GetRCLine(name, "OnMiddleDoubleClick", defaultSettings->middleDoubleClickCommand);
rightClickCommand = GetRCLine(name, "OnRightClick", defaultSettings->rightClickCommand);
rightDoubleClickCommand = GetRCLine(name, "OnRightDoubleClick", defaultSettings->rightDoubleClickCommand);
wheelDownCommand = GetRCLine(name, "OnWheelDown", defaultSettings->wheelDownCommand);
wheelUpCommand = GetRCLine(name, "OnWheelUp", defaultSettings->wheelUpCommand);
enterCommand = GetRCLine(name, "OnMouseEnter", defaultSettings->enterCommand);
leaveCommand = GetRCLine(name, "OnMouseLeave", defaultSettings->leaveCommand);
dropCommand = GetRCLine(name, "OnDrop", defaultSettings->dropCommand);
scrollPadLength = GetRCInt(name, "scrollPad", defaultSettings->scrollPadLength);
scrollInterval = GetRCInt(name, "scrollInterval", defaultSettings->scrollInterval);
scrollSpeed = GetRCInt(name, "scrollSpeed", defaultSettings->scrollSpeed);
scroll = GetRCBoolean(name, "scroll", defaultSettings->scroll);
// trueTransparency = GetRCBoolean(name, "TrueTransparency", defaultSettings->trueTransparency);
}
LabelSettings::~LabelSettings()
{
if(isDefault)
{
delete skin;
delete font;
}
}
LabelSettings* defaultSettings = NULL;