Subversion Repositories Kolibri OS

Rev

Rev 4232 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4232 Rev 4234
Line 3... Line 3...
3
;-------------------------------------------------------------------------------
3
;-------------------------------------------------------------------------------
4
    db	    "MENUET01"
4
    db	    "MENUET01"
5
    dd	    1, @code, @data, @mem, @stack, 0, 0
5
    dd	    1, @code, @data, @mem, @stack, 0, 0
6
;-------------------------------------------------------------------------------
6
;-------------------------------------------------------------------------------
7
    include "../../macros.inc"
7
    include "../../macros.inc"
-
 
8
    include "../../proc32.inc"
-
 
9
    include "../../dll.inc"
-
 
10
    ;include "../../debug.inc"
8
;===============================================================================
11
;===============================================================================
9
@code:
12
@code:
-
 
13
    mcall   9, buffer, -1
-
 
14
    mov     ecx, [buffer + 30]
-
 
15
    mcall   18, 21
-
 
16
    mov     [win.sid], eax
-
 
17
;-------------------------------------------------------------------------------
-
 
18
    mcall   68, 11
-
 
19
    stdcall dll.Load, @import
-
 
20
;-------------------------------------------------------------------------------
10
    mov     [tabs.index], byte 2
21
    mov     [tabs.index], byte 2
11
 
-
 
-
 
22
;-------------------------------------------------------------------------------
12
    mcall   48, 3, color, 40
23
    mcall   48, 3, color, 40
13
;-------------------------------------------------------------------------------
24
;-------------------------------------------------------------------------------
-
 
25
    invoke  ini.iget, ini.docky, ini.docky.sect.cfg, ini.docky.keys.fsize, 0
-
 
26
    mov     [docky.fsize], al
-
 
27
;-------------------------------------------------------------------------------
14
main_loop:
28
main_loop:
15
    mcall   10
29
    mcall   10
16
    cmp     eax, EV_REDRAW
30
    cmp     eax, EV_REDRAW
17
    je	    event_redraw
31
    je	    event_redraw
18
    cmp     eax, EV_BUTTON
32
    cmp     eax, EV_BUTTON
Line 38... Line 52...
38
    cmp     ah, 0x12
52
    cmp     ah, 0x12
39
    je	    .tabs.docky
53
    je	    .tabs.docky
40
    cmp     ah, 0x13
54
    cmp     ah, 0x13
41
    je	    .tabs.panel
55
    je	    .tabs.panel
Line -... Line 56...
-
 
56
 
-
 
57
    cmp     ah, 0x40
-
 
58
    je	    .docky.button_top
-
 
59
    cmp     ah, 0x41
-
 
60
    je	    .docky.button_left
-
 
61
    cmp     ah, 0x42
-
 
62
    je	    .docky.button_bottom
-
 
63
    cmp     ah, 0x43
-
 
64
    je	    .docky.button_right
42
 
65
 
43
    cmp     ah, 0x44
66
    cmp     ah, 0x44
-
 
67
    je	    .docky.checkbox_fsize
-
 
68
 
-
 
69
    cmp     ah, 0x45
-
 
70
    je	    .docky.kill
-
 
71
    cmp     ah, 0x46
Line 44... Line 72...
44
    je	    .checkbox_fsize
72
    je	    .docky.start
Line 45... Line 73...
45
 
73
 
46
    jmp     main_loop
74
    jmp     main_loop
Line 60... Line 88...
60
 .tabs.panel:
88
 .tabs.panel:
61
    mov     [tabs.index], byte 3
89
    mov     [tabs.index], byte 3
62
    call    win.draw
90
    call    win.draw
63
    jmp     main_loop
91
    jmp     main_loop
Line -... Line 92...
-
 
92
 
-
 
93
 .docky.button_top:
-
 
94
    invoke  ini.iset, ini.docky, ini.docky.sect.cfg, ini.docky.keys.location, 1
-
 
95
    call    docky.apply
-
 
96
    jmp     main_loop
-
 
97
 .docky.button_left:
-
 
98
    invoke  ini.iset, ini.docky, ini.docky.sect.cfg, ini.docky.keys.location, 2
-
 
99
    call    docky.apply
-
 
100
    jmp     main_loop
-
 
101
 .docky.button_bottom:
-
 
102
    invoke  ini.iset, ini.docky, ini.docky.sect.cfg, ini.docky.keys.location, 3
