Rev 7984 | Rev 8946 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 7984 | Rev 7995 | ||
---|---|---|---|
1 | #ifndef AUTOBUILD |
1 | #ifndef AUTOBUILD |
2 | #include "lang.h--" |
2 | #include "lang.h--" |
3 | #endif |
3 | #endif |
4 | 4 | ||
5 | #define MEMSIZE 0x23E80 |
5 | #define MEMSIZE 0x23E80 |
6 | #include "..\lib\kolibri.h" |
6 | #include "..\lib\kolibri.h" |
7 | #include "..\lib\strings.h" |
7 | #include "..\lib\strings.h" |
8 | #include "..\lib\mem.h" |
8 | #include "..\lib\mem.h" |
9 | #include "..\lib\fs.h" |
9 | #include "..\lib\fs.h" |
10 | #include "..\lib\dll.h" |
10 | #include "..\lib\dll.h" |
11 | #include "..\lib\gui.h" |
11 | #include "..\lib\gui.h" |
12 | 12 | ||
13 | #include "..\lib\obj\libio.h" |
13 | #include "..\lib\obj\libio.h" |
14 | #include "..\lib\obj\libini.h" |
14 | #include "..\lib\obj\libini.h" |
15 | #include "..\lib\obj\box_lib.h" |
15 | #include "..\lib\obj\box_lib.h" |
16 | 16 | ||
17 | #include "..\lib\patterns\restart_process.h" |
17 | #include "..\lib\patterns\restart_process.h" |
18 | 18 | ||
19 | #ifdef LANG_RUS |
19 | #ifdef LANG_RUS |
20 | ?define WINDOW_TITLE " áâனª¨ ¯ ¥«¨ § ¤ ç ¨ ®ª " |
20 | ?define WINDOW_TITLE " áâனª¨ ¯ ¥«¨ § ¤ ç ¨ ®ª " |
21 | ?define TASK_FRAME_T " ¥«ì § ¤ ç " |
21 | ?define TASK_FRAME_T " ¥«ì § ¤ ç " |
22 | ?define DOCK_FRAME_T " ®ª " |
22 | ?define DOCK_FRAME_T " ®ª " |
23 | ?define MIN_LEFT_BUTTON "®¯ª áªàëâ¨ï á«¥¢ " |
23 | ?define MIN_LEFT_BUTTON "®¯ª áªàëâ¨ï á«¥¢ " |
24 | ?define MIN_RIGHT_BUTTON "®¯ª áªàëâ¨ï á¯à ¢ " |
24 | ?define MIN_RIGHT_BUTTON "®¯ª áªàëâ¨ï á¯à ¢ " |
25 | ?define SOFTEN_UP "£« ¦¨¢ ¨¥ ᢥàåã" |
25 | ?define SOFTEN_UP "£« ¦¨¢ ¨¥ ᢥàåã" |
26 | ?define SOFTEN_DOWN "£« ¦¨¢ ¨¥ ᨧã" |
26 | ?define SOFTEN_DOWN "£« ¦¨¢ ¨¥ ᨧã" |
27 | ?define CLOCK " áë" |
27 | ?define CLOCK " áë" |
28 | ?define CPU_USAGE " £à㧪 " |
28 | ?define CPU_USAGE " £à㧪 " |
29 | ?define CHANGE_LANG "§ëª ¢¢®¤ " |
29 | ?define CHANGE_LANG "§ëª ¢¢®¤ " |
30 | ?define MENU_BUTTON "®¯ª ¬¥î" |
30 | ?define MENU_BUTTON "®¯ª ¬¥î" |
31 | ?define PANEL_HEIGHT "ëá®â ¯ ¥«¨" |
31 | ?define PANEL_HEIGHT "ëá®â ¯ ¥«¨" |
32 | ?define SOFTEN_HEIGHT "ëá®â ᣫ ¦¨¢ ¨ï" |
32 | ?define SOFTEN_HEIGHT "ëá®â ᣫ ¦¨¢ ¨ï" |
33 | ?define BUTTON_OFFSET "®«¥ ¢®ªà㣠ª®¯®ª" |
33 | ?define BUTTON_OFFSET "®«¥ ¢®ªà㣠ª®¯®ª" |
34 | ?define FSIZE "¥¦¨¬ ¯ ¥«¨" |
34 | ?define FSIZE "¥¦¨¬ ¯ ¥«¨" |
35 | ?define ASHOW "¥ áªàë¢ âì" |
35 | ?define ASHOW "¥ áªàë¢ âì" |
36 | ?define CHANGE_POS " ¦¬¨â¥ ¨§®¡à ¦¥¨¥ ¤«ï á¬¥ë ¯®§¨æ¨¨" |
36 | ?define CHANGE_POS " ¦¬¨â¥ ¨§®¡à ¦¥¨¥ ¤«ï á¬¥ë ¯®§¨æ¨¨" |
37 | #else |
37 | #else |
38 | ?define WINDOW_TITLE "Taskbar and Docky configuration" |
38 | ?define WINDOW_TITLE "Taskbar and Docky configuration" |
39 | ?define TASK_FRAME_T " Taskbar " |
39 | ?define TASK_FRAME_T " Taskbar " |
40 | ?define DOCK_FRAME_T " Docky " |
40 | ?define DOCK_FRAME_T " Docky " |
41 | ?define MIN_LEFT_BUTTON "Min Left Button" |
41 | ?define MIN_LEFT_BUTTON "Min Left Button" |
42 | ?define MIN_RIGHT_BUTTON "Min Right Button" |
42 | ?define MIN_RIGHT_BUTTON "Min Right Button" |
43 | ?define SOFTEN_UP "Soften Up" |
43 | ?define SOFTEN_UP "Soften Up" |
44 | ?define SOFTEN_DOWN "Soften Down" |
44 | ?define SOFTEN_DOWN "Soften Down" |
45 | ?define CLOCK "Clock" |
45 | ?define CLOCK "Clock" |
46 | ?define CPU_USAGE "Cpu Usage" |
46 | ?define CPU_USAGE "Cpu Usage" |
47 | ?define CHANGE_LANG "Change Language" |
47 | ?define CHANGE_LANG "Change Language" |
48 | ?define MENU_BUTTON "Menu Button" |
48 | ?define MENU_BUTTON "Menu Button" |
49 | ?define PANEL_HEIGHT "Panel Height" |
49 | ?define PANEL_HEIGHT "Panel Height" |
50 | ?define SOFTEN_HEIGHT "Soften Height" |
50 | ?define SOFTEN_HEIGHT "Soften Height" |
51 | ?define BUTTON_OFFSET "Button Offset" |
51 | ?define BUTTON_OFFSET "Button Offset" |
52 | ?define FSIZE "Full width" |
52 | ?define FSIZE "Full width" |
53 | ?define ASHOW "Always show" |
53 | ?define ASHOW "Always show" |
54 | ?define CHANGE_POS "Click on image to change position" |
54 | ?define CHANGE_POS "Click on image to change position" |
55 | #endif |
55 | #endif |
56 | 56 | ||
57 | char taskbar_ini_path[] = "/sys/settings/taskbar.ini"; |
57 | char taskbar_ini_path[] = "/sys/settings/taskbar.ini"; |
58 | _ini taskbar_flags_ini = { #taskbar_ini_path, "Flags" }; |
58 | _ini taskbar_flags_ini = { #taskbar_ini_path, "Flags" }; |
59 | _ini taskbar_vars_ini = { #taskbar_ini_path, "Variables" }; |
59 | _ini taskbar_vars_ini = { #taskbar_ini_path, "Variables" }; |
60 | 60 | ||
61 | _ini docky_ini = { "/sys/settings/docky.ini", "@" }; |
61 | _ini docky_ini = { "/sys/settings/docky.ini", "@" }; |
62 | 62 | ||
63 | unsigned char panels_img_data[] = FROM "panels_image.raw"; |
63 | unsigned char panels_img_data[] = FROM "bars.raw"; |
64 | #define PIMG_W 37 |
64 | #define PIMG_W 37 |
65 | #define PIMG_H 27 //27*5 |
65 | #define PIMG_H 27 //27*5 |
66 | 66 | ||
67 | proc_info Form; |
67 | proc_info Form; |
68 | 68 | ||
69 | enum { BTN_TB_ATTACHEMENT=100, BTN_DOCKY_ATTACHEMENT=200 }; |
69 | enum { BTN_TB_ATTACHEMENT=100, BTN_DOCKY_ATTACHEMENT=200 }; |
70 | enum { TASKBAR, DOCKY }; |
70 | enum { TASKBAR, DOCKY }; |
71 | 71 | ||
72 | more_less_box tbPanelHeight = { NULL, 6, 99, PANEL_HEIGHT }; |
72 | more_less_box tbPanelHeight = { NULL, 6, 99, PANEL_HEIGHT }; |
73 | more_less_box tbSoftenHeight = { NULL, 0, 99, SOFTEN_HEIGHT }; |
73 | more_less_box tbSoftenHeight = { NULL, 0, 99, SOFTEN_HEIGHT }; |
74 | more_less_box tbButtonOffset = { NULL, 0, 99, BUTTON_OFFSET }; |
74 | more_less_box tbButtonOffset = { NULL, 0, 99, BUTTON_OFFSET }; |
75 | 75 | ||
76 | checkbox taskbar_on = 0; |
76 | checkbox taskbar_on = 0; |
77 | checkbox docky_on = 0; |
77 | checkbox docky_on = 0; |
78 | 78 | ||
79 | int tbAttachment; |
79 | int tbAttachment; |
80 | checkbox tbSoftenUp = { SOFTEN_UP }; |
80 | checkbox tbSoftenUp = { SOFTEN_UP }; |
81 | checkbox tbClock = { CLOCK }; |
81 | checkbox tbClock = { CLOCK }; |
82 | checkbox tbSoftenDown = { SOFTEN_DOWN }; |
82 | checkbox tbSoftenDown = { SOFTEN_DOWN }; |
83 | checkbox tbCpuUsage = { CPU_USAGE }; |
83 | checkbox tbCpuUsage = { CPU_USAGE }; |
84 | checkbox tbMinLeftButton = { MIN_LEFT_BUTTON }; |
84 | checkbox tbMinLeftButton = { MIN_LEFT_BUTTON }; |
85 | checkbox tbChangeLang = { CHANGE_LANG }; |
85 | checkbox tbChangeLang = { CHANGE_LANG }; |
86 | checkbox tbMinRightButton = { MIN_RIGHT_BUTTON }; |
86 | checkbox tbMinRightButton = { MIN_RIGHT_BUTTON }; |
87 | checkbox tbMenuButton = { MENU_BUTTON }; |
87 | checkbox tbMenuButton = { MENU_BUTTON }; |
88 | checkbox dkFsize = { FSIZE }; |
88 | checkbox dkFsize = { FSIZE }; |
89 | checkbox dkAshow = { ASHOW }; |
89 | checkbox dkAshow = { ASHOW }; |
90 | 90 | ||
91 | int dkLocation; |
91 | int dkLocation; |
92 | checkbox tbRunApplButton; |
92 | checkbox tbRunApplButton; |
93 | checkbox tbClnDeskButton; |
93 | checkbox tbClnDeskButton; |
94 | 94 | ||
95 | 95 | ||
96 | void main() |
96 | void main() |
97 | { |
97 | { |
98 | dword id; |
98 | dword id; |
99 | 99 | ||
100 | load_dll(libini, #lib_init,1); |
100 | load_dll(libini, #lib_init,1); |
101 | load_dll(boxlib, #box_lib_init,0); |
101 | load_dll(boxlib, #box_lib_init,0); |
102 | 102 | ||
103 | LoadCfg(); |
103 | LoadCfg(); |
104 | 104 | ||
105 | loop() switch(@WaitEvent()) |
105 | loop() switch(@WaitEvent()) |
106 | { |
106 | { |
107 | case evButton: |
107 | case evButton: |
108 | id = @GetButtonID(); |
108 | id = @GetButtonID(); |
109 | if (1==id) @ExitProcess(); |
109 | if (1==id) @ExitProcess(); |
110 | 110 | ||
111 | if (taskbar_on.checked) EventTaskbarProcessButton(id); |
111 | if (taskbar_on.checked) EventTaskbarProcessButton(id); |
112 | if (docky_on.checked) EventDockyProcessButton(id); |
112 | if (docky_on.checked) EventDockyProcessButton(id); |
113 | 113 | ||
114 | if (taskbar_on.click(id)) { |
114 | if (taskbar_on.click(id)) { |
115 | IF (taskbar_on.checked == true) RunProgram("/sys/@taskbar", 0); |
115 | IF (taskbar_on.checked == true) RunProgram("/sys/@taskbar", 0); |
116 | ELSE KillProcessByName("@TASKBAR", SINGLE); |
116 | ELSE KillProcessByName("@TASKBAR", SINGLE); |
117 | DrawWindowContent(); |
117 | DrawWindowContent(); |
118 | } |
118 | } |
119 | if (docky_on.click(id)) { |
119 | if (docky_on.click(id)) { |
120 | IF (docky_on.checked == true) RunProgram("/sys/@docky", 0); |
120 | IF (docky_on.checked == true) RunProgram("/sys/@docky", 0); |
121 | ELSE KillProcessByName("@DOCKY", SINGLE); |
121 | ELSE KillProcessByName("@DOCKY", SINGLE); |
122 | DrawWindowContent(); |
122 | DrawWindowContent(); |
123 | } |
123 | } |
124 | break; |
124 | break; |
125 | 125 | ||
126 | case evKey: |
126 | case evKey: |
127 | if (@GetKeyScancode() == SCAN_CODE_ESC) ExitProcess(); |
127 | if (@GetKeyScancode() == SCAN_CODE_ESC) ExitProcess(); |
128 | break; |
128 | break; |
129 | 129 | ||
130 | case evReDraw: |
130 | case evReDraw: |
131 | sc.get(); |
131 | sc.get(); |
132 | DefineAndDrawWindow(130, 150, 465, 398 + skin_height, 0x34, sc.work, WINDOW_TITLE, 0); |
132 | DefineAndDrawWindow(130, 150, 465, 398 + skin_height, 0x34, sc.work, WINDOW_TITLE, 0); |
133 | GetProcessInfo(#Form, SelfInfo); |
133 | GetProcessInfo(#Form, SelfInfo); |
134 | if (Form.status_window>2) break; |
134 | if (Form.status_window>2) break; |
135 | DrawWindowContent(); |
135 | DrawWindowContent(); |
136 | } |
136 | } |
137 | } |
137 | } |
138 | 138 | ||
139 | void DrawPanelsImage(dword y, n) |
139 | void DrawPanelsImage(dword y, n) |
140 | { |
140 | { |
141 | _PutImage(22, y, PIMG_W, PIMG_H, n * PIMG_W * PIMG_H * 3 + #panels_img_data); |
141 | _PutImage(22, y, PIMG_W, PIMG_H, n * PIMG_W * PIMG_H * 3 + #panels_img_data); |
142 | } |
142 | } |
143 | 143 | ||
144 | void SetDisabledMode() |
144 | void SetDisabledMode() |
145 | { |
145 | { |
146 | EAX = taskbar_on.checked ^ 1; |
146 | EAX = taskbar_on.checked ^ 1; |
147 | tbSoftenUp.disabled = |
147 | tbSoftenUp.disabled = |
148 | tbSoftenDown.disabled = |
148 | tbSoftenDown.disabled = |
149 | tbMinLeftButton.disabled = |
149 | tbMinLeftButton.disabled = |
150 | tbMinRightButton.disabled = |
150 | tbMinRightButton.disabled = |
151 | tbRunApplButton.disabled = |
151 | tbRunApplButton.disabled = |
152 | tbClnDeskButton.disabled = |
152 | tbClnDeskButton.disabled = |
153 | tbClock.disabled = |
153 | tbClock.disabled = |
154 | tbCpuUsage.disabled = |
154 | tbCpuUsage.disabled = |
155 | tbChangeLang.disabled = |
155 | tbChangeLang.disabled = |
156 | tbMenuButton.disabled = |
156 | tbMenuButton.disabled = |
157 | tbPanelHeight.disabled = |
157 | tbPanelHeight.disabled = |
158 | tbSoftenHeight.disabled = |
158 | tbSoftenHeight.disabled = |
159 | tbButtonOffset.disabled = |
159 | tbButtonOffset.disabled = |
160 | tbButtonOffset.disabled = EAX; |
160 | tbButtonOffset.disabled = EAX; |
161 | // |
161 | // |
162 | dkFsize.disabled = |
162 | dkFsize.disabled = |
163 | dkAshow.disabled = docky_on.checked ^ 1; |
163 | dkAshow.disabled = docky_on.checked ^ 1; |
164 | } |
164 | } |
165 | 165 | ||
166 | void DrawWindowContent() |
166 | void DrawWindowContent() |
167 | { |
167 | { |
168 | #define PD 10 |
168 | #define PD 10 |
169 | dword frame_y; |
169 | dword frame_y; |
170 | word win_center_x = Form.cwidth / 2 + 20; |
170 | word win_center_x = Form.cwidth / 2 + 20; |
171 | incn y; |
171 | incn y; |
172 | 172 | ||
173 | SetDisabledMode(); |
173 | SetDisabledMode(); |
174 | 174 | ||
175 | frame_y = 15; |
175 | frame_y = 15; |
176 | y.n = frame_y; |
176 | y.n = frame_y; |
177 | DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 100 + BT_HIDE, 0); |
177 | DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 100 + BT_HIDE, 0); |
178 | DrawPanelsImage(y.n, tbAttachment); |
178 | DrawPanelsImage(y.n, tbAttachment); |
179 | WriteTextWithBg(68, y.inc(7), 0xD0, sc.work_text, CHANGE_POS, sc.work); |
179 | WriteTextWithBg(68, y.inc(7), 0xD0, sc.work_text, CHANGE_POS, sc.work); |
180 | tbSoftenUp.draw(22, y.inc(35)); |
180 | tbSoftenUp.draw(22, y.inc(35)); |
181 | tbClock.draw(win_center_x, y.n); |
181 | tbClock.draw(win_center_x, y.n); |
182 | tbSoftenDown.draw(22, y.inc(24)); |
182 | tbSoftenDown.draw(22, y.inc(24)); |
183 | tbCpuUsage.draw(win_center_x, y.n); |
183 | tbCpuUsage.draw(win_center_x, y.n); |
184 | tbMinLeftButton.draw(22, y.inc(24)); |
184 | tbMinLeftButton.draw(22, y.inc(24)); |
185 | tbChangeLang.draw(win_center_x, y.n); |
185 | tbChangeLang.draw(win_center_x, y.n); |
186 | tbMinRightButton.draw(22, y.inc(24)); |
186 | tbMinRightButton.draw(22, y.inc(24)); |
187 | tbMenuButton.draw(win_center_x, y.n); |
187 | tbMenuButton.draw(win_center_x, y.n); |
188 | tbPanelHeight.draw(22, y.inc(28)); |
188 | tbPanelHeight.draw(22, y.inc(28)); |
189 | tbSoftenHeight.draw(22, y.inc(32)); |
189 | tbSoftenHeight.draw(22, y.inc(32)); |
190 | tbButtonOffset.draw(22, y.inc(32)); |
190 | tbButtonOffset.draw(22, y.inc(32)); |
191 | DrawFrame(PD, frame_y, Form.cwidth-PD-PD, y.inc(32)-frame_y, TASK_FRAME_T); |
191 | DrawFrame(PD, frame_y, Form.cwidth-PD-PD, y.inc(32)-frame_y, TASK_FRAME_T); |
192 | taskbar_on.draw(22, frame_y-7); |
192 | taskbar_on.draw(22, frame_y-7); |
193 | //DOCKY |
193 | //DOCKY |
194 | frame_y = calc(y.inc(20)); |
194 | frame_y = calc(y.inc(20)); |
195 | DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 200 + BT_HIDE, 0); |
195 | DefineButton(22, y.inc(18), PIMG_W-1, PIMG_H-1, 200 + BT_HIDE, 0); |
196 | DrawPanelsImage(y.n, dkLocation+1); |
196 | DrawPanelsImage(y.n, dkLocation+1); |
197 | WriteTextWithBg(68, y.inc(7), 0xD0, sc.work_text, CHANGE_POS, sc.work); |
197 | WriteTextWithBg(68, y.inc(7), 0xD0, sc.work_text, CHANGE_POS, sc.work); |
198 | dkFsize.draw(22, y.inc(35)); |
198 | dkFsize.draw(22, y.inc(35)); |
199 | dkAshow.draw(win_center_x, y.n); |
199 | dkAshow.draw(win_center_x, y.n); |
200 | DrawFrame(PD, frame_y, Form.cwidth-PD-PD, Form.cheight-frame_y-PD, DOCK_FRAME_T); |
200 | DrawFrame(PD, frame_y, Form.cwidth-PD-PD, Form.cheight-frame_y-PD, DOCK_FRAME_T); |
201 | docky_on.draw(22, frame_y-7); |
201 | docky_on.draw(22, frame_y-7); |
202 | } |
202 | } |
203 | 203 | ||
204 | void LoadCfg() |
204 | void LoadCfg() |
205 | { |
205 | { |
206 | tbAttachment = taskbar_flags_ini.GetInt("Attachment", 1); |
206 | tbAttachment = taskbar_flags_ini.GetInt("Attachment", 1); |
207 | tbSoftenUp.checked = taskbar_flags_ini.GetInt("SoftenUp", 1); |
207 | tbSoftenUp.checked = taskbar_flags_ini.GetInt("SoftenUp", 1); |
208 | tbSoftenDown.checked = taskbar_flags_ini.GetInt("SoftenDown", 1); |
208 | tbSoftenDown.checked = taskbar_flags_ini.GetInt("SoftenDown", 1); |
209 | tbMinLeftButton.checked = taskbar_flags_ini.GetInt("MinLeftButton", 1); |
209 | tbMinLeftButton.checked = taskbar_flags_ini.GetInt("MinLeftButton", 1); |
210 | tbMinRightButton.checked = taskbar_flags_ini.GetInt("MinRightButton", 1); |
210 | tbMinRightButton.checked = taskbar_flags_ini.GetInt("MinRightButton", 1); |
211 | tbClock.checked = taskbar_flags_ini.GetInt("Clock", 1); |
211 | tbClock.checked = taskbar_flags_ini.GetInt("Clock", 1); |
212 | tbCpuUsage.checked = taskbar_flags_ini.GetInt("CpuUsage", 1); |
212 | tbCpuUsage.checked = taskbar_flags_ini.GetInt("CpuUsage", 1); |
213 | tbChangeLang.checked = taskbar_flags_ini.GetInt("ChangeLang", 1); |
213 | tbChangeLang.checked = taskbar_flags_ini.GetInt("ChangeLang", 1); |
214 | tbMenuButton.checked = taskbar_flags_ini.GetInt("MenuButton", 1); |
214 | tbMenuButton.checked = taskbar_flags_ini.GetInt("MenuButton", 1); |
215 | tbPanelHeight.value = taskbar_vars_ini.GetInt("PanelHeight", 28); |
215 | tbPanelHeight.value = taskbar_vars_ini.GetInt("PanelHeight", 28); |
216 | tbSoftenHeight.value = taskbar_vars_ini.GetInt("SoftenHeight", 4); |
216 | tbSoftenHeight.value = taskbar_vars_ini.GetInt("SoftenHeight", 4); |
217 | tbButtonOffset.value = taskbar_vars_ini.GetInt("ButtonTopOffset", 3); |
217 | tbButtonOffset.value = taskbar_vars_ini.GetInt("ButtonTopOffset", 3); |
218 | tbButtonOffset.value = taskbar_vars_ini.GetInt("ButtonBotOffset", 3); |
218 | tbButtonOffset.value = taskbar_vars_ini.GetInt("ButtonBotOffset", 3); |
219 | 219 | ||
220 | dkLocation = docky_ini.GetInt("location", 0); |
220 | dkLocation = docky_ini.GetInt("location", 0); |
221 | dkFsize.checked = docky_ini.GetInt("fsize", 0); |
221 | dkFsize.checked = docky_ini.GetInt("fsize", 0); |
222 | dkAshow.checked = docky_ini.GetInt("ashow", 0); |
222 | dkAshow.checked = docky_ini.GetInt("ashow", 0); |
223 | 223 | ||
224 | taskbar_on.checked = CheckProcessExists("@TASKBAR"); |
224 | taskbar_on.checked = CheckProcessExists("@TASKBAR"); |
225 | docky_on.checked = CheckProcessExists("@DOCKY"); |
225 | docky_on.checked = CheckProcessExists("@DOCKY"); |
226 | } |
226 | } |
227 | 227 | ||
228 | void SaveSettingsAndRestartProcess(byte panel_type) |
228 | void SaveSettingsAndRestartProcess(byte panel_type) |
229 | { |
229 | { |
230 | if (panel_type==TASKBAR) { |
230 | if (panel_type==TASKBAR) { |
231 | taskbar_flags_ini.SetInt("Attachment", tbAttachment); |
231 | taskbar_flags_ini.SetInt("Attachment", tbAttachment); |
232 | taskbar_flags_ini.SetInt("SoftenUp", tbSoftenUp.checked); |
232 | taskbar_flags_ini.SetInt("SoftenUp", tbSoftenUp.checked); |
233 | taskbar_flags_ini.SetInt("SoftenDown", tbSoftenDown.checked); |
233 | taskbar_flags_ini.SetInt("SoftenDown", tbSoftenDown.checked); |
234 | taskbar_flags_ini.SetInt("MinLeftButton", tbMinLeftButton.checked); |
234 | taskbar_flags_ini.SetInt("MinLeftButton", tbMinLeftButton.checked); |
235 | taskbar_flags_ini.SetInt("MinRightButton", tbMinRightButton.checked); |
235 | taskbar_flags_ini.SetInt("MinRightButton", tbMinRightButton.checked); |
236 | taskbar_flags_ini.SetInt("RunApplButton", tbRunApplButton.checked); |
236 | taskbar_flags_ini.SetInt("RunApplButton", tbRunApplButton.checked); |
237 | taskbar_flags_ini.SetInt("ClnDeskButton", tbClnDeskButton.checked); |
237 | taskbar_flags_ini.SetInt("ClnDeskButton", tbClnDeskButton.checked); |
238 | taskbar_flags_ini.SetInt("Clock", tbClock.checked); |
238 | taskbar_flags_ini.SetInt("Clock", tbClock.checked); |
239 | taskbar_flags_ini.SetInt("CpuUsage", tbCpuUsage.checked); |
239 | taskbar_flags_ini.SetInt("CpuUsage", tbCpuUsage.checked); |
240 | taskbar_flags_ini.SetInt("ChangeLang", tbChangeLang.checked); |
240 | taskbar_flags_ini.SetInt("ChangeLang", tbChangeLang.checked); |
241 | taskbar_flags_ini.SetInt("MenuButton", tbMenuButton.checked); |
241 | taskbar_flags_ini.SetInt("MenuButton", tbMenuButton.checked); |
242 | taskbar_vars_ini.SetInt("PanelHeight", tbPanelHeight.value); |
242 | taskbar_vars_ini.SetInt("PanelHeight", tbPanelHeight.value); |
243 | taskbar_vars_ini.SetInt("SoftenHeight", tbSoftenHeight.value); |
243 | taskbar_vars_ini.SetInt("SoftenHeight", tbSoftenHeight.value); |
244 | taskbar_vars_ini.SetInt("ButtonTopOffset", tbButtonOffset.value); |
244 | taskbar_vars_ini.SetInt("ButtonTopOffset", tbButtonOffset.value); |
245 | taskbar_vars_ini.SetInt("ButtonBottOffset", tbButtonOffset.value); |
245 | taskbar_vars_ini.SetInt("ButtonBottOffset", tbButtonOffset.value); |
246 | } |
246 | } |
247 | if (panel_type==DOCKY) { |
247 | if (panel_type==DOCKY) { |
248 | docky_ini.SetInt("location", dkLocation); |
248 | docky_ini.SetInt("location", dkLocation); |
249 | docky_ini.SetInt("fsize", dkFsize.checked); |
249 | docky_ini.SetInt("fsize", dkFsize.checked); |
250 | docky_ini.SetInt("ashow", dkAshow.checked); |
250 | docky_ini.SetInt("ashow", dkAshow.checked); |
251 | } |
251 | } |
252 | RestartProcess(panel_type); |
252 | RestartProcess(panel_type); |
253 | } |
253 | } |
254 | 254 | ||
255 | void RestartProcess(byte panel_type) |
255 | void RestartProcess(byte panel_type) |
256 | { |
256 | { |
257 | dword proc_name1; |
257 | dword proc_name1; |
258 | if (panel_type == TASKBAR) |
258 | if (panel_type == TASKBAR) |
259 | { |
259 | { |
260 | RestartProcessByName("/sys/@taskbar", SINGLE); |
260 | RestartProcessByName("/sys/@taskbar", SINGLE); |
261 | pause(50); |
261 | pause(50); |
262 | } |
262 | } |
263 | else |
263 | else |
264 | { |
264 | { |
265 | RestartProcessByName("/sys/@docky", SINGLE); |
265 | RestartProcessByName("/sys/@docky", SINGLE); |
266 | pause(120); |
266 | pause(120); |
267 | } |
267 | } |
268 | GetProcessInfo(#Form, SelfInfo); |
268 | GetProcessInfo(#Form, SelfInfo); |
269 | ActivateWindow(GetProcessSlot(Form.ID)); |
269 | ActivateWindow(GetProcessSlot(Form.ID)); |
270 | } |
270 | } |
271 | 271 | ||
272 | void EventTaskbarProcessButton(dword id) |
272 | void EventTaskbarProcessButton(dword id) |
273 | { |
273 | { |
274 | if (BTN_TB_ATTACHEMENT == id) { |
274 | if (BTN_TB_ATTACHEMENT == id) { |
275 | tbAttachment ^= 1; |
275 | tbAttachment ^= 1; |
276 | DrawWindowContent(); |
276 | DrawWindowContent(); |
277 | SaveSettingsAndRestartProcess(TASKBAR); |
277 | SaveSettingsAndRestartProcess(TASKBAR); |
278 | } |
278 | } |
279 | if (tbSoftenUp.click(id)) || (tbSoftenDown.click(id)) |
279 | if (tbSoftenUp.click(id)) || (tbSoftenDown.click(id)) |
280 | || (tbMinLeftButton.click(id)) || (tbMinRightButton.click(id)) |
280 | || (tbMinLeftButton.click(id)) || (tbMinRightButton.click(id)) |
281 | || (tbRunApplButton.click(id)) || (tbClnDeskButton.click(id)) { |
281 | || (tbRunApplButton.click(id)) || (tbClnDeskButton.click(id)) { |
282 | SaveSettingsAndRestartProcess(TASKBAR); |
282 | SaveSettingsAndRestartProcess(TASKBAR); |
283 | } |
283 | } |
284 | if (tbClock.click(id)) || (tbCpuUsage.click(id)) |
284 | if (tbClock.click(id)) || (tbCpuUsage.click(id)) |
285 | || (tbChangeLang.click(id)) || (tbMenuButton.click(id)) |
285 | || (tbChangeLang.click(id)) || (tbMenuButton.click(id)) |
286 | || (tbPanelHeight.click(id)) || (tbSoftenHeight.click(id)) |
286 | || (tbPanelHeight.click(id)) || (tbSoftenHeight.click(id)) |
287 | || (tbButtonOffset.click(id)) { |
287 | || (tbButtonOffset.click(id)) { |
288 | SaveSettingsAndRestartProcess(TASKBAR); |
288 | SaveSettingsAndRestartProcess(TASKBAR); |
289 | } |
289 | } |
290 | } |
290 | } |
291 | 291 | ||
292 | void EventDockyProcessButton(dword id) |
292 | void EventDockyProcessButton(dword id) |
293 | { |
293 | { |
294 | if (BTN_DOCKY_ATTACHEMENT == id) { |
294 | if (BTN_DOCKY_ATTACHEMENT == id) { |
295 | dkLocation++; |
295 | dkLocation++; |
296 | if (dkLocation>4) dkLocation=1; |
296 | if (dkLocation>4) dkLocation=1; |
297 | DrawWindowContent(); |
297 | DrawWindowContent(); |
298 | SaveSettingsAndRestartProcess(DOCKY); |
298 | SaveSettingsAndRestartProcess(DOCKY); |
299 | } |
299 | } |
300 | if (dkFsize.click(id)) || (dkAshow.click(id)) { |
300 | if (dkFsize.click(id)) || (dkAshow.click(id)) { |
301 | SaveSettingsAndRestartProcess(DOCKY); |
301 | SaveSettingsAndRestartProcess(DOCKY); |
302 | } |
302 | } |
303 | } |
303 | } |
304 | 304 | ||
305 | 305 | ||
306 | stop: |
306 | stop: |