Project

General

Profile

TH3-Color themes » History » Version 1

Wil van Antwerpen, 06/03/2019 01:48 PM

1 1 Wil van Antwerpen
# Color themes
2
3
The Hammer comes with the following default color themes:
4
5
* White
6
* Black
7
* Blue
8
* Lime
9
* Sahara
10
* Serene
11
12
In order to select a different theme you go in the menu to: File -> Hammer Options -> Editor tab page -> Colorer
13
You can select from the predefined color schemes via the Color Scheme name comboform
14
15
It is also possible to create your own theme and save it under your own name. For this use the "New" button.
16
17
## Adding a custom theme as a new default
18
19
If you created your own theme and you like it a lot then we would love to add it as another default theme to the list.
20
21
Below are the steps needed to do so yourself.
22
When you create a theme or customize it, the details for that theme are saved in the Hammer configuration file which can be found under the Hammer\Data folder.
23
The filename is CODEMAXEDIT<username>.ini where username is your windows login name. 
24
If your windows login is "John" then the filename will be CODEMAXEDITJohn.ini
25
26
Open that file and search for a line that starts with "PSCOLOR,"
27
28
Copy that line.
29
30
Now in the Hammer source files look for a file Hammer\Pkg\THColorer.h and search for the following line:
31
32
~~~
33
Define TH_DEFSCHEMA_SAHARA_STR  for "Default (Sahara)"
34
~~~
35
36
You can add your own code name for the new theme there, in a new line underneath, let's call our new theme "DEMO", so that it looks like this:
37
38
~~~
39
Define TH_DEFSCHEMA_SAHARA_STR  for "Default (Sahara)"
40
Define TH_DEFSCHEMA_DEMO_STR  for "Default (Demo)"
41
~~~
42
43
Then look for the actual theme data a few lines down:
44
45
~~~
46
Define TH_COLORSCHEMA_SAHARA    for "255255187000220225240000255255255255255255187000000000000000255255187000255000255000255255187000000000255000255255187000255000000000255255187000000000255000255255187000000128000000255255187000255000128000255255187000000128128000255255187000255000000000255255187000000000255000255255187000128000000000255255187000105105105000190200225000255255255255192192192000220225240000128128128000255215215000000000000000200225255000255255000000255035035000000128128000255255187000170195240000215107000000255255187000000,000000000000000000000000000000000000000000000001000000"
47
~~~
48
49
and copy the line of data from your config file in there like so:
50
51
~~~
52
Define TH_COLORSCHEMA_SAHARA    for "255255187000220225240000255255255255255255187000000000000000255255187000255000255000255255187000000000255000255255187000255000000000255255187000000000255000255255187000000128000000255255187000255000128000255255187000000128128000255255187000255000000000255255187000000000255000255255187000128000000000255255187000105105105000190200225000255255255255192192192000220225240000128128128000255215215000000000000000200225255000255255000000255035035000000128128000255255187000170195240000215107000000255255187000000,000000000000000000000000000000000000000000000001000000"
53
Define TH_COLORSCHEMA_DEMO      for "025025025000120120120000255255255255255255255255255255255000025025025000255185255000025025025000140215240000025025025000255108108000025025025000140215240000025025025000187255187000025025025000192192192000025025025000000128128000255255255255255000000000255255255255000000255000255255255255128000000000255255255255192192192000080080080000255255255255192192192000105105105000090090090000255215215000000000000000200225255000255255000000255000000000202255255000025025025000000000170000255190120000025025025000000"
54
~~~
55
56
That's the first step, next is adding this new theme to the UI.
57
58
For that go to file Hammer\AppSrc\Tools\THParameters.dg
59
60
In Object oSchemaSelect, procedure Combo_Fill_List
61
62
Under line:
63
64
~~~
65
  Send Combo_Add_Item TH_DEFSCHEMA_SAHARA_STR
66
~~~
67
68
add the new theme:
69
70
~~~
71
  Send Combo_Add_Item TH_DEFSCHEMA_SAHARA_STR
72
  Send Combo_Add_Item TH_DEFSCHEMA_DEMO_STR
73
~~~
74
75
also Object oSchemaSelect, procedure OnChange
76
77
Under line:
78
79
~~~
80
  Else If (sName=TH_DEFSCHEMA_SAHARA_STR) Move TH_COLORSCHEMA_SAHARA   To sSchema
81
~~~
82
83
add your new theme
84
85
~~~
86
  Else If (sName=TH_DEFSCHEMA_SAHARA_STR) Move TH_COLORSCHEMA_SAHARA   To sSchema
