Subversion Repositories Kolibri OS

Rev

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

Rev 3271 Rev 3435
Line 3... Line 3...
3
;
3
;
4
;    Compile with FASM for Menuet
4
;    Compile with FASM for Menuet
5
;
5
;
6
;    < russian edition by Ivan Poddubny >
6
;    < russian edition by Ivan Poddubny >
7
;    < skin selection by Mike Semenyako >
7
;    < skin selection by Mike Semenyako >
-
 
8
;******************************************************************************
-
 
9
; last update:  01/04/2013
-
 
10
; written by:   Marat Zakiyanov aka Mario79, aka Mario
-
 
11
; changes:      select colors with ColorDialog
-
 
12
;               some redesign of the look of the program
-
 
13
;******************************************************************************
8
;
-
 
9
; last update:  10/09/2010
14
; last update:  10/09/2010
10
; written by:   Marat Zakiyanov aka Mario79, aka Mario
15
; written by:   Marat Zakiyanov aka Mario79, aka Mario
11
; changes:      select path with OpenDialog
16
; changes:      select path with OpenDialog
12
;******************************************************************************
17
;******************************************************************************
13
	use32
18
	use32
14
	org 0
19
	org 0
15
	db 'MENUET01'	; identifier
20
	db 'MENUET01'	; identifier
16
	dd 1		; header version
21
	dd 1		; header version
17
	dd START	; start address
22
	dd START	; start address
18
	dd I_END	; file size
23
	dd IM_END	; file size
19
	dd i_end	; memory
24
	dd I_END	; memory
20
	dd stacktop	; stack pointer
25
	dd stacktop	; stack pointer
21
	dd skin_info	; parameters
26
	dd skin_info	; parameters
22
	dd cur_dir_path	; path to file
27
	dd cur_dir_path	; path to file
Line 23... Line 28...
23
 
28
 
Line 27... Line 32...
27
include 'kglobals.inc'
32
include 'kglobals.inc'
28
include 'unpacker.inc'
33
include 'unpacker.inc'
29
include '../../../develop/libraries/box_lib/load_lib.mac'
34
include '../../../develop/libraries/box_lib/load_lib.mac'
30
	@use_library
35
	@use_library
31
;******************************************************************************
36
;******************************************************************************
32
 
-
 
33
 
-
 
-
 
37
;--------------------------------------
34
struct SKIN_HEADER
38
struct SKIN_HEADER
35
  ident   dd ?
39
  ident   dd ?
36
  version dd ?
40
  version dd ?
37
  params  dd ?
41
  params  dd ?
38
  buttons dd ?
42
  buttons dd ?
39
  bitmaps dd ?
43
  bitmaps dd ?
40
ends
44
ends
41
 
-
 
-
 
45
;--------------------------------------
42
struct SKIN_PARAMS
46
struct SKIN_PARAMS
43
  skin_height    dd ?
47
  skin_height    dd ?
44
  margin.right   dw ?
48
  margin.right   dw ?
45
  margin.left    dw ?
49
  margin.left    dw ?
46
  margin.bottom  dw ?
50
  margin.bottom  dw ?
Line 52... Line 56...
52
  colors_1.outer dd ?
56
  colors_1.outer dd ?
53
  colors_1.frame dd ?
57
  colors_1.frame dd ?
54
  dtp.size       dd ?
58
  dtp.size       dd ?
55
  dtp.data       db 40 dup (?)
59
  dtp.data       db 40 dup (?)
56
ends
60
ends
57
 
-
 
-
 
61
;--------------------------------------
58
struct SKIN_BUTTONS
62
struct SKIN_BUTTONS
59
  type     dd ?
63
  type     dd ?
60
  pos:
64
  pos:
61
    left   dw ?
65
    left   dw ?
62
    top    dw ?
66
    top    dw ?
63
  size:
67
  size:
64
    width  dw ?
68
    width  dw ?
65
    height dw ?
69
    height dw ?
66
ends
70
ends
67
 
-
 
-
 
71
;--------------------------------------
68
struct SKIN_BITMAPS
72
struct SKIN_BITMAPS
69
  kind  dw ?
73
  kind  dw ?
70
  type  dw ?
74
  type  dw ?
71
  _data  dd ?
75
  _data  dd ?
72
ends
76
ends
-
 
77
;--------------------------------------
-
 
78
frame_1:
-
 
79
  .x      = 5
-
 
80
  .y      = 220
-
 
81
  .width  = 420
-
 
82
  .height = 50
-
 
83
;--------------------------------------  
73
 
84
frame_2:
-
 
85
  .x      = 5
-
 
86
  .y      = 280
-
 
87
  .width  = 420
-
 
88
  .height = 50
74
;---------------------------------------------------------------------
89
;---------------------------------------------------------------------
75
START:		; start of execution
90
START:		; start of execution
76
;---------------------------------------------------------------------
91
;---------------------------------------------------------------------
77
	mcall	68,11
92
	mcall	68,11
Line 125... Line 140...
125
	push	dword OpenDialog_data
140
	push	dword OpenDialog_data
126
	call	[OpenDialog_Init]
141
	call	[OpenDialog_Init]
Line 127... Line 142...
127
 
142
 
128
	push	dword OpenDialog_data2
143
	push	dword OpenDialog_data2
129
	call	[OpenDialog_Init]
-
 
-
 
144
	call	[OpenDialog_Init]
-
 
145
;--------------------------------------------------------------------
-
 
146
;init_ColorDialog	ColorDialog_data
-
 
147
	push    dword ColorDialog_data
-
 
148
	call    [ColorDialog_Init]
130
	
149
;--------------------------------------------------------------------
131
; prepare for PathShow
150
; prepare for PathShow
132
	push	dword PathShow_data_1
151
	push	dword PathShow_data_1
Line 133... Line 152...
133
	call	[PathShow_prepare]
152
	call	[PathShow_prepare]
Line 140... Line 159...
140
;---------------------------------------------------------------------	
159
;---------------------------------------------------------------------	
141
red:
160
red:
142
	call	draw_window		; at first, draw the window
161
	call	draw_window		; at first, draw the window
143
;---------------------------------------------------------------------	
162
;---------------------------------------------------------------------	
144
still:
163
still:
145
	mcall	23,5	; wait here for event
164
	mcall	10	; wait here for event
Line 146... Line 165...
146
 
165
 
147
	dec	eax	; redraw request ?
166
	dec	eax	; redraw request ?
-
 
167
	jz	red
148
	jz	red
168
 
149
	dec	eax	; key in buffer ?
169
	dec	eax	; key in buffer ?
-
 
170
	jz	key
150
	jz	key
171
 
151
	dec	eax	; button in buffer ?
172
	dec	eax	; button in buffer ?
Line 152... Line -...
152
	jz	button
-
 
153
 
-
 
154
	call	draw_cursor
173
	jz	button
155
 
174
 
156
	jmp	still
175
	jmp	still
157
;---------------------------------------------------------------------
176
;---------------------------------------------------------------------
158
key:		; key
177
key:		; key
Line 225... Line 244...
225
	jb	no_new_colour
244
	jb	no_new_colour
Line 226... Line 245...
226
 
245
 
227
	cmp	ah,41
246
	cmp	ah,41
Line -... Line 247...
-
 
247
	jg	no_new_colour
-
 
248
	
-
 
249
;---------------------------------------------------------------------	
-
 
250
.start_ColorDialog:
-
 
251
	push    dword ColorDialog_data
-
 
252
	call    [ColorDialog_Start]
-
 
253
; 2 - use another method/not found program
-
 
254
	cmp	[ColorDialog_data.status],2
-
 
255
	je	still
-
 
256
; 1 - OK, color selected	
-
 