-
 
103
    call    docky.apply
-
 
104
    jmp     main_loop
-
 
105
 .docky.button_right:
-
 
106
    invoke  ini.iset, ini.docky, ini.docky.sect.cfg, ini.docky.keys.location, 4
-
 
107
    call    docky.apply
-
 
108
    jmp     main_loop
64
 
109
 
65
 .checkbox_fsize:
110
 .docky.checkbox_fsize:
66
    mov     al, 1
111
    mov     al, 1
67
    sub     al, byte [win.docky.fsize]
112
    sub     al, byte [docky.fsize]
68
    mov     [win.docky.fsize], al
113
    mov     [docky.fsize], al
69
    push    183
114
    push    183
70
    push    win.docky.fsize
115
    push    docky.fsize
-
 
116
    call    checkbox.draw
-
 
117
 
-
 
118
    xor     eax, eax
-
 
119
    mov     al, [docky.fsize]
-
 
120
    invoke  ini.iset, ini.docky, ini.docky.sect.cfg, ini.docky.keys.fsize, eax
-
 
121
    call    docky.apply
-
 
122
 
-
 
123
    jmp     main_loop
-
 
124
 
-
 
125
 .docky.kill:
-
 
126
    call    docky.kill
-
 
127
    jmp     main_loop
-
 
128
 .docky.start:
-
 
129
    call    docky.kill
71
    call    checkbox.draw
130
    call    docky.start
72
    jmp     main_loop
131
    jmp     main_loop
73
;-------------------------------------------------------------------------------
132
;-------------------------------------------------------------------------------
74
win.draw:
133
win.draw:
Line 171... Line 230...
171
    or	    ecx, 0xC0000000
230
    or	    ecx, 0xC0000000
172
    mcall   4, <20, 45>, , tabs.docky.frame_pos_title, , [color.work]
231
    mcall   4, <20, 45>, , tabs.docky.frame_pos_title, , [color.work]
Line 173... Line 232...
173
 
232
 
174
    mcall   8, < 81, 84>, < 64, 24>, 0x40, [color.workE]
233
    mcall   8, < 81, 84>, < 64, 24>, 0x40, [color.workE]
175
    mcall    , < 58, 64>, < 91, 24>, 0x41
234
    mcall    , < 58, 64>, < 91, 24>, 0x41
176
    mcall    , <125, 64>, < 91, 24>, 0x42
235
    mcall    , < 81, 84>, <118, 24>, 0x42
Line 177... Line 236...
177
    mcall    , < 81, 84>, <118, 24>, 0x43
236
    mcall    , <125, 64>, < 91, 24>, 0x43
178
 
237
 
179
    mov     ecx, [color.textE]
238
    mov     ecx, [color.textE]
180
    or	    ecx, 0x80000000
239
    or	    ecx, 0x80000000
Line 197... Line 256...
197
    mov     ecx, [color.text]
256
    mov     ecx, [color.text]
198
    or	    ecx, 0x80000000
257
    or	    ecx, 0x80000000
199
    mcall   4, <20, 187>, , tabs.docky.checkbox_fsize_title
258
    mcall   4, <20, 187>, , tabs.docky.checkbox_fsize_title
Line 200... Line 259...
200
 
259
 
201
    push    183
260
    push    183
202
    push    win.docky.fsize
261
    push    docky.fsize
Line 203... Line 262...
203
    call    checkbox.draw
262
    call    checkbox.draw
204
 
263
 
205
  ; == FRAME: THEARD == ;
264
  ; == FRAME: THEARD == ;
206
    mcall   13, <10, 226>, <220, 44>, [color.workE]
265
    mcall   13, <10, 226>, <219, 44>, [color.workE]
Line 207... Line 266...
207
    mcall     , <11, 224>, <221, 42>, [color.textE]
266
    mcall     , <11, 224>, <220, 42>, [color.textE]
208
    mcall     , <12, 222>, <222, 40>, [color.work]
267
    mcall     , <12, 222>, <221, 40>, [color.work]
209
 
268
 
Line 210... Line 269...
210
    mov     ecx, [color.text]
269
    mov     ecx, [color.text]
211
    or	    ecx, 0xC0000000
270
    or	    ecx, 0xC0000000
Line 212... Line 271...
212
    mcall   4, <20, 217>, , tabs.docky.frame_theard_title, , [color.work]
