Subversion Repositories Kolibri OS

Rev

Rev 7483 | Rev 9568 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7483 Rev 8346
Line 42... Line 42...
42
KMENUITEM_SEPARATOR equ 2
42
KMENUITEM_SEPARATOR equ 2
Line 43... Line 43...
43
 
43
 
44
include 'lang.inc'
44
include 'lang.inc'
45
include '../../macros.inc'
45
include '../../macros.inc'
-
 
46
include '../../proc32.inc'
46
include '../../proc32.inc'
47
include '../../KOSfuncs.inc'
47
include '../../dll.inc'
48
include '../../dll.inc'
48
include '../../develop/libraries/box_lib/trunk/box_lib.mac' ;for uses checkBox and editBox
49
include '../../develop/libraries/box_lib/trunk/box_lib.mac' ;for uses checkBox and editBox
49
include '../../develop/libraries/box_lib/load_lib.mac'
50
include '../../load_lib.mac'
Line 50... Line 51...
50
@use_library
51
@use_library
51
 
52
 
Line 52... Line 53...
52
START:
53
START:
53
   mcall 48,3,sc,sizeof.system_colors ;get system colors
54
   mcall SF_STYLE_SETTINGS,SSF_GET_COLORS,sc,sizeof.system_colors ;get system colors
54
 
55
 
Line 55... Line 56...
55
   stdcall dll.Load, @IMPORT
56
   stdcall dll.Load, @IMPORT
56
   or      eax, eax
57
   or      eax, eax
Line 57... Line 58...
57
   jnz     exit
58
   jnz     exit
58
 
59
 
59
   load_libraries l_libs_start,load_lib_end
60
   load_libraries l_libs_start,load_lib_end
Line 60... Line 61...
60
   stdcall [OpenDialog_Init],OpenDialog_data
61
   stdcall [OpenDialog_Init],OpenDialog_data
61
 
62
 
62
   ;set mask for events:
63
   ;set mask for events:
Line 118... Line 119...
118
   call getDeviceList
119
   call getDeviceList
Line 119... Line 120...
119
 
120
 
Line 120... Line 121...
120
   call  draw_window
121
   call  draw_window
121
 
122
 
Line 122... Line 123...
122
event_wait:
123
event_wait:
123
   mcall 10
124
   mcall SF_WAIT_EVENT
Line 124... Line 125...
124
 
125
 
Line 140... Line 141...
140
redraw:
141
redraw:
141
   call    draw_window
142
   call    draw_window
142
   jmp     event_wait
143
   jmp     event_wait
Line 143... Line 144...
143
 
144
 
144
key:
145
key:
145
   mcall 2
146
   mcall SF_GET_KEY
146
   invoke  edit_box_key, editLabel
147
   invoke  edit_box_key, editLabel
147
   invoke  edit_box_key, editMBR
148
   invoke  edit_box_key, editMBR
Line 148... Line 149...
148
   jmp     event_wait
149
   jmp     event_wait
149
 
150
 
Line 150... Line 151...
150
button:
151
button:
151
    mcall 17
152
    mcall SF_GET_BUTTON
152
 
153
 
153
    cmp ah, 1         ;Close button
154
    cmp ah, 1         ;Close button
154
    jne @f
155
    jne @f
155
exit:
156
exit:
156
    mcall -1
157
    mcall SF_TERMINATE_PROCESS
157
@@:
158
@@:
158
   cmp ah, 2          ;Format button
159
   cmp ah, 2          ;Format button
Line 223... Line 224...
223
butFormat:
224
butFormat:
224
   ret
225
   ret
Line 225... Line 226...
225
 
226
 
226
butSelectFS:
227
butSelectFS:
227
   push eax ebx ecx
228
   push eax ebx ecx
Line 228... Line 229...
228
   mcall 9, pi, -1 ;get window coord
229
   mcall SF_THREAD_INFO, pi, -1 ;get window coord
229
 
230
 
230
   mov eax, dword[pi+34]
231
   mov eax, dword[pi+34]