257
	cmp	[ColorDialog_data.status],1
-
 
258
	jne	still
228
	jg	no_new_colour
259
;---------------------------------------------------------------------	
229
	
260
	
230
	shr	eax,8
261
	shr	eax,8
231
	sub	eax,31
262
	sub	eax,31
-
 
263
	shl	eax,2
232
	shl	eax,2
264
	mov	ebx,[ColorDialog_data.color]
233
	mov	ebx,[color]
265
	and	ebx,0xffffff	; temporary for ColorDialog!!!!!!!!!!
234
	mov	[eax+color_table],ebx
266
	mov	[eax+color_table],ebx
Line 235... Line 267...
235
 	cmp	dword[not_packed_area+SKIN_HEADER.ident],'SKIN'
267
 	cmp	dword[not_packed_area+SKIN_HEADER.ident],'SKIN'
Line 252... Line 284...
252
	mcall
284
	mcall
253
;--------------------------------------
285
;--------------------------------------
254
noid1:
286
noid1:
255
 	jmp	still
287
 	jmp	still
256
;---------------------------------------------------------------------
288
;---------------------------------------------------------------------
257
draw_cursor:
-
 
258
	pusha
-
 
259
	mcall	37,2
-
 
260
	cmp	eax,0
-
 
261
	jne	dc1
-
 
262
	popa
-
 
263
	ret
-
 
264
;--------------------------------------
-
 
265
dc1:
-
 
266
	mcall	37,1
-
 
267
	mov	ebx,eax
-
 
268
	shr	ebx,16
-
 
269
	mov	ecx,eax
-
 
270
	and	ecx,0xffff
-
 
271
	cmp	ecx,29
-
 
272
	jbe	no_color
-
 
273
 
-
 
274
 	cmp	ebx,32
-
 
275
	jbe	no_color
-
 
276
 
-
 
277
	cmp	ebx,266	; CHANGE COLOR
-
 
278
	jb	no_color
-
 
279
 
-
 
280
	cmp	ebx,266+20*3
-
 
281
	jg	no_color
-
 
282
 
-
 
283
 	cmp	ecx,30+128
-
 
284
	jge	no_color
-
 
285
 
-
 
286
	cmp	ecx,29
-
 
287
	jb	no_color
-
 
288
 
-
 
289
	sub	ebx,266
-
 
290
	mov	eax,ebx
-
 
291
	cdq
-
 
292
	mov	ebx,20
-
 
293
	div	ebx
-
 
294
	mov	ebx,2
-
 
295
	sub	ebx,eax
-
 
296
	add	ecx,-30
-
 
297
	not	ecx
-
 
298
	shl	ecx,1
-
 
299
 
-
 
300
	mov	byte [ebx+color],cl
-
 
301
	call	draw_color
-
 
302
no_color:
-
 
303
	popa
-
 
304
	ret
-
 
305
;---------------------------------------------------------------------
-
 
306
load_file:
289
load_file:
307
;---------------------------------------------------------------------
290
;---------------------------------------------------------------------
308
; invoke OpenDialog
291
; invoke OpenDialog
309
	mov	[OpenDialog_data.type],dword 0
292
	mov	[OpenDialog_data.type],dword 0
310
	push	dword OpenDialog_data
293
	push	dword OpenDialog_data
Line 410... Line 393...
410
	mov	[ebx+12],dword 10*4		; bytes to write
393
	mov	[ebx+12],dword 10*4		; bytes to write
411
	mov	[ebx+16],dword color_table	; address
394
	mov	[ebx+16],dword color_table	; address
412
	mcall	70
395
	mcall	70
413
	ret
396
	ret
414
;---------------------------------------------------------------------
397
;---------------------------------------------------------------------
415
draw_color:
398
draw_button_row:
-
 
399
	mov	edx,0x60000000 + 31		; BUTTON ROW
-
 
400
	mov	ebx,220*65536+14
-
 
401
	mov	ecx,10*65536+14
416
	pusha
402
	mov	eax,8
417
	mcall	13,<266,60>,<170,30>,[color]
403
;-----------------------------------
-
 
404
.newb:
-
 
405
	mcall
418
	mcall	,,<200,10>,[w_work]
406
	add	ecx,20*65536
-
 
407
	inc	edx
419
	mcall	47,<8,0+1*256>,[color],<272,201>,[w_work_text]
408
	cmp	edx,0x60000000 + 40
420
	popa
409
	jbe	.newb
421
	ret
410
	ret
422
;----------------------------------------------------------------------
411
;---------------------------------------------------------------------
-
 
412
draw_button_row_of_texts:
-
 
413
	mov	ebx,240*65536+13	; ROW OF TEXTS
-
 
414
	mov	ecx,[w_work_text]
-
 
415
	mov	edx,text
-
 
416
	mov	esi,32
-
 
417
	mov	eax,4
-
 
418
;-----------------------------------
-
 
419
.newline:
-
 
420
	mcall
-
 
421
	add	ebx,20
-
 
422
	add	edx,32
-
 
423
	cmp	[edx],byte 'x'
-
 
424
	jne	.newline
-
 
425
	ret
-
 
426
;---------------------------------------------------------------------
423
draw_colours:
427
draw_colours:
424
	pusha
428
	pusha
425
	mov	esi,color_table
429
	mov	esi,color_table
426
	mov	ebx,225*65536+32
430
	mov	ebx,220*65536+14
427
	mov	ecx,32*65536+12
431
	mov	ecx,10*65536+14
-
 
432
	mov	eax,13
428
;--------------------------------------
433
;--------------------------------------
429
newcol:
434
newcol:
430
	mov	edx,[esi]
435
	mov	edx,[esi]
431
	mcall	13
436
	mcall
-
 
437
	call	draw_rectangle
432
	add	ecx,18*65536
438
	add	ecx,20*65536
433
	add	esi,4
439
	add	esi,4
434
 	cmp	esi,color_table+4*9
440
	cmp	esi,color_table+4*9
435
	jbe	newcol
441
	jbe	newcol
Line 436... Line 442...
436
 
442
 
437
	popa
443
	popa
438
	ret
444
	ret
439
;----------------------------------------------------------------------
-
 
440
draw_framerect: ; ebx,ecx
-
 
441
	push	ebx ecx
-
 
442
	add	bx,[esp+6]
-
 
443
	mov	cx,[esp+2]
-
 
444
	dec	ebx
-
 
445
	mcall	38
-
 
446
	add	cx,[esp]
-
 
447
	rol	ecx,16
-
 
448
	add	cx,[esp]
-
 
449
	sub	ecx,0x00010001
-
 
450
	mcall
-
 
451
	mov	ebx,[esp+4]
-
 
452
	mov	ecx,[esp]
-
 
453
	mov	bx,[esp+6]
-
 
454
	add	cx,[esp+2]
-
 
455
	dec	ecx
-
 
456
	mcall
-
 
457
	add	bx,[esp+4]
-
 
458
	rol	ebx,16
-
 
459
	add	bx,[esp+4]
-
 
460
	sub	ebx,0x00010001
-
 
461
	mcall
-
 
462
	add	esp,8
-
 
463
	ret
-
 
464
;----------------------------------------------------------------------
-
 
465
find_bitmap:
-
 
466
	mov	edi,[ebp+SKIN_HEADER.bitmaps]
-
 
467
	add	edi,ebp
-
 
468
	xor	ebx,ebx
-
 
469
;--------------------------------------
-
 
470
.lp1:
-
 
471
	cmp	dword[edi],0
-
 
472
	je	.lp2
-
 
473
 
-
 
474
	cmp	dword[edi+0],eax
-
 
475
	jne	@f
-
 
476
;--------------------------------------
-
 