271
    mcall   4, <20, 217>, , tabs.docky.frame_theard_title, , [color.work]
213
 
272
 
214
    mcall   8, < 20,  98>, <230, 24>, 0x45, [color.workE]
273
    mcall   8, < 20,  98>, <231, 20>, 0x45, [color.workE]
215
    mcall   8, <128,  98>,	    , 0x46
274
    mcall    , <128,  98>,	    , 0x46
Line 256... Line 315...
256
    mov     edi, ecx
315
    mov     edi, ecx
257
    shr     edi, 16
316
    shr     edi, 16
258
    add     edi, 3
317
    add     edi, 3
259
    mcall   4, <189, edi>, [color.text], checkbox.off, 5
318
    mcall   4, <189, edi>, [color.text], checkbox.off, 5
260
    ret
319
    ret
-
 
320
;-------------------------------------------------------------------------------
-
 
321
docky.kill:
-
 
322
    mov     dl, 0
-
 
323
    mcall   9, buffer, -1
-
 
324
    mov     ecx, eax
-
 
325
 .search:
-
 
326
    mcall   9, buffer
-
 
327
    cmp     [buffer + 10], dword "@doc"
-
 
328
    je	    .kill
-
 
329
    cmp     [buffer + 10], dword "@DOC"
-
 
330
    jne     .continue
-
 
331
 .kill:
-
 
332
    mov     dl, 1
-
 
333
    mcall   18, 2
-
 
334
 .continue:
-
 
335
    dec     ecx
-
 
336
    cmp     ecx, 0
-
 
337
    jne     .search
-
 
338
 
-
 
339
    ret
-
 
340
;-------------------------------------------------------------------------------
-
 
341
docky.start:
-
 
342
    mov     [buffer +  0], dword 7
-
 
343
    mov     [buffer +  4], dword 0
-
 
344
    mov     [buffer +  8], dword 0
-
 
345
    mov     [buffer + 20], dword "@doc"
-
 
346
    mov     [buffer + 24], word  "ky"
-
 
347
    mov     [buffer + 26], byte  0
-
 
348
    mcall   70, buffer
-
 
349
 
-
 
350
    mcall   5, 5
-
 
351
    mcall   18, 3, [win.sid]
-
 
352
 
-
 
353
    ret
-
 
354
;-------------------------------------------------------------------------------
-
 
355
docky.apply:
-
 
356
    call    docky.kill
-
 
357
    cmp     dl, byte 0
-
 
358
    je	    .end
-
 
359
    call    docky.start
-
 
360
 .end:
-
 
361
    ret
261
;===============================================================================
362
;===============================================================================
-
 
363
@import:
-
 
364
    library ini, "libini.obj"
-
 
365
    import  ini, ini.iget, "ini_get_int", ini.iset, "ini_set_int"
-
 
366
;===============================================================================
-
 
367
ini.docky:
-
 
368
    db	    "settings/docky.ini", 0
-
 
369
 .sect.cfg:
-
 
370
    db	    "@", 0
-
 
371
 .keys.fsize:
-
 
372
    db	    "fsize", 0
-
 
373
 .keys.location:
-
 
374
    db	    "location", 0
-
 
375
 
262
win.title:
376
win.title:
263
    db	    "Desktop configuration", 0
377
    db	    "Desktop configuration", 0
Line 264... Line 378...
264
 
378
 
265
tabs.walls_title:
379
tabs.walls_title:
Line 303... Line 417...
303
@data:
417
@data:
304
;===============================================================================
418
;===============================================================================
305
    rb	    2048
419
    rb	    2048
306
@stack:
420
@stack:
307
;-------------------------------------------------------------------------------
421
;-------------------------------------------------------------------------------
-
 
422
win.sid:
-
 
423
    rd	    1
-
 
424
 
308
win.docky.fsize:
425
docky.fsize:
309
    rb	    1
426
    rb	    1
Line 310... Line 427...
310
 
427
 
311
tabs.index:
428
tabs.index:
Line 321... Line 438...
321
 .textE:
438
 .textE:
322
    rd	    1
439
    rd	    1
323
 .text:
440
 .text:
324
    rd	    2
441
    rd	    2
Line -... Line 442...
-
 
442
 
-
 
443
buffer:
-
 
444
    rb	    1024
325
 
445
 
326
@mem:
446
@mem: