forked from farbrausch/fr_public
-
Notifications
You must be signed in to change notification settings - Fork 0
/
appprefs.cpp
79 lines (71 loc) · 2.17 KB
/
appprefs.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
// This file is distributed under a BSD license. See LICENSE.txt for details.
#include "appprefs.hpp"
/****************************************************************************/
#define sGC_NONE 0 // unused palette entry
#define sGC_BACK 1 // client area clear color
#define sGC_TEXT 2 // normal text color
#define sGC_DRAW 3 // color for lines etc.
#define sGC_HIGH 4 // emboss box high color (outer)
#define sGC_LOW 5 // emboss box low color (outer)
#define sGC_HIGH2 6 // emboss box high color (inner)
#define sGC_LOW2 7 // emboss box low color (inner)
#define sGC_BUTTON 8 // button face
#define sGC_BARBACK 9 // scrollbar background
#define sGC_SELECT 10 // selected item text color
#define sGC_SELBACK 11 // selected item background color
#define sGC_MAX 12 // max color
sPrefsApp::sPrefsApp()
{
sGridFrame *Form;
sInt i;
static sChar *colorname[sGC_MAX] =
{
"Desktop",
"Background",
"Text",
"Drawing",
"Outer High",
"Outer Low",
"Inner High",
"Inner Low",
"Button Face",
"Scrollbar",
"Selected Text",
"Selected Back",
};
Form = new sGridFrame;
Form->SetGrid(3,sGC_MAX,0,sPainter->GetHeight(sGui->PropFont)+8);
for(i=0;i<sGC_MAX;i++)
{
Form->AddCon(0,i,3,1)->EditRGB(1,Colors+i*3,colorname[i]);
Colors[i*3+0] = ((sGui->Palette[i]>>16)&255)<<8;
Colors[i*3+1] = ((sGui->Palette[i]>> 8)&255)<<8;
Colors[i*3+2] = ((sGui->Palette[i] )&255)<<8;
}
Form->AddScrolling(0,1);
AddChild(Form);
}
sBool sPrefsApp::OnCommand(sU32 cmd)
{
sInt i;
switch(cmd)
{
case 1:
for(i=0;i<sGC_MAX;i++)
{
sGui->Palette[i] = 0xff000000
| (((Colors[i*3+0]>>8)&255)<<16)
| (((Colors[i*3+1]>>8)&255)<< 8)
| (((Colors[i*3+2]>>8)&255) );
}
return sTRUE;
default:
return sFALSE;
}
}
void sPrefsApp::OnKey(sU32 key)
{
if(key==sKEY_APPCLOSE)
Parent->RemChild(this);
}
/****************************************************************************/