87
  Else If (sName=TH_DEFSCHEMA_DEMO_STR) Move TH_COLORSCHEMA_DEMO   To sSchema
88
~~~
89
90
same method, but a few lines down:
91
92
~~~
93
                                    Move (not((sName=TH_DEFSCHEMA_BLACK_STR) or ;
94
                                              (sName=TH_DEFSCHEMA_WHITE_STR) or ;
95
                                              (sName=TH_DEFSCHEMA_BLUE_STR)  or ;
96
                                              (sName=TH_DEFSCHEMA_SERENE_STR) or ;
97
                                              (sName=TH_DEFSCHEMA_SAHARA_STR) or ;
98
                                              (sName=TH_DEFSCHEMA_LIME_STR))) ;
99
                                                                        to iDisableManageButtons
100
~~~
101
102
change into:
103
104
~~~
105
                                    Move (not((sName=TH_DEFSCHEMA_BLACK_STR) or ;
106
                                              (sName=TH_DEFSCHEMA_WHITE_STR) or ;
107
                                              (sName=TH_DEFSCHEMA_BLUE_STR)  or ;
108
                                              (sName=TH_DEFSCHEMA_SERENE_STR) or ;
109
                                              (sName=TH_DEFSCHEMA_SAHARA_STR) or ;
110
                                              (sName=TH_DEFSCHEMA_DEMO_STR) or ;
111
                                              (sName=TH_DEFSCHEMA_LIME_STR))) ;
112
                                                                        to iDisableManageButtons
113
~~~
114
115
Then in oSchemaDelete,  procedure onClick
116
117
~~~
118
 If (sName=TH_DEFSCHEMA_BLACK_STR or sName=TH_DEFSCHEMA_WHITE_STR or sName=TH_DEFSCHEMA_BLUE_STR or sName=TH_DEFSCHEMA_LIME_STR or sName=TH_DEFSCHEMA_SERENE_STR or sName=TH_DEFSCHEMA_SAHARA_STR) Begin
119
~~~
120
121
add your theme:
122
123
~~~
124
 If (sName=TH_DEFSCHEMA_BLACK_STR or sName=TH_DEFSCHEMA_WHITE_STR or sName=TH_DEFSCHEMA_BLUE_STR or sName=TH_DEFSCHEMA_LIME_STR or sName=TH_DEFSCHEMA_SERENE_STR or sName=TH_DEFSCHEMA_SAHARA_STR or sName=TH_DEFSCHEMA_DEMO_STR) Begin
125
~~~
126
127
Next in oSchemaDefault button, procedure onClick
128
129
add under line:
130
131
~~~
132
  Else If (sName=TH_DEFSCHEMA_SAHARA_STR) Move TH_COLORSCHEMA_SAHARA To sColors
133
~~~
134
135
your own colors:
136
137
~~~
138
  Else If (sName=TH_DEFSCHEMA_SAHARA_STR) Move TH_COLORSCHEMA_SAHARA To sColors
139
  Else If (sName=TH_DEFSCHEMA_DEMO_STR) Move TH_COLORSCHEMA_DEMO To sColors
140
~~~
141
142
And finally in Procedure SaveEntries:
143
144
locate this part:
145
146
~~~
147
  If ((sSchemaName<>TH_DEFSCHEMA_BLACK_STR) and ;
148
    (sSchemaName<>TH_DEFSCHEMA_WHITE_STR) and ;
149
    (sSchemaName<>TH_DEFSCHEMA_BLUE_STR)  and ;
150
    (sSchemaName<>TH_DEFSCHEMA_SERENE_STR) and ;
151
    (sSchemaName<>TH_DEFSCHEMA_SAHARA_STR) and ;
152
    (sSchemaName<>TH_DEFSCHEMA_LIME_STR)) Begin
153
~~~
154
155
and add your own:
156
157
~~~
158
  If ((sSchemaName<>TH_DEFSCHEMA_BLACK_STR) and ;
159
    (sSchemaName<>TH_DEFSCHEMA_WHITE_STR) and ;
160
    (sSchemaName<>TH_DEFSCHEMA_BLUE_STR)  and ;
161
    (sSchemaName<>TH_DEFSCHEMA_SERENE_STR) and ;
162
    (sSchemaName<>TH_DEFSCHEMA_SAHARA_STR) and ;
163
    (sSchemaName<>TH_DEFSCHEMA_DEMO_STR) and ;
164
    (sSchemaName<>TH_DEFSCHEMA_LIME_STR)) Begin
165
~~~
166
167
Congratulations!
168
If you now close the Hammer and recompile your new color theme should show up and you can select it as a default theme.