Subversion Repositories Kolibri OS

Rev

Rev 824 | Rev 987 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
824 mikedld 1
diff16 'tp-dialog.asm',0,$
2
 
258 mikedld 3
;-----------------------------------------------------------------------------
617 mikedld 4
proc define_3d_button ;///////////////////////////////////////////////////////
258 mikedld 5
;-----------------------------------------------------------------------------
6
; ebx = 
7
; ecx = 
8
; esp+4*3 = id
9
; esp+4*2 = text
10
; esp+4*1 = text length
11
;-----------------------------------------------------------------------------
12
	pushad
13
	mov	edx,[esp+4*8+4+4*2]
14
	or	edx,0x40000000
15
	mcall	8
16
	mov	eax,[esp+4*8+4*1]
17
	add	eax,2
18
	imul	eax,6
19
	pushad
20
	shr	ebx,16
21
	shr	ecx,16
22
	push	ebx ecx eax 15
23
	call	draw_3d_panel
24
	popad
25
	shr	ecx,16
26
	mov	bx,cx
27
	add	ebx,7*65536+4
28
	mcall	4,,[sc.work_text],[esp+4*8+4*2],[esp+4*8+4*1]
29
	popad
30
	ret	4*3
617 mikedld 31
endp
258 mikedld 32
 
33
finddlg_handler:
34
	cmp	al,1
35
	je	.draw
36
	cmp	al,2
37
	je	.key
38
	cmp	al,3
39
	je	botdlg.button
40
	ret
41
 
42
  .draw:
43
	mov	ebx,[bot_ofs]
44
	add	ebx,(1+3)*65536+6
45
	mcall	4,,[sc.work_text],s_2find,s_2find.size+1
46
	mov	ecx,[bot_ofs]
47
	shl	ecx,16
48
	add	ecx,(3+17)*65536+15
49
 
50
	push	ecx
629 mikedld 51
	cmp	[bot_mode2],0
258 mikedld 52
	je	@f
53
	add	ebx,18
54
	mcall	4,,[sc.work_text],s_2replace,s_2replace.size+1
55
	mov	ecx,[esp]
56
	add	ecx,18*65536
57
    @@:
58
 
59
	mov	ebx,[p_info.client_box.width]
60
	shl	ebx,16
61
 
62
	push	20003
629 mikedld 63
	cmp	[bot_mode2],0
258 mikedld 64
	jne	.draw.lp1
65
	add	ebx,-(2+6*(s_2find.size+2))*65536+6*(s_2find.size+2)
66
	push	s_2find s_2find.size
67
	jmp	@f
68
 
69
  .draw.lp1:
70
	add	ebx,-(2+6*(s_2replace.size+2))*65536+6*(s_2replace.size+2)
71
	push	s_2replace s_2replace.size
72
 
73
    @@: call	define_3d_button
74
	sub	ebx,(6*(s_2cancel.size+2)+3)*65536
75
	mov	bx,6*(s_2cancel.size+2)
76
	push	20001 s_2cancel s_2cancel.size
77
	call	define_3d_button
78
 
79
	mov	ecx,[esp]
80
 
81
	mov	ebp,tb_find
82
	mov	eax,[p_info.client_box.width]
83
	sub	eax,6*(s_2find.size+2)+1
84
	add	eax,6*(s_2find.size+2)*65536
297 mikedld 85
	mov	dword[tbox.width],eax
258 mikedld 86
	add	ecx,-18*65536+1
297 mikedld 87
	mov	dword[tbox.height],ecx
258 mikedld 88
	call	textbox.draw
89
 
90
	pop	ecx
91
 
629 mikedld 92
	cmp	[bot_mode2],0
258 mikedld 93
	je	@f
94
	mov	ebp,tb_replace
95
	mov	eax,[p_info.client_box.width]
96
	sub	eax,6*(s_2replace.size+2)+1
97
	add	eax,6*(s_2replace.size+2)*65536
297 mikedld 98
	mov	dword[tbox.width],eax
258 mikedld 99
	inc	ecx
297 mikedld 100
	mov	dword[tbox.height],ecx
258 mikedld 101
	call	textbox.draw
102
    @@:
103
 
104
	ret
105
 
106
  .key:
107
	cmp	ebx,KEY_ESCAPE
108
	je	btn.bot.cancel
109
	cmp	ebx,KEY_RETURN
110
	je	btn.bot.find
111
	cmp	ebx,KEY_NUMRETURN
112
	je	btn.bot.find
113
	cmp	ebx,KEY_TAB
114
	je	..tab
115
	call	textbox.key
116
	ret
117
 
118
  ..tab:
629 mikedld 119
	cmp	[bot_mode2],0
258 mikedld 120
	je	@f
121
	mov	eax,tb_replace
122
	cmp	eax,[focused_tb]
123
	jne	.key.lp1
124
	mov	eax,tb_find
125
  .key.lp1:
126
	mov	[focused_tb],eax
127
	call	.draw
128
    @@: ret
129
 
130
osdlg_handler:
131
	cmp	al,1
132
	je	.draw
133
	cmp	al,2
134
	je	.key
135
	cmp	al,3
136
	je	botdlg.button
137
	ret
138
 
139
  .draw:
140
	mov	ebx,[bot_ofs]
141
	add	ebx,(1+3)*65536+6
142
	mcall	4,,[sc.work_text],s_2filename,s_2filename.size
143
	mov	ebx,[p_info.client_box.width]
144
	shl	ebx,16
145
	mov	ecx,[bot_ofs]
146
	shl	ecx,16
147
	add	ecx,(2+18)*65536+15
148
 
149
	push	20002
629 mikedld 150
	cmp	[bot_mode2],0
258 mikedld 151
	jne	.draw.lp1
152
	add	ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
153
	push	s_2open s_2open.size
154
	jmp	@f
155
  .draw.lp1:
156
	add	ebx,-(2+6*(s_2save.size+2))*65536+6*(s_2save.size+2)
157
	push	s_2save s_2save.size
158
 
159
    @@: call	define_3d_button
160
	sub	ebx,(6*(s_2cancel.size+2)+3)*65536
161
	mov	bx,6*(s_2cancel.size+2)
162
	push	20001 s_2cancel s_2cancel.size
163
	call	define_3d_button
164
 
629 mikedld 165
	cmp	[bot_mode2], 2	    ; exit-save dialog
595 Rus 166
	jne	@f
167
 
168
	sub	ebx,(6*(s_2save_no.size+2)+3)*65536
169
	mov	bx,6*(s_2save_no.size+2)
170
	push	20007 s_2save_no s_2save_no.size
171
	call	define_3d_button
172
 
173
    @@: mov	ebp,tb_opensave
258 mikedld 174
	mov	eax,[p_info.client_box.width]
175
	sub	eax,6*(s_2filename.size+1)+1
176
	add	eax,6*(s_2filename.size+1)*65536
297 mikedld 177
	mov	dword[tbox.width],eax
258 mikedld 178
	add	ecx,-18*65536+1
297 mikedld 179
	mov	dword[tbox.height],ecx
258 mikedld 180
	call	textbox.draw
181
 
182
	ret
183
 
184
  .key:
185
	cmp	ebx,KEY_ESCAPE
186
	je	btn.bot.cancel
187
	cmp	ebx,KEY_RETURN
188
	je	btn.bot.opensave
189
	cmp	ebx,KEY_NUMRETURN
190
	je	btn.bot.opensave
191
	call	textbox.key
192
	ret
193
 
194
gotodlg_handler:
195
	cmp	al,1
196
	je	.draw
197
	cmp	al,2
198
	je	.key
199
	cmp	al,3
200
	je	botdlg.button
201
	ret
202
 
203
  .draw:
204
	mov	ebx,[bot_ofs]
205
	add	ebx,(1+3)*65536+6
206
	mcall	4,,[sc.work_text],s_2filename,s_2filename.size
207
	mov	ebx,[p_info.box.width]
208
	shl	ebx,16
209
	mov	ecx,[bot_ofs]
210
	shl	ecx,16
211
	add	ecx,(2+18)*65536+15
212
 
213
	push	20002
629 mikedld 214
	cmp	[bot_mode2],0
258 mikedld 215
	jne	.draw.lp1
216
	add	ebx,-(2+6*(s_2open.size+2))*65536+6*(s_2open.size+2)
217
	push	s_2open s_2open.size
218
	jmp	@f
219
  .draw.lp1:
220
	add	ebx,-(2+6*(s_2save.size+2))*65536+6*(s_2save.size+2)
221
	push	s_2save s_2save.size
222
 
223
    @@: call	define_3d_button
224
	sub	ebx,(6*(s_2cancel.size+2)+3)*65536
225
	mov	bx,6*(s_2cancel.size+2)
226
	push	20001 s_2cancel s_2cancel.size
227
	call	define_3d_button
228
 
229
	mov	ebp,tb_opensave
230
	mov	eax,[p_info.box.width]
231
	sub	eax,6*(s_2filename.size+3)
232
	add	eax,6*(s_2filename.size+2)*65536
297 mikedld 233
	mov	dword[tbox.width],eax
258 mikedld 234
	add	ecx,-18*65536+1
297 mikedld 235
	mov	dword[tbox.height],ecx
258 mikedld 236
	call	textbox.draw
237
 
297 mikedld 238
	sub	ebx,(6*(s_2cancel.size+2)+3)*65536
239
	mov	bx,6*(s_2cancel.size+2)
240
	push	20010 s_2cancel s_2cancel.size
241
	call	define_3d_button
242
 
258 mikedld 243
	ret
244
 
245
  .key:
246
	cmp	ebx,KEY_ESCAPE
247
	je	btn.bot.cancel
248
	cmp	ebx,KEY_RETURN
249
	je	btn.bot.opensave
250
	cmp	ebx,KEY_NUMRETURN
251
	je	btn.bot.opensave
252
	call	textbox.key
253
	ret
254
 
297 mikedld 255
cur_part   dd ?
256
cur_color  dd ?
257
cur_colors rd 10
258
 
259
optsdlg_handler:
260
	cmp	al,1
261
	je	.draw
262
	cmp	al,2
263
	je	.key
264
	cmp	al,3
265
	je	botdlg.button
266
	cmp	al,4
267
	je	.mouse
268
	ret
269
 
270
  .xchg_colors:
271
	mov	ecx,10
272
	mov	esi,color_tbl
273
	mov	edi,cur_colors
274
    @@: lodsd
275
	xchg	eax,[edi]
276
	mov	[esi-4],eax
277
	add	edi,4
278
	loop	@b
279
	ret
280
 
281
  .draw:
282
	call	.draw_editor
283
 
284
	mov	ecx,[bot_ofs-2]
285
	mov	cx,word[bot_ofs]
286
	push	ecx
287
	add	ecx,128
288
	mcall	38,<2+3+165,2+3+165>,,[cl_3d_inset]
289
	mov	bx,word[p_info.client_box.width]
290
	pop	ecx
291
	add	ecx,35*65536+35
292
	mcall
293
	add	ecx,0x00240024
294
	mcall
295
 
296
	shr	ecx,16
297
	mov	bx,cx
298
	add	ebx,38*65536-21
299
	mcall	4,,[sc.work_text],s_tabpos,s_tabpos.size
300
 
301
	call	.draw_tabpos
302
 
303
	mov	ebx,[bot_ofs]
304
	add	ebx,(2+6+165+35)*65536+5+16
305
	mcall	4,,[sc.work_text],s_color,s_color.size
306
 
307
	mov	dword[tb_color.width],(2+6+6*s_color.size+165+35)*65536+(6*6+8)
308
	mov	eax,ebx
309
	add	ax,-3
310
	shl	eax,16
311
	mov	ax,14
312
	mov	dword[tb_color.height],eax
313
 
314
	call	.draw_color
315
 
316
	mov	ebx,[p_info.client_box.width]
317
	shl	ebx,16
318
	mov	ecx,[p_info.client_box.height]
319
	shl	ecx,16
320
	add	ecx,(-34)*65536+15
321
 
322
	add	ebx,-(2+6*(s_2save.size+2))*65536+6*(s_2save.size+2)
323
	push	20004 s_2save s_2save.size
324
	call	define_3d_button
325
	sub	ebx,(6*(s_2cancel.size+2)+3)*65536
326
	mov	bx,6*(s_2cancel.size+2)
327
	push	20001 s_2cancel s_2cancel.size
328
	call	define_3d_button
329
 
330
	ret
331
 
332
  .get_color:
333
	movzx	ecx,[tb_color.length]
334
	mov	esi,tb_color.text
335
	xor	eax,eax
336
	xor	ebx,ebx
337
	jecxz	.lp2
338
  .lp1: lodsb
339
	cmp	al,'9'
340
	mov	dl,-'0'
341
	jbe	@f
342
	mov	dl,-'A'+10
343
    @@: add	al,dl
344
	shl	ebx,4
345
	add	bl,al
346
	loop	.lp1
347
  .lp2: mov	eax,[cur_part]
348
	mov	[cur_colors+eax*4],ebx
349
	mov	[cur_color],ebx
350
	jmp	.draw_color.2
351
 
352
  .draw_editor:
353
	push	dword[options] [tab_bar.Current.Ptr]
354
	mov	[options],0
355
	mov	ebp,optsdlg_editor
356
	call	set_cur_tab
357
 
358
	call	.xchg_colors
359
	mov	[cur_editor.Bounds.Left],2
360
	mov	[cur_editor.Bounds.Right],2+165
361
	mov	eax,[p_info.client_box.height]
362
	add	eax,-125-STATH
363
	mov	[cur_editor.Bounds.Top],eax
364
	add	eax,122
365
	mov	[cur_editor.Bounds.Bottom],eax
366
	call	draw_editor
367
	call	.xchg_colors
368
 
369
	pop	ebp eax
370
	mov	[options],al
371
	call	set_cur_tab
372
	ret
373
 
374
  .draw_tabpos:
375
	mov	ecx,[bot_ofs-2]
376
	xor	cx,cx
377
	mov	ebx,(2+3+165+3)*65536+31
378
	add	ecx,38*65536+31
379
	mov	edx,[cl_3d_inset]
380
	mov	esi,[sc.work]
381
	call	draw_fillrect
382
	dec	ebx
383
	dec	ecx
384
	mcall	8,,,0x40000000+21001
385
	mov	esi,[cl_3d_normal]
386
	mov	al,[tab_pos]
387
 
388
TPOSH = 6
389
TPOSW = 10
390
 
391
	dec	al
392
	jnz	@f
393
	;// top
394
	inc	ebx
395
	mov	cx,TPOSH
396
	call	draw_fillrect
397
	add	ecx,2*65536-2
398
	jmp	.lp3
399
    @@: dec	al
400
	jnz	@f
401
	;// bottom
402
	inc	ebx
403
	mov	cx,TPOSH
404
	add	ecx,(31-TPOSH)*65536
405
	call	draw_fillrect
406
	add	ecx,-2
407
	jmp	.lp3
408
    @@: dec	al
409
	jnz	@f
410
	;// left
411
	inc	ecx
412
	mov	bx,TPOSW
413
	call	draw_fillrect
414
	add	ebx,2*65536-2
415
	jmp	.lp4
416
    @@: dec	al
417
	jnz	@f
418
	;// right
419
	inc	ecx
420
	mov	bx,TPOSW
421
	add	ebx,(31-TPOSW)*65536
422
	call	draw_fillrect
423
	add	ebx,-2
424
	jmp	.lp4
425
 
426
  .lp3:
427
	add	ebx,(2+TPOSW-2+1)*65536-31+TPOSW-2
428
	call	draw_fillrect
429
	add	ebx,-(TPOSW-2+1)*65536
430
	mov	esi,[sc.work]
431
	call	draw_fillrect
432
	ret
433
  .lp4:
434
	add	ecx,7*65536-31+4
435
	call	draw_fillrect
436
	add	ecx,-5*65536
437
	mov	esi,[sc.work]
438
	call	draw_fillrect
439
	ret
440
 
441
  .draw_color:
442
	mov	ecx,[cur_part]
443
	mov	edx,s_appearance+1
444
    @@: dec	ecx
445
	js	@f
446
	movzx	eax,byte[edx-1]
447
	lea	edx,[edx+eax+1]
448
	jmp	@b
449
    @@:
450
	movzx	esi,byte[edx-1]
451
	mov	ebx,[bot_ofs]
452
	add	ebx,(2+6+165+35)*65536+8
453
	push	ebx ecx edx
454
	mov	ecx,ebx
455
	shl	ecx,16
456
	mov	bx,s_appearance.maxl*6
457
	mov	cx,10
458
	mcall	13,,,[cl_3d_normal]
459
	pop	edx ecx ebx
460
	mcall	4,,[sc.work_text]
461
 
462
	mov	eax,[cur_color]
463
	mov	edi,tb_color.text
464
	mov	ebx,6
465
	mov	ecx,16
466
	call	uint2strz
467
	mov	[tb_color.length],6
468
	mov	[tb_color.sel.x],0
469
	mov	[tb_color.pos.x],6
470
 
471
	mov	ebp,tb_color
472
	call	textbox.draw
473
 
474
  .draw_color.2:
475
	mov	ecx,[p_info.client_box.height]
476
	sub	ecx,[bot_dlg_height]
477
	add	ecx,-STATH
478
	shl	ecx,16
479
	add	ecx,3*65536+31
480
	mov	ebx,(2+6+165)*65536+31
481
	mov	edx,[cl_3d_inset]
482
	mov	esi,[cur_color]
483
	call	draw_fillrect
484
 
485
	ret
486
 
487
  .key:
488
	cmp	ebx,KEY_ESCAPE
489
	je	btn.bot.cancel
490
	cmp	ebx,KEY_RETURN
491
	je	btn.bot.appearance
492
	cmp	ebx,KEY_NUMRETURN
493
	je	btn.bot.appearance
494
 
495
	cmp	ebx,KEY_BACKSPACE
496
	je	.key.tb.2
497
	cmp	ebx,KEY_TAB
498
	je	.key.tb.2
499
	cmp	bx,0x00FF
500
	ja	.key.tb.2
501
	;cmp     ebx,KEY_LSHIFT
502
	;je      .key.tb.2
503
	;cmp     ebx,KEY_RSHIFT
504
	;je      .key.tb.2
505
	;cmp     ebx,0x00000147
506
	;jb      .key.exit
507
	;cmp     ebx,0x00000153
508
	;jbe     .key.tb.2
509
 
826 mikedld 510
	test	[chr],KM_CTRLALT
297 mikedld 511
	jnz	.key.exit
826 mikedld 512
	movzx	eax,byte[chr]
297 mikedld 513
	movzx	eax,[eax+key0]
514
	or	al,al
515
	jz	.key.exit
516
	movzx	eax,[eax+key1]
517
 
518
	cmp	al,'0'
519
	jb	@f
520
	cmp	al,'9'
521
	jbe	.key.tb
522
    @@: cmp	al,'A'
523
	jb	@f
524
	cmp	al,'F'
525
	jbe	.key.tb
526
    @@: cmp	al,'a'
527
	jb	@f
528
	cmp	al,'f'
529
	jbe	.key.tb
530
    @@: ret
531
  .key.tb:
532
	cmp	[tb_color.length],6
533
	jb	@f
534
	mov	al,[tb_color.sel.x]
535
	cmp	al,[tb_color.pos.x]
536
	jne	@f
537
	ret
538
  .key.tb.2:
539
    @@: call	textbox.key
540
	call	.get_color
541
	call	.draw_editor
542
  .key.exit:
543
	ret
544
 
545
  .mouse:
546
	cmp	ah,MEV_LDOWN
547
	jne	.mouse.exit
548
	mcall	37,1
549
	movsx	ebx,ax
550
	sar	eax,16
551
	cmp	eax,[optsdlg_editor+EDITOR.Bounds.Right]
552
	jg	.mouse.exit
553
	cmp	ebx,[optsdlg_editor+EDITOR.Bounds.Bottom]
554
	jg	.mouse.exit
555
	sub	eax,[optsdlg_editor+EDITOR.Bounds.Left]
556
	js	.mouse.exit
557
	sub	ebx,[optsdlg_editor+EDITOR.Bounds.Top]
558
	js	.mouse.exit
559
	mov	esi,optsdlg_editor_parts-5
560
    @@: add	esi,5
561
	cmp	byte[esi+0],-1
562
	je	.mouse.exit
563
	cmp	al,byte[esi+1]
564
	jb	@b
565
	cmp	bl,byte[esi+2]
566
	jb	@b
567
	cmp	al,byte[esi+3]
568
	ja	@b
569
	cmp	bl,byte[esi+4]
570
	ja	@b
571
	movzx	ebp,byte[esi+0]
572
	mov	[cur_part],ebp
573
	m2m	[cur_color],[cur_colors+ebp*4]
574
	;mcall   13,<200,30>,<250,30>,[color_tbl+ebp*4]
575
	;call    .draw_color
576
	call	.draw
577
 
578
  .mouse.exit:
579
	ret
580
 
258 mikedld 581
botdlg.button:
582
	mov	esi,accel_table2_botdlg
583
  .acc: cmp	ebx,[esi]
584
	jne	@f
585
	call	dword[esi+4]
586
	ret
587
    @@: add	esi,8
588
	cmp	byte[esi],0
589
	jne	.acc
590
	ret
591
 
592
  btn.bot.cancel:
593
	xor	eax,eax
594
	mov	[bot_mode],al
629 mikedld 595
	mov	[main_closing],al
258 mikedld 596
	mov	[bot_dlg_height],eax
597
	mov	[s_status],eax
598
	call	drawwindow
599
	ret
600
 
601
  btn.bot.opensave:
629 mikedld 602
	cmp	[bot_mode2],0
258 mikedld 603
	je	.lp1
604
	call	save_file
605
	jnc	@f
606
	jmp	.lp2
297 mikedld 607
  .lp1: call	load_file
258 mikedld 608
	jnc	@f
609
  .lp2:
610
	ret
259 mikedld 611
    @@: ;call    update_caption
258 mikedld 612
	xor	eax,eax
613
	mov	[bot_mode],al
614
	mov	[bot_dlg_height],eax
615
	call	drawwindow
616
	ret
617
 
595 Rus 618
  btn.bot.no:
619
	xor	eax,eax
620
	mov	[bot_mode],al
621
	mov	[bot_dlg_height],eax
622
	mov	[s_status],eax
623
	call	drawwindow
629 mikedld 624
	cmp	[main_closing],0
625
	je	@f
626
	add	[exit_tab_item],sizeof.TABITEM
627
	jmp	key.alt_x.direct
595 Rus 628
	ret
629 mikedld 629
    @@: call	key.ctrl_f4.close
630
	ret
595 Rus 631
 
258 mikedld 632
  btn.bot.find:
633
	movzx	ecx,[tb_find.length]
634
	mov	[s_search.size],ecx
635
	mov	esi,tb_find.text
636
	mov	edi,s_search
637
	cld
638
	rep	movsb
639
 
629 mikedld 640
	cmp	[bot_mode2],0
258 mikedld 641
	je	@f
642
	call	search
643
	jnc	.found
297 mikedld 644
	call	editor_check_for_changes
258 mikedld 645
	ret
646
 
647
  .found:
259 mikedld 648
	push	[copy_size] [copy_count] [copy_buf]
258 mikedld 649
 
650
	movzx	eax,[tb_replace.length]
259 mikedld 651
	add	eax,10
629 mikedld 652
	stdcall mem.Alloc,eax
259 mikedld 653
	mov	[copy_buf],eax
654
 
655
	movzx	eax,[tb_replace.length]
258 mikedld 656
	mov	esi,tb_replace.text
297 mikedld 657
	mov	edi,[copy_buf]
258 mikedld 658
	stosd
659
	mov	ecx,eax
660
	jecxz	.lp1
661
	rep	movsb
662
  .lp1: add	eax,4
663
	mov	[copy_size],eax
664
	mov	[copy_count],1
665
 
297 mikedld 666
	push	[cur_editor.SelStart.X]
667
	mov	ebp,cur_editor
258 mikedld 668
	call	init_sel_vars
669
	call	key.ctrl_v
297 mikedld 670
	pop	[cur_editor.SelStart.X]
258 mikedld 671
 
629 mikedld 672
	stdcall mem.Free,[copy_buf]
258 mikedld 673
 
259 mikedld 674
	pop	[copy_buf] [copy_count] [copy_size]
258 mikedld 675
 
297 mikedld 676
	call	editor_check_for_changes
258 mikedld 677
	ret
678
    @@: xor	eax,eax
679
	mov	[bot_mode],al
680
	mov	[bot_dlg_height],eax
297 mikedld 681
	call	key.f3
258 mikedld 682
	call	drawwindow
683
	ret
297 mikedld 684
 
685
  btn.bot.appearance:
686
    @@: xor	eax,eax
687
	mov	[bot_mode],al
688
	mov	[bot_dlg_height],eax
689
	call	optsdlg_handler.xchg_colors
690
	mov	al,[tab_pos]
691
	mov	[tab_bar.Style],al
692
	call	drawwindow
693
	ret
694
 
695
tabpos_round db 4,3,1,2
696
 
697
  btn.bot.tabpos:
698
	movzx	eax,[tab_pos]
699
	mov	al,[tabpos_round+eax-1]
700
	mov	[tab_pos],al
701
    @@: call	optsdlg_handler.draw_tabpos
702
	ret