Line 239... Line 240...
239
   pop ecx ebx eax
240
   pop ecx ebx eax
240
   ret
241
   ret
Line 241... Line 242...
241
 
242
 
242
butUnit:
243
butUnit:
243
   push eax ebx ecx
244
   push eax ebx ecx
Line 244... Line 245...
244
   mcall 9, pi, -1
245
   mcall SF_THREAD_INFO, pi, -1
245
 
246
 
246
   mov eax, dword[pi+34]
247
   mov eax, dword[pi+34]
Line 255... Line 256...
255
   pop ecx ebx eax
256
   pop ecx ebx eax
256
   ret
257
   ret
Line 257... Line 258...
257
 
258
 
258
butDevice:
259
butDevice:
259
   push eax ebx ecx
260
   push eax ebx ecx
Line 260... Line 261...
260
   mcall 9, pi, -1
261
   mcall SF_THREAD_INFO, pi, -1
261
 
262
 
262
   mov eax, dword[pi+34]
263
   mov eax, dword[pi+34]
Line 277... Line 278...
277
warning_title: db 'Warning!',0
278
warning_title: db 'Warning!',0
278
draw_warningWindow:
279
draw_warningWindow:
279
   ret
280
   ret
Line 280... Line 281...
280
 
281
 
281
draw_window:
282
draw_window:
Line 282... Line 283...
282
   mcall  12, 1
283
   mcall  SF_REDRAW, SSF_BEGIN_DRAW
283
 
284
 
284
        mov     eax, 0                  ; function 0 : define and draw window
285
        mov     eax, SF_CREATE_WINDOW           ; define and draw window
285
        mov     ebx, 100 * 65536 + (290+delta)  ; [x start] *65536 + [x size]
286
        mov     ebx, 100 * 65536 + (290+delta)  ; [x start] *65536 + [x size]
286
        mov     ecx, 100 * 65536 + (310+dy)  ; [y start] *65536 + [y size]
287
        mov     ecx, 100 * 65536 + (310+dy)  ; [y start] *65536 + [y size]
287
        mov     edx,[sc.work]    ;0x14FFFFFF
288
        mov     edx,[sc.work]    ;0x14FFFFFF
Line 291... Line 292...
291
                                        ; 0x80000000 = color glide
292
                                        ; 0x80000000 = color glide
292
        mov     edi, title
293
        mov     edi, title
293
        mcall
294
        mcall
Line 294... Line -...
294
 
-
 
295
 
-
 
296
        mov ebx, (290+delta-Otstup-130+10)*65536+130
-
 
297
        mov ecx, (270+dy)*65536+(20+3)
295
 
298
        mov edx, 0x00000002
296
 
Line 299... Line -...
299
        mov esi, 0xAABBCC
-
 
300
        mcall 8
-
 
301
 
297
        mov esi, 0xAABBCC
302
        mov ebx, (290+delta-Otstup-50-2)*65536+(50+2)
298
        mcall SF_DEFINE_BUTTON, (290+delta-Otstup-130+10)*65536+130, (270+dy)*65536+(20+3), 2
303
        mov ecx, (210+dy)*65536+21 ;14
-
 
Line 304... Line 299...
304
        mov edx, 0x00000003
299
 
305
        mov esi, 0xAABBCC
-
 
306
        mcall 8
-
 
307
 
300
        inc edx
308
        ;button select FS
301
        mcall , (290+delta-Otstup-50-2)*65536+(50+2), (210+dy)*65536+21 ;14
309
        mov ebx, Otstup*65536+120
302
 
Line 310... Line 303...
310
        mov ecx, (110)*65536+(21)
303
        ;button select FS
311
        mov edx, 0x00000004
-
 
312
        mov esi, 0xFFFFFF
-
 
313
        mcall 8
304
        inc edx
314
 
305
        mov esi, 0xFFFFFF
315
        ;button select unit size
-
 
Line 316... Line 306...
316
        mov ebx, (Otstup+80+30+delta)*65536+120
306
        mcall , Otstup*65536+120, (110)*65536+(21)