477
	mov	ebx,[edi+SKIN_BITMAPS._data]
-
 
478
	add	ebx,ebp
-
 
479
	mov	ecx,[ebx-2]
-
 
480
	mov	cx,[ebx+4]
-
 
481
	add	ebx,8
-
 
482
;--------------------------------------
-
 
483
.lp2:
-
 
484
	ret
-
 
485
;--------------------------------------
-
 
486
@@:
-
 
487
	add	edi,8
-
 
488
	jmp	.lp1
-
 
489
;----------------------------------------------------------------------
-
 
490
dec_edx:
-
 
491
	sub	dl,4
-
 
492
	jnc	@f
-
 
493
 
-
 
494
	xor	dl,dl
-
 
495
;--------------------------------------
-
 
496
@@:
-
 
497
	sub	dh,4
-
 
498
	jnc	@f
-
 
499
 
-
 
500
	xor	dh,dh
-
 
501
;--------------------------------------
-
 
502
@@:
-
 
503
	rol	edx,16
-
 
504
	sub	dl,4
-
 
505
	jnc	@f
-
 
506
 
-
 
507
	xor	dl,dl
-
 
508
;--------------------------------------
-
 
509
@@:
-
 
510
	rol	edx,16
-
 
511
	ret
-
 
512
;----------------------------------------------------------------------
-
 
513
area:
-
 
514
  .x      = 345
-
 
515
  .y      = 20
-
 
516
  .width  = 206
-
 
517
  .height = 191
-
 
518
;--------------------------------------
-
 
519
wnd1:
-
 
520
  .x      = area.x+49
-
 
521
  .y      = area.y+5
-
 
522
  .width  = 150
-
 
523
  .height = 90
-
 
524
;--------------------------------------
-
 
525
wnd2:
-
 
526
  .x      = area.x+35
-
 
527
  .y      = area.y+35
-
 
528
  .width  = 150
-
 
529
  .height = 90
-
 
530
;--------------------------------------
-
 
531
wnd3:
-
 
532
  .x      = area.x+21
-
 
533
  .y      = area.y+65
-
 
534
  .width  = 150
-
 
535
  .height = 90
-
 
536
;--------------------------------------
-
 
537
wnd4:
-
 
538
  .x      = area.x+7
-
 
539
  .y      = area.y+95
-
 
540
  .width  = 150
-
 
541
  .height = 90
-
 
542
;--------------------------------------
-
 
543
virtual at edi+SKIN_PARAMS.dtp.data
-
 
544
	dtp system_colors
-
 
545
end virtual
-
 
546
;----------------------------------------------------------------------
-
 
547
draw_skin:
-
 
548
	mcall	13,,,0x00FFFFFF
-
 
549
	mov	ebp,not_packed_area
-
 
550
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
551
	add	edi,ebp
-
 
552
	mpack	ebx,wnd1.x,wnd1.width
-
 
553
	mpack	ecx,wnd1.y,wnd1.height
-
 
554
	mov	edx,[dtp.frame]
-
 
555
	call	draw_framerect
-
 
556
	mcall	13,,,dword[dtp.work]
-
 
557
	mov	eax,38
-
 
558
	mpack	ebx,wnd1.x+1,wnd1.x+wnd1.width-2
-
 
559
	mpack	ecx,wnd1.y+1,wnd1.y+1
-
 
560
	mov	edx,[dtp.grab]
-
 
561
	mov	esi,20
-
 
562
;--------------------------------------
-
 
563
@@:
-
 
564
	mcall
-
 
565
	call	dec_edx
-
 
566
	add	ecx,0x00010001
-
 
567
	dec	esi
-
 
568
	jnz	@b
-
 
569
 
-
 
570
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
571
	add	edi,ebp
-
 
572
	mcall	4,,dword[dtp.grab_text],caption_text,caption_text.size
-
 
573
	mcall	8,,,0,[dtp.grab_button]
-
 
574
	mcall	4,,dword[dtp.grab_button_text],close_text,close_text.size
-
 
575
;----------------------------------------------------------------------
-
 
576
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
577
	add	edi,ebp
-
 
578
	mpack	ebx,wnd2.x,wnd2.width
-
 
579
	mpack	ecx,wnd2.y,wnd2.height
-
 
580
	mov	edx,[dtp.frame]
-
 
581
	shr	edx,1
-
 
582
	and	edx,0x007F7F7F
-
 
583
	call	draw_framerect
-
 
584
	mpack	ebx,wnd2.x+4,wnd2.width-8
-
 
585
	mpack	ecx,wnd2.y+4,wnd2.height-8
-
 
586
	call	draw_framerect
-
 
587
	mcall	13,,,[dtp.frame]
-
 
588
	add	ecx,(wnd2.height-5)*65536
-
 
589
	mcall
-
 
590
	mcall	,,
-
 
591
	add	ebx,(wnd2.width-5)*65536
-
 
592
	mcall
-
 
593
	mcall	,,,dword[dtp.work]
-
 
594
 
-
 
595
	mov	eax,38
-
 
596
	mpack	ebx,wnd2.x+4,wnd2.x+wnd2.width-5
-
 
597
	mpack	ecx,wnd2.y+4,wnd2.y+4
-
 
598
	mov	edx,[dtp.grab]
-
 
599
	mov	esi,16
-
 
600
;--------------------------------------
-
 
601
@@:
-
 
602
	mcall
-
 
603
	call	dec_edx
-
 
604
	add	ecx,0x00010001
-
 
605
	dec	esi
-
 
606
	jnz	@b
-
 
607
 
-
 
608
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
609
	add	edi,ebp
-
 
610
	mcall	4,,dword[dtp.grab_text],caption_text,caption_text.size
-
 
611
	mcall	8,,,0,[dtp.grab_button]
-
 
612
	mcall	4,,dword[dtp.grab_button_text],close_text,close_text.size
-
 
613
;----------------------------------------------------------------------
-
 
614
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
615
	add	edi,ebp
-
 
616
	mpack	ebx,wnd3.x,wnd3.width
-
 
617
	mpack	ecx,wnd3.y,wnd3.height
-
 
618
	mov	edx,[edi+SKIN_PARAMS.colors_1.outer]
-
 
619
	call	draw_framerect
-
 
620
	mpack	ebx,wnd3.x+4,wnd3.width-8
-
 
621
	mpack	ecx,wnd3.y+4,wnd3.height-8
-
 
622
	mov	edx,[edi+SKIN_PARAMS.colors_1.inner]
-
 
623
	call	draw_framerect
-
 
624
	mcall	13,,,[edi+SKIN_PARAMS.colors_1.frame]
-
 
625
	add	ecx,(wnd3.height-5)*65536
-
 
626
	mcall
-
 
627
	mcall	,,
-
 
628
	add	ebx,(wnd3.width-5)*65536
-
 
629
	mcall
-
 
630
	mcall	,,,dword[dtp.work]
-
 
631
 
-
 
632
	mov	eax,0x00000001 ; left, inactive
-
 
633
	call	find_bitmap
-
 
634
	mcall	7,,,
-
 
635
 
-
 
636
	pushd	[ebx-8]
-
 
637
	mov	eax,0x00000003 ; base, inactive
-
 
638
	call	find_bitmap
-
 
639
	pop	edx
-
 
640
	mov	esi,wnd3.x+wnd3.width-1
-
 
641
	sub	esi,edx
-
 
642
	shl	edx,16
-
 
643
	add	edx,wnd3.x*65536+wnd3.y
-
 
644
	mcall	7
-
 
645
;--------------------------------------
-
 
646
@@:
-
 
647
	rol	edx,16
-
 
648
	add	dx,[ebx-8]
-
 
649
	cmp	dx,si
-
 
650
	ja	@f
-
 
651
 
-
 
652
	rol	edx,16
-
 
653
	mcall	7
-
 
654
	jmp	@b
-
 
655
;--------------------------------------
-
 
656
@@:
-
 
657
	mov	eax,0x00000002 ; oper, inactive
-
 
658
	call	find_bitmap
-
 
659
	mov	edx,ecx
-
 
660
	shr	edx,16
-
 
661
	neg	edx
-
 
662
	shl	edx,16
-
 
663
	add	edx,(wnd3.x+wnd3.width)*65536+wnd3.y
-
 
664
	mcall	7
-
 
665
 
-
 
666
	mov	ebp,not_packed_area
-
 
667
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
668
	add	edi,ebp
-
 
669
	mov	eax,dword[edi+SKIN_PARAMS.margin.left-2]
-
 
670
	mov	ax,word[edi+SKIN_PARAMS.skin_height]
-
 
671
	sub	ax,[edi+SKIN_PARAMS.margin.bottom]
-
 
672
	shr	ax,1
-
 
673
	add	ax,[edi+SKIN_PARAMS.margin.top]
-
 
674
	add	ax,-4
-
 
675
	push	eax
-
 
676
	lea	ebx,[eax+wnd3.x*65536+wnd3.y]
-
 
677
	mcall	4,,dword[dtp.grab_text],caption_text,caption_text.size
-
 
678
;---------------------------------------------------------
-
 
679
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
680
	add	edi,ebp
-
 
681
	mpack	ebx,wnd4.x,wnd4.width
-
 
682
	mpack	ecx,wnd4.y,wnd4.height
-
 
683
	mov	edx,[edi+SKIN_PARAMS.colors.outer]
-
 
684
	call	draw_framerect
-
 
685
	mpack	ebx,wnd4.x+4,wnd4.width-8
-
 
686
	mpack	ecx,wnd4.y+4,wnd4.height-8
-
 
687
	mov	edx,[edi+SKIN_PARAMS.colors.inner]
-
 
688
	call	draw_framerect
-
 
689
	mcall	13,,,[edi+SKIN_PARAMS.colors.frame]
-
 
690
	add	ecx,(wnd4.height-5)*65536
-
 
691
	mcall
-
 
692
	mcall	,,
-
 
693
	add	ebx,(wnd4.width-5)*65536
-
 
694
	mcall
-
 
695
	mcall	,,,dword[dtp.work]
-
 
696
 
-
 
697
	mov	eax,0x00010001 ; left, inactive
-
 
698
	call	find_bitmap
-
 
699
	mcall	7,,,
-
 
700
 
-
 
701
	pushd	[ebx-8]
-
 
702
	mov	eax,0x00010003 ; base, inactive
-
 
703
	call	find_bitmap
-
 
704
	pop	edx
-
 
705
	mov	esi,wnd4.x+wnd4.width-1
-
 
706
	sub	esi,edx
-
 
707
	shl	edx,16
-
 
708
	add	edx,wnd4.x*65536+wnd4.y
-
 
709
	mcall	7
-
 
710
;--------------------------------------
-
 
711
@@:
-
 
712
	rol	edx,16
-
 
713
	add	dx,[ebx-8]
-
 
714
	cmp	dx,si
-
 
715
	ja	@f
-
 
716
 
-
 
717
	rol	edx,16
-
 
718
	mcall	7
-
 
719
	jmp	@b
-
 
720
;--------------------------------------
-
 
721
@@:
-
 
722
	mov	eax,0x00010002 ; oper, inactive
-
 
723
	call	find_bitmap
-
 
724
	mov	edx,ecx
-
 
725
	shr	edx,16
-
 
726
	neg	edx
-
 
727
	shl	edx,16
-
 
728
	add	edx,(wnd4.x+wnd4.width)*65536+wnd4.y
-
 
729
	mcall	7
-
 
730
 
-
 
731
	mov	ebp,not_packed_area
-
 
732
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
733
	add	edi,ebp
-
 
734
	pop	eax
-
 
735
	lea	ebx,[eax+wnd4.x*65536+wnd4.y]
-
 
736
	mcall	4,,dword[dtp.grab_text],caption_text,caption_text.size
-
 
737
;----------------------------------------------------------------------
-
 
738
	mov	edi,[ebp+SKIN_HEADER.buttons]
-
 
739
	add	edi,ebp
-
 
740
;--------------------------------------
-
 
741
.lp1:
-
 
742
	cmp	dword[edi],0
-
 
743
	je	.lp2
-
 
744
 
-
 
745
	mov	ebx,dword[edi+SKIN_BUTTONS.left-2]
-
 
746
	mov	bx,[edi+SKIN_BUTTONS.width]
-
 
747
	mov	ecx,dword[edi+SKIN_BUTTONS.top-2]
-
 
748
	mov	cx,[edi+SKIN_BUTTONS.height]
-
 
749
	add	ebx,(wnd4.x+wnd4.width)*65536
-
 
750
	add	ecx,wnd4.y*65536
-
 
751
	dec	ebx
-
 
752
	dec	ecx
-
 
753
	mcall	8,,,0x40000000
-
 
754
	add	edi,12
-
 
755
	jmp	.lp1
-
 
756
;--------------------------------------
-
 
757
.lp2:
-
 
758
	mov	edi,[ebp+SKIN_HEADER.params]
-
 
759
	add	edi,ebp
-
 
760
	mpack	ebx,wnd4.x+10,wnd4.y+10
-
 
761
	add	bx,word[edi+SKIN_PARAMS.skin_height]
-
 
762
	mcall	4,,[dtp.work_text],window_text,window_text.size
-
 
763
 
-
 
764
	mov	ecx,[edi+SKIN_PARAMS.skin_height]
-
 
765
	shl	ecx,16
-
 
766
	add	ecx,(wnd4.y+8)*65536+10
-
 
767
	mcall	13,
-
 
768
			(wnd4.x+window_text.size*6+20)>,,[dtp.work_graph]
-
 
769
 
-
 
770
	add	ecx,25*65536+8
-
 
771
	mcall	8,
-
 
772
			button_text.size*6+11>,,0,[dtp.work_button]
-
 
773
 
-
 
774
	shr	ecx,16
-
 
775
	mov	bx,cx
-
 
776
	add	ebx,0x00060006
-
 
777
	mcall	4,,[dtp.work_button_text],button_text,button_text.size
-
 
778
	ret
-
 
779
;---------------------------------------------------------------------
445
;----------------------------------------------------------------------
780
draw_PathShow:
446
draw_PathShow:
781
	pusha
447
	pusha
782
	mcall	13,<10,534>,<214,15>,0xffffff
448
	mcall	13,,,0xffffff
783
	mcall	13,<10,534>,<232,15>,0xffffff
449
	mcall	13,,,0xffffff
784
; draw for PathShow
450
; draw for PathShow
785
	push	dword PathShow_data_1
451
	push	dword PathShow_data_1
Line 786... Line 452...
786
	call	[PathShow_draw]
452
	call	[PathShow_draw]
Line 795... Line 461...
795
;   *********************************************
461
;   *********************************************
796
draw_window:
462
draw_window:
797
	mcall	12,1
463
	mcall	12,1
798
	mcall	48,3,app_colours,10*4
464
	mcall	48,3,app_colours,10*4
799
	mcall	14
465
	mcall	14
-
 
466
	mcall	48,4
-
 
467
	mov	[current_skin_high],eax
800
; DRAW WINDOW
468
; DRAW WINDOW
801
	xor	eax,eax		; function 0 : define and draw window
469
	xor	eax,eax		; function 0 : define and draw window
802
	xor	esi,esi
470
	xor	esi,esi
803
	mov	edx,[w_work]	; color of work area RRGGBB,8->color
471
	mov	edx,[w_work]	; color of work area RRGGBB,8->color
804
	or	edx,0x14000000
472
	or	edx,0x34000000
-
 
473
	mov	ecx,50 shl 16 + 346
-
 
474
	add	ecx,[current_skin_high]
805
	mcall	,<110,555>,<50,275>,,,title
475
	mcall	,<110,440>,,,,title
Line 806... Line 476...
806
 
476
 
Line 807... Line 477...
807
	mcall	9,procinfo,-1
477
	mcall	9,procinfo,-1
808
	
478
	
809
	mov	eax,[procinfo+70] ;status of window
479
	mov	eax,[procinfo+70] ;status of window
Line 810... Line 480...
810
	test	eax,100b
480
	test	eax,100b
811
	jne	.end
481
	jne	.end
812
 
482
 
813
if lang eq ru
483
;if lang eq ru
814
  load_w  = (5*2+6*9)
484
  load_w  = (5*2+6*9)
815
  save_w  = (5*2+6*9)
485
  save_w  = (5*2+6*9)
816
  flat_w  = (5*2+6*7)
486
  flat_w  = (5*2+6*7)
817
  apply_w = (5*2+6*9)
487
  apply_w = (5*2+6*9)
818
else
488
;else
819
  load_w  = (5*2+6*6)
489
;  load_w  = (5*2+6*6)
820
  save_w  = (5*2+6*8)
490
;  save_w  = (5*2+6*8)
821
  flat_w  = (5*2+6*4)
-
 
-
 
491
;  flat_w  = (5*2+6*4)
-
 
492
;  apply_w = (5*2+6*7)
822
  apply_w = (5*2+6*7)
493
;end if
823
end if
494
;-----------------------------------
824
 
495
; select color DTP frame
825
; LOAD BUTTON
496
; LOAD BUTTON	; button 12
826
	mcall	8,<15,load_w>,<35+18*12,14>,12,[w_work_button]
497
	mcall	8,,,12,[w_work_button]
827
; SAVE BUTTON
498
; SAVE BUTTON
-
 
499
	add	ebx,(load_w+2)*65536-load_w+save_w
-
 
500
	inc	edx
-
 
501
	mcall		; button 13
-
 
502
; APPLY BUTTON
-
 
503
	mov	ebx,(frame_1.x + frame_1.width - apply_w - 15)*65536+apply_w
-
 
504
	mcall	8,,,16	; button 17
-
 
505
; select color DTP button text
-
 
506
	mcall	4,,[w_work_button_text],t1,t1.size
-
 
507
;-----------------------------------	
828
	add	ebx,(load_w+2)*65536-load_w+save_w
508
; select skin frame	
829
	inc	edx
509
; LOAD SKIN BUTTON	; button 17
830
	mcall
-
 
831
; 3D
510
	mcall	8,,,17,[w_work_button]
832
	mov	ebx,(340-t1.size*6-13)*65536+(5*2+6*4)
511
; 3D
833
	inc	edx
512
	mov	ebx,(frame_2.x+155)*65536+34
834
	mcall
513
	mcall	,,,14	; button 14
835
; FLAT
-
 
836
	add	ebx,(5*2+6*4+2)*65536-(5*2+6*4)+flat_w
-
 
837
	inc	edx
-
 
838
	mcall
-
 
839
; APPLY BUTTON
514
; FLAT
840
	add	ebx,(flat_w+6+2)*65536-flat_w+apply_w
-
 
841
	inc	edx
-
 
842
	mcall
-
 
843
; LOAD SKIN BUTTON
-
 
844
	mov	ebx,(336+(555-335)/2-t2.size*6/2)*65536+load_w
515
	add	ebx,36*65536-34+flat_w
845
	inc	edx
-
 
846
	mcall
-
 
847
; APPLY SKIN BUTTON
-
 
848
	add	ebx,(load_w+6+2)*65536-load_w+apply_w
-
 
849
	inc	edx
-
 
850
	mcall
-
 
851
	
-
 
852
	mov	ebx,(339-t1.size*6-12)*65536+(35+18*12+4)
-
 
853
	mcall	4,,[w_work_button_text],t1,t1.size
-
 
854
	
-
 
855
	mov	ebx,(336+(555-335)/2-t2.size*6/2)*65536+(35+18*12+4)
516
	inc	edx
856
	mcall	,,,t2,t2.size
517
	mcall		; button 15
857
	
-
 
858
	mov	ebx,(15+(load_w+save_w+2-t3.size*6)/2)*65536+(35+18*12+4)
-
 
859
	mcall	,,,t3,t3.size
-
 
860
	
-
 
861
	mov	eax,38		; R G B COLOR GLIDES
-
 
862
	mov	ebx,266*65536+285
-
 
863
	mov	ecx,30*65536+30
-
 
864
	mov	edx,0xff0000
-
 
865
;----------------------------------- 
-
 
866
.newl:
-
 
867
	mcall
-
 
868
	pusha
-
 
869
	add	ebx,20*65536+20
-
 
870
	shr	edx,8
-
 
871
	mcall
-
 
872
	add	ebx,20*65536+20
-
 
873
	shr	edx,8
-
 
874
	mcall
-
 
875
	popa
-
 
876
	sub	edx,0x020000
-
 
877
	add	ecx,0x00010001
-
 
878
	cmp	ecx,158*65536+158
-
 
879
	jnz	.newl
-
 
880
;-----------------------------------	
518
; APPLY SKIN BUTTON
881
	call	draw_color
-
 
882
	
-
 
883
	mov	edx,31		; BUTTON ROW
519
	mov	ebx,(frame_2.x + frame_2.width - apply_w -15)*65536+apply_w
884
	mov	ebx,15*65536+200
-
 
885
	mov	ecx,30*65536+14
-
 
886
	mov	esi,[w_work_button]
520
	mcall	,,,18		; button 18
887
 
-
 
888
	mov	eax,8
-
 
889
;-----------------------------------
521
; select skin button text
890
.newb:
-
 
891
	mcall
522
	mcall	4,,[w_work_button_text],t2,t2.size
892
	add	ecx,18*65536
523
;-----------------------------------		
893
	inc	edx
524
	call	draw_button_row
894
	cmp	edx,40
525
	call	draw_button_row_of_texts
895
	jbe	.newb
526
	call	draw_colours
896
;-----------------------------------	
527
;-----------------------------------
897
	mov	ebx,15*65536+34		; ROW OF TEXTS
-
 
898
	mov	ecx,[w_work_button_text]
528
	mov	ebx,frame_1.x shl 16+frame_1.width
-
 
529
	mov	ecx,frame_1.y shl 16+frame_1.height
-
 
530
	call	draw_rectangle
899
	mov	edx,text
531
 
-
 
532
; select color DTP text
-
 
533
	mov	ecx,[w_work_text]
-
 
534
	and	ecx,0xffffff
900
	mov	esi,32
535
	add	ecx,0x40000000
-
 
536
	mcall	4,,,select_dtp_text,\
-
 
537
				select_dtp_text.size,[w_work]
-
 
538
;-----------------------------------
-
 
539
	mov	ebx,frame_2.x shl 16+frame_2.width
901
 
540
	mov	ecx,frame_2.y shl 16+frame_2.height
902
	mov	eax,4
541
	call	draw_rectangle
903
;-----------------------------------
542
	
904
.newline:
543
; select skin text
905
	mcall
544
	mov	ecx,[w_work_text]
906
	add	ebx,18
545
	and	ecx,0xffffff
907
	add	edx,32
546
	add	ecx,0x40000000
908
	cmp	[edx],byte 'x'
-
 
909
	jne	.newline
547
	mcall	4,,,select_skin_text,\
-
 
548
				select_skin_text.size,[w_work]
910
;-----------------------------------
549
;-----------------------------------
911
	call	draw_colours
550
	call	draw_PathShow
912
	call	draw_PathShow	
551
;-----------------------------------
913
	cmp	dword[not_packed_area+SKIN_HEADER.ident],'SKIN'
552
	cmp	dword[not_packed_area+SKIN_HEADER.ident],'SKIN'
914
	jne	@f
553
	jne	@f
915
	call	draw_skin
554
	call	draw_skin
916
@@:
555
@@:
917
.end:
556
.end:
-
 
557
	mcall	12,2
-
 
558
	ret
-
 
559
;-----------------------------------------------------------------------------
-
 
560
include 'drawrect.inc'
918
	mcall	12,2
561
;-----------------------------------------------------------------------------
919
	ret
562
include 'drawskin.inc'
920
;---------------------------------------------------------------------
-
 
921
; DATA AREA
-
 
922
;---------------------------------------------------------------------
-
 
923
lsz text,\
-
 
924
    ru,  ' €ŒŠ€ ŽŠ€                     ',\
-
 
925
    ru,  ' Ž‹Ž‘€ ‡€ƒŽ‹Ž‚Š€               ',\
-
 
926
    ru,  ' ŠŽŠ€ € Ž‹Ž‘… ‡€ƒŽ‹Ž‚Š€     ',\
-
 
927
    ru,  ' ’…Š‘’ € ŠŽŠ… € ‡€ƒŽ‹Ž‚Š…   ',\
-
 
928
    ru,  ' ’…Š‘’ ‡€ƒŽ‹Ž‚ŽŠ€               ',\
-
 
929
    ru,  ' €Ž—€Ÿ Ž‹€‘’œ                ',\
-
 
930
    ru,  ' ŠŽŠ€ ‚ €Ž—…‰ Ž‹€‘’ˆ       ',\
-
 
931
    ru,  ' ’…Š‘’ € ŠŽŠ…                ',\
-
 
932
    ru,  ' ’…Š‘’ ‚ €Ž—…‰ Ž‹€‘’ˆ        ',\
-
 
933
    ru,  ' ƒ€”ˆŠ€ ‚ €Ž—…‰ Ž‹€‘’ˆ      ',\
-
 
934
    ru,  'x',\
-
 
935
    en,  ' WINDOW FRAME                   ',\
-
 
936
    en,  ' WINDOW GRAB BAR                ',\
-
 
937
    en,  ' WINDOW GRAB BUTTON             ',\
-
 
938
    en,  ' WINDOW GRAB BUTTON TEXT        ',\
-
 
939
    en,  ' WINDOW GRAB TITLE              ',\
-
 
940
    en,  ' WINDOW WORK AREA               ',\
-
 
941
    en,  ' WINDOW WORK AREA BUTTON        ',\
-
 
942
    en,  ' WINDOW WORK AREA BUTTON TEXT   ',\
-
 
943
    en,  ' WINDOW WORK AREA TEXT          ',\
-
 
944
    en,  ' WINDOW WORK AREA GRAPH         ',\
-
 
945
    en,  'x',\
-
 
946
    et,  ' AKNA RAAM                      ',\
-
 
947
    et,  ' AKNA HAARAMISE RIBA            ',\
-
 
948
    et,  ' AKNA HAARAMISE NUPP            ',\
-
 
949
    et,  ' AKNA HAARAMISE NUPU TEKST      ',\
-
 
950
    et,  ' AKNA HAARAMISE PEALKIRI        ',\
-
 
951
    et,  ' AKNA TÖÖPIIRKOND               ',\
-
 
952
    et,  ' AKNA TÖÖPIIRKONNA NUPP         ',\
-
 
953
    et,  ' AKNA TÖÖPIIRKONNA NUPPU TEKST  ',\
-
 
954
    et,  ' AKNA TÖÖPIIRKONNA TEKST        ',\
-
 
955
    et,  ' AKNA TÖÖPIIRKONNA GRAAFIKA     ',\
-
 
956
    et,  'x'
-
 
957
 
-
 
958
lsz t1,\
-
 
959
    ru, '  3D   ‹Ž‘Šˆ…   ˆŒ…ˆ’œ ',\
-
 
960
    en, '  3D   FLAT    APPLY  ',\
-
 
961
    et, '  3D   LAME   KINNITA '
-
 
962
 
-
 
963
lsz t2,\
-
 
964
    ru,  ' ‡€ƒ“‡ˆ’œ   ˆŒ…ˆ’œ ',\
-
 
965
    en,  '  LOAD     APPLY  ',\
-
 
966
    et,  '  LAADI   KINNITA '
-
 
967
 
-
 
968
lsz t3,\
-
 
969
    ru,  ' ‡€ƒ“‡ˆ’œ  ‘Ž•€ˆ’œ ',\
-
 
970
    en,  '  LOAD     SAVE  ',\
-
 
971
    et,  ' LAADI  SALVESTA',\
-
 
972
 
-
 
973
lsz caption_text,\
563
;-----------------------------------------------------------------------------
974
    ru, '‡ £®«®¢®ª',\
-
 
975
    en, 'Caption',\
-
 
976
    et, 'Pealkiri'
-
 
977
 
-
 
978
sz  close_text,'x'
-
 
979
 
-
 
980
lsz window_text,\
-
 
981
    ru, '’¥ªáâ ¢ ®ª­¥',\
-
 
982
    en, 'Window text',\
-
 
983
    et, 'Akna tekst'
-
 
984
 
-
 
985
lsz button_text,\
-
 
986
    ru, '’¥ªáâ ­  ª­®¯ª¥',\
-
 
987
    en, 'Button text',\
-
 
988
    et, 'Nupu tekst'
-
 
989
 
-
 
990
;sz  default_skn, '/sys/DEFAULT.SKN',0
-
 
991
 
-
 
992
if lang eq ru
-
 
993
  title db '€‘’Ž‰Š€ ŽŠŽ',0
-
 
994
else if lang eq et
-
 
995
  title db 'AKNA SEADED - VALI VÄRV JA VAJUTA OBJEKTILE',0
-
 
996
else
-
 
997
  title db 'WINDOWS SETTINGS - DEFINE COLOR AND CLICK ON TARGET',0
-
 
998
end if
-
 
999
 
-
 
1000
 
-
 
1001
color dd  0
-
 
1002
 
-
 
1003
;---------------------------------------------------------------------
-
 
1004
l_libs_start:
-
 
1005
 
-
 
1006
library01  l_libs system_dir_Boxlib+9, cur_dir_path, library_path, system_dir_Boxlib, \
-
 
1007
err_message_found_lib1, head_f_l, Box_lib_import, err_message_import1, head_f_i
-
 
1008
 
-
 
1009
library02  l_libs system_dir_ProcLib+9, cur_dir_path, library_path, system_dir_ProcLib, \
-
 
1010
err_message_found_lib2, head_f_l, ProcLib_import, err_message_import2, head_f_i
564
; DATA AREA
1011
 
-
 
1012
end_l_libs:
-
 
1013
;---------------------------------------------------------------------
-
 
1014
system_dir_Boxlib	db '/sys/lib/box_lib.obj',0
565
;-----------------------------------------------------------------------------
1015
system_dir_ProcLib	db '/sys/lib/proc_lib.obj',0
-
 
1016
 
-
 
1017
head_f_i:
-
 
1018
head_f_l	db 'System error',0
-
 
1019
 
-
 
1020
err_message_found_lib1	db 'box_lib.obj - Not found!',0
-
 
1021
err_message_found_lib2	db 'proc_lib.obj - Not found!',0
-
 
1022
 
-
 
1023
err_message_import1	db 'box_lib.obj - Wrong import!',0
-
 
1024
err_message_import2	db 'proc_lib.obj - Wrong import!',0
-
 
1025
 
-
 
1026
;---------------------------------------------------------------------
-
 
1027
align 4
-
 
1028
ProcLib_import:
-
 
1029
OpenDialog_Init		dd aOpenDialog_Init
-
 
1030
OpenDialog_Start	dd aOpenDialog_Start
-
 
1031
;OpenDialog__Version	dd aOpenDialog_Version
-
 
1032
        dd      0
-
 
1033
        dd      0
-
 
1034
aOpenDialog_Init	db 'OpenDialog_init',0
566
include 'idata.inc'
1035
aOpenDialog_Start	db 'OpenDialog_start',0
-
 
1036
;aOpenDialog_Version	db 'Version_OpenDialog',0
-
 
1037
;---------------------------------------------------------------------
567
;-----------------------------------------------------------------------------
1038
align 4
-
 
1039
Box_lib_import:	
-
 
1040
;init_lib		dd a_init
-
 
1041
;version_lib		dd a_version
-
 
1042
 
-
 
1043
 
-
 
1044
;edit_box_draw		dd aEdit_box_draw
-
 
1045
;edit_box_key		dd aEdit_box_key
-
 
1046
;edit_box_mouse		dd aEdit_box_mouse
-
 
1047
;version_ed		dd aVersion_ed
-
 
1048
 
-
 
1049
;check_box_draw		dd aCheck_box_draw
-
 
1050
;check_box_mouse	dd aCheck_box_mouse
-
 
1051
;version_ch		dd aVersion_ch
-
 
1052
 
-
 
1053
;option_box_draw	dd aOption_box_draw
-
 
1054
;option_box_mouse	dd aOption_box_mouse
-
 
1055
;version_op		dd aVersion_op
-
 
1056
 
-
 
1057
;scrollbar_ver_draw	dd aScrollbar_ver_draw
-
 
1058
;scrollbar_ver_mouse	dd aScrollbar_ver_mouse
-
 
1059
;scrollbar_hor_draw	dd aScrollbar_hor_draw
-
 
1060
;scrollbar_hor_mouse	dd aScrollbar_hor_mouse
-
 
1061
;version_scrollbar	dd aVersion_scrollbar
-
 
1062
 
-
 
1063
;dinamic_button_draw	dd aDbutton_draw
-
 
1064
;dinamic_button_mouse	dd aDbutton_mouse
-
 
1065
;version_dbutton	dd aVersion_dbutton
-
 
1066
 
-
 
1067
;menu_bar_draw		dd aMenu_bar_draw
-
 
1068
;menu_bar_mouse		dd aMenu_bar_mouse
-
 
1069
;menu_bar_activate	dd aMenu_bar_activate
-
 
1070
;version_menu_bar	dd aVersion_menu_bar
-
 
1071
 
-
 
1072
;FileBrowser_draw	dd aFileBrowser_draw
-
 
1073
;FileBrowser_mouse	dd aFileBrowser_mouse
-
 
1074
;FileBrowser_key	dd aFileBrowser_key
-
 
1075
;Version_FileBrowser	dd aVersion_FileBrowser
-
 
1076
 
-
 
1077
PathShow_prepare	dd sz_PathShow_prepare
-
 
1078
PathShow_draw		dd sz_PathShow_draw
-
 
1079
;Version_path_show	dd szVersion_path_show
-
 
1080
			dd 0
-
 
1081
			dd 0
-
 
1082
 
-
 
1083
;a_init			db 'lib_init',0
-
 
1084
;a_version		db 'version',0
-
 
1085
 
-
 
1086
;aEdit_box_draw		db 'edit_box',0
-
 
1087
;aEdit_box_key		db 'edit_box_key',0
-
 
1088
;aEdit_box_mouse	db 'edit_box_mouse',0
-
 
1089
;aVersion_ed		db 'version_ed',0
-
 
1090
 
-
 
1091
;aCheck_box_draw	db 'check_box_draw',0
-
 
1092
;aCheck_box_mouse	db 'check_box_mouse',0
-
 
1093
;aVersion_ch		db 'version_ch',0
-
 
1094
 
-
 
1095
;aOption_box_draw	db 'option_box_draw',0
-
 
1096
;aOption_box_mouse	db 'option_box_mouse',0
-
 
1097
;aVersion_op		db 'version_op',0
-
 
1098
 
-
 
1099
;aScrollbar_ver_draw	db 'scrollbar_v_draw',0
-
 
1100
;aScrollbar_ver_mouse	db 'scrollbar_v_mouse',0
-
 
1101
;aScrollbar_hor_draw	db 'scrollbar_h_draw',0
-
 
1102
;aScrollbar_hor_mouse	db 'scrollbar_h_mouse',0
-
 
1103
;aVersion_scrollbar	db 'version_scrollbar',0
-
 
1104
 
-
 
1105
;aDbutton_draw		db 'dbutton_draw',0
-
 
1106
;aDbutton_mouse		db 'dbutton_mouse',0
-
 
1107
;aVersion_dbutton	db 'version_dbutton',0
-
 
1108
 
-
 
1109
;aMenu_bar_draw		db 'menu_bar_draw',0
-
 
1110
;aMenu_bar_mouse		db 'menu_bar_mouse',0
-
 
1111
;aMenu_bar_activate	db 'menu_bar_activate',0
-
 
1112
;aVersion_menu_bar	db 'version_menu_bar',0
-
 
1113
 
-
 
1114
;aFileBrowser_draw	db 'FileBrowser_draw',0
-
 
1115
;aFileBrowser_mouse	db 'FileBrowser_mouse',0
-
 
1116
;aFileBrowser_key	db 'FileBrowser_key',0
-
 
1117
;aVersion_FileBrowser	db 'version_FileBrowser',0
-
 
1118
 
-
 
1119
sz_PathShow_prepare	db 'PathShow_prepare',0
-
 
1120
sz_PathShow_draw	db 'PathShow_draw',0
-
 
1121
;szVersion_path_show	db 'version_PathShow',0
-
 
1122
;---------------------------------------------------------------------
-
 
1123
PathShow_data_1:
-
 
1124
.type			dd 0	;+0
-
 
1125
.start_y		dw 217	;+4
-
 
1126
.start_x		dw 12	;+6
-
 
1127
.font_size_x		dw 6	;+8	; 6 - for font 0, 8 - for font 1
-
 
1128
.area_size_x		dw 530	;+10
-
 
1129
.font_number		dd 0	;+12	; 0 - monospace, 1 - variable
-
 
1130
.background_flag	dd 0	;+16
-
 
1131
.font_color		dd 0x0	;+20
-
 
1132
.background_color	dd 0x0	;+24
-
 
1133
.text_pointer		dd fname	;+28
-
 
1134
.work_area_pointer	dd text_work_area	;+32
-
 
1135
.temp_text_length	dd 0	;+36
-
 
1136
;---------------------------------------------------------------------
-
 
1137
PathShow_data_2:
-
 
1138
.type			dd 0	;+0
-
 
1139
.start_y		dw 235	;+4
-
 
1140
.start_x		dw 12	;+6
-
 
1141
.font_size_x		dw 6	;+8	; 6 - for font 0, 8 - for font 1
-
 
1142
.area_size_x		dw 530	;+10
-
 
1143
.font_number		dd 0	;+12	; 0 - monospace, 1 - variable
-
 
1144
.background_flag	dd 0	;+16
-
 
1145
.font_color		dd 0x0	;+20
-
 
1146
.background_color	dd 0x0	;+24
-
 