317
        mov ecx, (110)*65536+(21)
-
 
318
        mov edx, 0x00000005
-
 
319
        mov esi, 0xFFFFFF
307
 
320
        mcall 8
308
        ;button select unit size
321
 
-
 
Line 322... Line 309...
322
        ;button select device
309
        inc edx
323
        mov ebx, (Otstup+80+30+delta)*65536+120
310
        mcall , (Otstup+80+30+delta)*65536+120, (110)*65536+(21)
Line 324... Line 311...
324
        mov ecx, (60)*65536+(21)
311
 
Line 343... Line 330...
343
        mov     ecx,[sc.work]
330
        mov     ecx,[sc.work]
344
        mov     dword [frame_data2.font_backgr_color],ecx
331
        mov     dword [frame_data2.font_backgr_color],ecx
345
        push    dword frame_data2
332
        push    dword frame_data2
346
        invoke  frame_draw
333
        invoke  frame_draw
Line 347... Line 334...
347
 
334
 
348
        mcall 12, 2
335
        mcall SF_REDRAW, SSF_END_DRAW
Line 349... Line 336...
349
        ret
336
        ret
Line 383... Line 370...
383
  .4 db '8192 ¡ ©â', 0
370
  .4 db '8192 ¡ ©â', 0
384
  .5 db '16 Š¡', 0
371
  .5 db '16 Š¡', 0
385
  .6 db '32 Š¡', 0
372
  .6 db '32 Š¡', 0
386
  .7 db '64 Š¡', 0
373
  .7 db '64 Š¡', 0
Line 387... Line -...
387
 
-
 
388
head_f_i:
-
 
389
  head_f_l  db '‘¨á⥬­ ï ®è¨¡ª ',0
-
 
390
  err_message_found_lib0 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'proc_lib.obj',39,0
-
 
391
  err_message_import0 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'proc_lib.obj',39,0
-
 
392
  err_message_found_lib1 db '¥ ­ ©¤¥­  ¡¨¡«¨®â¥ª  ',39,'kmenu.obj',39,0
-
 
393
  err_message_import1 db 'Žè¨¡ª  ¯à¨ ¨¬¯®à⥠¡¨¡«¨®â¥ª¨ ',39,'kmenu',39,0
-
 
394
 
374
 
Line 395... Line 375...
395
else           ;EN language
375
else           ;EN language
Line 396... Line 376...
396
 
376
 
Line 416... Line 396...
416
  .4 db '8192 bytes', 0
396
  .4 db '8192 bytes', 0
417
  .5 db '16 Kb', 0
397
  .5 db '16 Kb', 0
418
  .6 db '32 Kb', 0
398
  .6 db '32 Kb', 0
419
  .7 db '64 Kb', 0
399
  .7 db '64 Kb', 0
Line 420... Line -...
420
 
-
 
421
head_f_i:
-
 
422
  head_f_l  db 'System error',0
-
 
423
  err_message_found_lib0 db 'Could not find library ',39,'proc_lib.obj',39,0
-
 
424
  err_message_import0 db 'Error importing library ',39,'proc_lib.obj',39,0
-
 
425
  err_message_found_lib1 db 'Could not find library ',39,'kmenu.obj',39,0
-
 
426
  err_message_import1 db 'Error importing library ',39,'kmenu',39,0
-
 
427
 
400
 
Line 428... Line 401...
428
end if
401
end if
Line 448... Line 421...
448
   push eax ebx ecx esi
421
   push eax ebx ecx esi
449
   stdcall [ksubmenu_new]
422
   stdcall [ksubmenu_new]
450
   mov [kmDevice], eax
423
   mov [kmDevice], eax
451
   sizeBDVK = 560   ;304 ;
424
   sizeBDVK = 560   ;304 ;
Line 452... Line 425...
452
 
425
 
Line 453... Line 426...
453
   mcall 68, 11
426
   mcall SF_SYS_MISC, SSF_HEAP_INIT
454
 
427
 
455
   mcall 68, 12, sizeBDVK*maxDeviceCount+32
428
   mcall SF_SYS_MISC, SSF_MEM_ALLOC, sizeBDVK*maxDeviceCount+32
456
   mov dword[read_folder_struct.return], eax
429
   mov dword[read_folder_struct.return], eax
457
   mcall 70, read_folder_struct
430
   mcall SF_FILE, read_folder_struct
458
   cmp eax, 0
431
   cmp eax, 0
459
   je .next
432
   je .next
460
   cmp eax, 6
433
   cmp eax, 6
Line 498... Line 471...
498
   mov     ebx, Otstup * 65536 + 49-6    ; draw info text with function 4 (x, y)
471
   mov     ebx, Otstup * 65536 + 49-6    ; draw info text with function 4 (x, y)
499
   mov     ecx, 0x90000000 ;0x90224466 ;0x224466
472
   mov     ecx, 0x90000000 ;0x90224466 ;0x224466
500
   mov eax, text.volume
473
   mov eax, text.volume
501
   mov     edx, eax
474
   mov     edx, eax
502
   mov     esi, 13
475
   mov     esi, 13
503
   mcall 4
476
   mcall SF_DRAW_TEXT
Line 504... Line 477...
504
 
477
 
505
   mov     ebx, Otstup * 65536 + 99-6
478
   mov     ebx, Otstup * 65536 + 99-6
506
   mov     edx, text.fs
479
   mov     edx, text.fs
507
   mov     esi, 12
480
   mov     esi, 12
Line 508... Line 481...
508
   mcall 4
481
   mcall SF_DRAW_TEXT
509
 
482
 
510
   mov     ebx, (Otstup+80+30+delta) * 65536 + 99-6
483
   mov     ebx, (Otstup+80+30+delta) * 65536 + 99-6
511
   mov     edx, text.unit
484
   mov     edx, text.unit
Line 512... Line 485...
512
   mov     esi, 21
485
   mov     esi, 21
513
   mcall 4
486
   mcall SF_DRAW_TEXT
514
 
487
 
515
   mov     ebx, (Otstup+80+30+delta) * 65536 + 49-6
488
   mov     ebx, (Otstup+80+30+delta) * 65536 + 49-6
Line 516... Line 489...
516
   mov     edx, text.disk
489
   mov     edx, text.disk
517
   mov     esi, 9
490
   mov     esi, 9
518
   mcall 4
491
   mcall SF_DRAW_TEXT
519
 
492
 
Line 520... Line 493...
520
;   mov     ebx, Otstup * 65536 + (151-6+dy)
493
;   mov     ebx, Otstup * 65536 + (151-6+dy)
521
;   mov     edx, text.option
494
;   mov     edx, text.option
522
;   mov     esi, 8
495
;   mov     esi, 8
523
;   mcall 4
496
;   mcall SF_DRAW_TEXT
Line 565... Line 538...
565
   jmp .printUnit
538
   jmp .printUnit
566
@@:
539
@@:
567
   mov byte[kmUnitID], 0
540
   mov byte[kmUnitID], 0
568
   mov     edx, unittext.0
541
   mov     edx, unittext.0
569
.printUnit:
542
.printUnit:
570
   mcall 4
543
   mcall SF_DRAW_TEXT
Line 571... Line 544...
571
 
544
 
572
   mov     ebx, (Otstup+5) * 65536 + (110+3)
545
   mov     ebx, (Otstup+5) * 65536 + (110+3)
573
   mov dl, byte[kmID]
546
   mov dl, byte[kmID]
574
   cmp dl, 0
547
   cmp dl, 0
Line 598... Line 571...
598
@@:
571
@@:
599
   mov byte[kmID], 0
572
   mov byte[kmID], 0
600
   mov     edx, kmNone
573
   mov     edx, kmNone
601
.printFS:
574
.printFS:
602
   ;mov     esi, 8
575
   ;mov     esi, 8
603
   mcall 4
576
   mcall SF_DRAW_TEXT
Line 604... Line 577...
604
 
577
 
605
   ;button device
578
   ;button device
606
   mov     ebx, (Otstup+80+30+delta +5) * 65536 + (60+3)
579
   mov     ebx, (Otstup+80+30+delta +5) * 65536 + (60+3)
607
   mov edx, dword[kmDeviceID]
580
   mov edx, dword[kmDeviceID]
608
   shl edx, 2
581
   shl edx, 2
609
   add edx, deviceAdrStr
582
   add edx, deviceAdrStr
610
   mov edx, dword[edx]
583
   mov edx, dword[edx]
611
   ;call setCurrentDeviceInEDX
584
   ;call setCurrentDeviceInEDX
Line 612... Line 585...
612
   mcall 4
585
   mcall SF_DRAW_TEXT
613
 
586
 
614
   ;buttons text
587
   ;buttons text
615
   mov     ebx, (290+delta-Otstup-130+10+2+10) * 65536 + (277-3+dy)
588
   mov     ebx, (290+delta-Otstup-130+10+2+10) * 65536 + (277-3+dy)
616
   mov     ecx, 0x90FFFFFF
589
   mov     ecx, 0x90FFFFFF
617
   mov eax, text.format
590
   mov eax, text.format
618
   mov     edx, eax
591
   mov     edx, eax
Line 619... Line 592...
619
   mov     esi, 6
592
   mov     esi, 6
620
   mcall 4
593
   mcall SF_DRAW_TEXT
621
 
594
 
622
   mov     ebx, (290+delta-Otstup-52+6+8) * 65536 + (213+dy)
595
   mov     ebx, (290+delta-Otstup-52+6+8) * 65536 + (213+dy)
623
   ;mov     ecx, 0xFFFFFF
596
   ;mov     ecx, 0xFFFFFF
624
   mov eax, browse ;text.browse
597
   mov eax, browse ;text.browse
Line 625... Line 598...
625
   mov     edx, eax
598
   mov     edx, eax
626
   mov     esi, 6
599
   mov     esi, 6
Line 775... Line 748...
775
        akmenuitem_new  db 'kmenuitem_new',0
748
        akmenuitem_new  db 'kmenuitem_new',0
776
        akmenuitem_delete db 'kmenuitem_delete',0
749
        akmenuitem_delete db 'kmenuitem_delete',0
777
        akmenuitem_draw  db 'kmenuitem_draw',0
750
        akmenuitem_draw  db 'kmenuitem_draw',0
Line 778... Line 751...
778
 
751
 
779
align 4
752
align 4
780
proclib_import:
753
import_proclib:
781
        OpenDialog_Init dd aOpenDialog_Init
754
        OpenDialog_Init dd aOpenDialog_Init
782
        OpenDialog_Start dd aOpenDialog_Start
755
        OpenDialog_Start dd aOpenDialog_Start
783
dd 0,0
756
dd 0,0
784
        aOpenDialog_Init db 'OpenDialog_init',0
757
        aOpenDialog_Init db 'OpenDialog_init',0
Line 837... Line 810...
837
;kmExt3: db 'EXT3', 0
810
;kmExt3: db 'EXT3', 0
838
;kmExt4: db 'EXT4', 0
811
;kmExt4: db 'EXT4', 0
839
;kmXFS: db 'XFS', 0
812
;kmXFS: db 'XFS', 0
Line 840... Line 813...
840
 
813
 
841
l_libs_start:
814
l_libs_start:
842
    lib0 l_libs lib0_name, sys_path, file_name, system_dir0, err_message_found_lib0, head_f_l, proclib_import,err_message_import0, head_f_i
815
    lib0 l_libs lib0_name, file_name, system_dir0, import_proclib
843
    lib1 l_libs lib1_name, sys_path, file_name, system_dir0, err_message_found_lib1, head_f_l, import_libkmenu,err_message_import1,head_f_i
816
    lib1 l_libs lib1_name, file_name, system_dir0, import_libkmenu
Line 844... Line 817...
844
load_lib_end:
817
load_lib_end:
845
 
818
 
846
;ðàçìåðû: 80 è 120
819
;ðàçìåðû: 80 è 120