1147
.text_pointer		dd skin_info	;+28
-
 
1148
.work_area_pointer	dd text_work_area2	;+32
-
 
1149
.temp_text_length	dd 0	;+36
-
 
1150
;---------------------------------------------------------------------
-
 
1151
OpenDialog_data:
-
 
1152
.type			dd 0
-
 
1153
.procinfo		dd procinfo	;+4
-
 
1154
.com_area_name		dd communication_area_name	;+8
-
 
1155
.com_area		dd 0	;+12
-
 
1156
.opendir_pach		dd temp_dir_pach	;+16
-
 
1157
.dir_default_pach	dd communication_area_default_pach	;+20
-
 
1158
.start_path		dd open_dialog_path	;+24
-
 
1159
.draw_window		dd draw_window	;+28
-
 
1160
.status			dd 0	;+32
-
 
1161
.openfile_pach 		dd fname	;+36
-
 
1162
.filename_area		dd filename_area	;+40
-
 
1163
.filter_area		dd Filter
-
 
1164
.x:
-
 
1165
.x_size			dw 420 ;+48 ; Window X size
-
 
1166
.x_start		dw 10 ;+50 ; Window X position
-
 
1167
.y:
-
 
1168
.y_size			dw 320 ;+52 ; Window y size
-
 
1169
.y_start		dw 10 ;+54 ; Window Y position
-
 
1170
 
-
 
1171
OpenDialog_data2:
-
 
1172
.type			dd 0
-
 
1173
.procinfo		dd procinfo	;+4
-
 
1174
.com_area_name		dd communication_area_name2	;+8
-
 
1175
.com_area		dd 0	;+12
-
 
1176
.opendir_pach		dd temp_dir_pach2	;+16
-
 
1177
.dir_default_pach	dd communication_area_default_pach	;+20
-
 
1178
.start_path		dd open_dialog_path	;+24
-
 
1179
.draw_window		dd draw_window	;+28
-
 
1180
.status			dd 0	;+32
-
 
1181
.openfile_pach 		dd skin_info	;+36
-
 
1182
.filename_area		dd filename_area2	;+40
-
 
1183
.filter_area		dd Filter2
-
 
1184
.x:
-
 
1185
.x_size			dw 420 ;+48 ; Window X size
-
 
1186
.x_start		dw 10 ;+50 ; Window X position
-
 
1187
.y:
-
 
1188
.y_size			dw 320 ;+52 ; Window y size
-
 
1189
.y_start		dw 10 ;+54 ; Window Y position
-
 
1190
 
-
 
1191
communication_area_name2:
-
 
1192
	db 'FFFFFFFF_open_dialog',0
-
 
1193
 
-
 
1194
communication_area_name:
-
 
1195
	db 'FFFFFFFF_open_dialog2',0
-
 
1196
open_dialog_path:
-
 
1197
if __nightbuild eq yes
-
 
1198
	db '/sys/MANAGERS/opendial',0
-
 
1199
else
-
 
1200
	db '/sys/File Managers/opendial',0
-
 
1201
end if
-
 
1202
communication_area_default_pach:
-
 
1203
	db '/sys',0
-
 
1204
 
-
 
1205
Filter:
-
 
1206
	dd Filter.end - Filter
-
 
1207
.1:
-
 
1208
	db 'DTP',0
-
 
1209
.end:
-
 
1210
	db 0
-
 
1211
 
-
 
1212
Filter2:
-
 
1213
	dd Filter.end - Filter
-
 
1214
.1:
-
 
1215
	db 'SKN',0
-
 
1216
.end:
-
 
1217
	db 0
-
 
1218
 
-
 
1219
start_temp_file_name:
-
 
1220
	db 'default.dtp',0
-
 
1221
 
-
 
1222
default_skin:
-
 
1223
	db '/sys/default.skn',0
568
IM_END:
1224
default_dtp:
-
 
1225
	db '/sys/default.dtp',0
-
 
1226
;---------------------------------------------------------------------
569
;-----------------------------------------------------------------------------
1227
IncludeIGlobals
-
 
1228
 
-
 
1229
I_END:
-
 
1230
 
-
 
1231
IncludeUGlobals
-
 
1232
 
-
 
1233
read_info:
-
 
1234
  .mode         dd ?            ; read
-
 
1235
  .start_block  dd ?            ; first block
-
 
1236
  .blocks       dd ?            ; 512 bytes
-
 
1237
  .address      dd ?
-
 
1238
  .workarea     dd ?
-
 
1239
fname rb 4096            ; filename
-
 
1240
 
-
 
1241
virtual at read_info
-
 
1242
 write_info:
-
 
1243
  .mode         dd ?
-
 
1244
  rd 1
-
 
1245
  .bytes2write  dd ?
-
 
1246
  .address      dd ?
-
 
1247
  .workarea     dd ?
-
 
1248
end virtual
-
 
1249
 
-
 
1250
read_info2:
-
 
1251
  .mode         dd ?            ; read
-
 
1252
  .start_block  dd ?            ; first block
-
 
1253
  .blocks       dd ?            ; 512 bytes
-
 
1254
  .address      dd ?
-
 
1255
  .workarea     dd ?
-
 
1256
skin_info rb 4096
-
 
1257
 
-
 
1258
;param   rb      257
-
 
1259
 
-
 
1260
align 4
-
 
1261
app_colours:
-
 
1262
 
-
 
1263
w_frame              dd ?
-
 
1264
w_grab               dd ?
-
 
1265
w_grab_button        dd ?
-
 
1266
w_grab_button_text   dd ?
-
 
1267
w_grab_text          dd ?
-
 
1268
w_work               dd ?
-
 
1269
w_work_button        dd ?
-
 
1270
w_work_button_text   dd ?
-
 
1271
w_work_text          dd ?
-
 
1272
w_work_graph         dd ?
-
 
1273
 
-
 
1274
color_table:
-
 
1275
	times 10 dd ?
-
 
1276
;---------------------------------------------------------------------
-
 
1277
align 4
-
 
1278
cur_dir_path:
-
 
1279
	rb 4096
-
 
1280
;---------------------------------------------------------------------
-
 
1281
library_path:
-
 
1282
	rb 4096
-
 
1283
;---------------------------------------------------------------------
-
 
1284
temp_dir_pach:
-
 
1285
	rb 4096
-
 
1286
;---------------------------------------------------------------------
-
 
1287
temp_dir_pach2:
-
 
1288
	rb 4096
-
 
1289
;---------------------------------------------------------------------
-
 
1290
text_work_area:
-
 
1291
	rb 1024
-
 
1292
;---------------------------------------------------------------------
-
 
1293
text_work_area2:
-
 
1294
	rb 1024
-
 
1295
;---------------------------------------------------------------------
-
 
1296
procinfo:
-
 
1297
	rb 1024
-
 
1298
;---------------------------------------------------------------------
-
 
1299
filename_area:
-
 
1300
	rb 256
-
 
1301
;---------------------------------------------------------------------
-
 
1302
filename_area2:
-
 
1303
	rb 256
-
 
1304
;---------------------------------------------------------------------
-
 
1305
	rb 4096
-
 
1306
stacktop:
-
 
1307
;---------------------------------------------------------------------
-
 
1308
file_load_area:	; old 0x10000
-
 
1309
	rb 32*1024
-
 
1310
;---------------------------------------------------------------------
-
 
1311
not_packed_area:	; old 0x18000
-
 
1312
	rb 32*1024
-
 
1313
;---------------------------------------------------------------------
-
 
1314
unpack_area:	; old 0x20000
-
 
1315
	rb 32*1024
570
include 'udata.inc'
-
 
571
;-----------------------------------------------------------------------------
1316
;---------------------------------------------------------------------
572
I_END: