Subversion Repositories Kolibri OS

Rev

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

Rev 8255 Rev 9568
Line 496... Line 496...
496
	bt	[flags],7
496
	bt	[flags],7
497
	jc	.horizontal_0
497
	jc	.horizontal_0
Line 498... Line 498...
498
 
498
 
499
	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
499
	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
500
	shr	eax,16
500
	shr	eax,16
501
	cmp	ax,[scroll_bar_data_vertical.start_x]
501
	cmp	ax,[scroll_bar_data_vertical.x_pos]
502
	jb	.horizontal
502
	jb	.horizontal
503
	sub	ax,[scroll_bar_data_vertical.start_x]
503
	sub	ax,[scroll_bar_data_vertical.x_pos]
504
	cmp	ax,[scroll_bar_data_vertical.size_x]
504
	cmp	ax,[scroll_bar_data_vertical.x_size]
Line 505... Line 505...
505
	jge	still
505
	jge	still
506
 
506
 
Line 565... Line 565...
565
	mov	eax,[scroll_bar_data_horizontal.max_area]
565
	mov	eax,[scroll_bar_data_horizontal.max_area]
566
	cmp	eax,[scroll_bar_data_horizontal.cur_area]
566
	cmp	eax,[scroll_bar_data_horizontal.cur_area]
567
	jbe	.other
567
	jbe	.other
Line 568... Line 568...
568
 
568
 
569
	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
569
	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
570
	cmp	ax,[scroll_bar_data_horizontal.start_y]
570
	cmp	ax,[scroll_bar_data_horizontal.y_pos]
571
	jb	still
571
	jb	still
572
	sub	ax,[scroll_bar_data_horizontal.start_y]
572
	sub	ax,[scroll_bar_data_horizontal.y_pos]
573
	cmp	ax,[scroll_bar_data_horizontal.size_y]
573
	cmp	ax,[scroll_bar_data_horizontal.y_size]
Line 574... Line 574...
574
	jge	still
574
	jge	still
575
 
575
 
576
	; mouse event for Horizontal ScrollBar
576
	; mouse event for Horizontal ScrollBar
Line 584... Line 584...
584
;@@:;	bt	[flags],7
584
;@@:;	bt	[flags],7
585
;	jc	@f
585
;	jc	@f
Line 586... Line 586...
586
 
586
 
587
;	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
587
;	mcall	SF_MOUSE_GET,SSF_WINDOW_POSITION
588
;	shr	eax,16
588
;	shr	eax,16
589
;	cmp	ax,[scroll_bar_data_vertical.start_x]
589
;	cmp	ax,[scroll_bar_data_vertical.x_pos]
590
;	jb	.horizontal
590
;	jb	.horizontal
591
;	sub	ax,[scroll_bar_data_vertical.start_x]
591
;	sub	ax,[scroll_bar_data_vertical.x_pos]
592
;	cmp	ax,[scroll_bar_data_vertical.size_x]
592
;	cmp	ax,[scroll_bar_data_vertical.x_size]
593
;	jge	still
593
;	jge	still
594
;@@:
594
;@@:
Line 595... Line 595...
595
	; mouse event for Vertical ScrollBar
595
	; mouse event for Vertical ScrollBar
Line 1037... Line 1037...
1037
	pushad
1037
	pushad
1038
	mov	ecx,edx
1038
	mov	ecx,edx
1039
	shl	ecx,16
1039
	shl	ecx,16
1040
	mov	ebx,edx
1040
	mov	ebx,edx
1041
	shr	ebx,16
1041
	shr	ebx,16
1042
	cmp	bx,[scroll_bar_data_vertical.start_x]
1042
	cmp	bx,[scroll_bar_data_vertical.x_pos]
1043
	jge	.ls1
1043
	jge	.ls1
1044
	mov	ax,[scroll_bar_data_vertical.start_x]
1044
	mov	ax,[scroll_bar_data_vertical.x_pos]
1045
	sub	ax,bx
1045
	sub	ax,bx
1046
	shl	ebx,16
1046
	shl	ebx,16
1047
	mov	bx,ax
1047
	mov	bx,ax
1048
	mov	cx,16
1048
	mov	cx,16
1049
	mcall	SF_DRAW_RECT,,,frgrd_color
1049
	mcall	SF_DRAW_RECT,,,frgrd_color
Line 1065... Line 1065...
1065
	pushad
1065
	pushad
1066
	ror	edx,16
1066
	ror	edx,16
1067
	mov	dx,16
1067
	mov	dx,16
1068
	mov	ecx,edx
1068
	mov	ecx,edx
1069
	mov	edx,frgrd_color
1069
	mov	edx,frgrd_color
1070
	movzx	ebx,[scroll_bar_data_vertical.start_x]
1070
	movzx	ebx,[scroll_bar_data_vertical.x_pos]
Line 1071... Line 1071...
1071
	
1071
	
1072
	mov	ax,[scroll_bar_data_vertical.size_x]
1072
	mov	ax,[scroll_bar_data_vertical.x_size]
1073
	test	ax,ax
1073
	test	ax,ax
1074
	jnz	.no_inc_ebx
1074
	jnz	.no_inc_ebx
1075
	inc	ebx
1075
	inc	ebx
1076
.no_inc_ebx:
1076
.no_inc_ebx:
Line 1082... Line 1082...
1082
	pushad
1082
	pushad
1083
	mov	ecx,edx
1083
	mov	ecx,edx
1084
	shl	ecx,16
1084
	shl	ecx,16
1085
	mov	ebx,edx
1085
	mov	ebx,edx
1086
	shr	ebx,16
1086
	shr	ebx,16
1087
	cmp	bx,[scroll_bar_data_vertical.start_x]
1087
	cmp	bx,[scroll_bar_data_vertical.x_pos]
1088
	jge	.10
1088
	jge	.10
1089
	mov	ax,[scroll_bar_data_vertical.start_x]
1089
	mov	ax,[scroll_bar_data_vertical.x_pos]
1090
	sub	ax,bx
1090
	sub	ax,bx
1091
	shl	ebx,16
1091
	shl	ebx,16
1092
	mov	bx,ax
1092
	mov	bx,ax
1093
	mov	cx,16
1093
	mov	cx,16
Line 1094... Line 1094...
1094
	
1094
	
1095
	mov	ax,[scroll_bar_data_vertical.size_x]
1095
	mov	ax,[scroll_bar_data_vertical.x_size]
1096
	test	ax,ax
1096
	test	ax,ax
1097
	jnz	.no_inc_ebx_2
1097
	jnz	.no_inc_ebx_2
1098
	inc	ebx
1098
	inc	ebx
1099
.no_inc_ebx_2:
1099
.no_inc_ebx_2:
Line 1428... Line 1428...
1428
@@:
1428
@@:
1429
	mov	eax,[file_size]
1429
	mov	eax,[file_size]
1430
	mov	ebx,[bytes_per_line]
1430
	mov	ebx,[bytes_per_line]
1431
	xor	edx,edx
1431
	xor	edx,edx
1432
	div	ebx
1432
	div	ebx
1433
	mov	[scroll_bar_data_vertical.size_x],0
1433
	mov	[scroll_bar_data_vertical.x_size],0
1434
	cmp	eax,[number_strings]
1434
	cmp	eax,[number_strings]
1435
	jl	@f
1435
	jl	@f
1436
	mov	[scroll_bar_data_vertical.size_x],scroll_width_size
1436
	mov	[scroll_bar_data_vertical.x_size],scroll_width_size
1437
@@:
1437
@@:
1438
	mov	eax,dword [threath_buf+62]	;è¨à¨­  ª«¨¥­â᪮© ®¡« áâ¨
1438
	mov	eax,dword [threath_buf+62]	;è¨à¨­  ª«¨¥­â᪮© ®¡« áâ¨
1439
	sub	ax,[scroll_bar_data_vertical.size_x]
1439
	sub	ax,[scroll_bar_data_vertical.x_size]
1440
	mov	[scroll_bar_data_vertical.start_x],ax
1440
	mov	[scroll_bar_data_vertical.x_pos],ax
1441
	mov	eax,dword [threath_buf+66]	;¢ëá®â  ª«¨¥­â᪮© ®¡« áâ¨
1441
	mov	eax,dword [threath_buf+66]	;¢ëá®â  ª«¨¥­â᪮© ®¡« áâ¨
1442
	sub	eax,24+24-11
1442
	sub	eax,24+24-11
1443
	mov	[scroll_bar_data_vertical.size_y],ax
1443
	mov	[scroll_bar_data_vertical.y_size],ax
1444
	mov	ebx,eax
1444
	mov	ebx,eax
1445
	push	eax
1445
	push	eax
1446
	add	ebx,20
1446
	add	ebx,20
1447
	mov	[scroll_bar_data_vertical.max_area],ebx
1447
	mov	[scroll_bar_data_vertical.max_area],ebx
1448
	mov	ebx,[scroll_bar_data_vertical.btn_high]
1448
	mov	ebx,[scroll_bar_data_vertical.btn_height]
1449
	shl	ebx,1
1449
	shl	ebx,1
1450
	add	ebx,20
1450
	add	ebx,20
1451
	mov	[scroll_bar_data_vertical.cur_area],ebx
1451
	mov	[scroll_bar_data_vertical.cur_area],ebx
1452
	pop	eax
1452
	pop	eax
1453
	sub	eax,3
1453
	sub	eax,3
Line 1516... Line 1516...
1516
	add	cx,21
1516
	add	cx,21
1517
	sub	dx,cx
1517
	sub	dx,cx
1518
	shl	ecx,16
1518
	shl	ecx,16
1519
	add	cx,dx
1519
	add	cx,dx
1520
	sub	ecx,1*65536
1520
	sub	ecx,1*65536
1521
	movzx	ebx,	word [scroll_bar_data_vertical.start_x]
1521
	movzx	ebx,	word [scroll_bar_data_vertical.x_pos]
1522
	inc	ebx
1522
	inc	ebx
1523
	mcall	SF_DRAW_RECT,,,frgrd_color
1523
	mcall	SF_DRAW_RECT,,,frgrd_color
Line 1524... Line 1524...
1524
 
1524
 
Line 1557... Line 1557...
1557
	jae	@f
1557
	jae	@f
Line 1558... Line 1558...
1558
 
1558
 
1559
	mov	[beg_str_scr],ebx
1559
	mov	[beg_str_scr],ebx
1560
	movzx	eax,word [threath_buf+66]
1560
	movzx	eax,word [threath_buf+66]
1561
	sub	eax,34
1561
	sub	eax,34
Line 1562... Line 1562...
1562
	mov	[scroll_bar_data_horizontal.start_y],ax
1562
	mov	[scroll_bar_data_horizontal.y_pos],ax
Line 1563... Line 1563...
1563
 
1563
 
1564
;cur_area/(size_x-30)=len_str_scr/string_size
1564
;cur_area/(x_size-30)=len_str_scr/string_size
1565
 
1565
 
1566
	mov	eax,dword [threath_buf+62]
1566
	mov	eax,dword [threath_buf+62]
1567
	sub	ax,[scroll_bar_data_vertical.size_x]
1567
	sub	ax,[scroll_bar_data_vertical.x_size]
1568
	mov	[scroll_bar_data_horizontal.size_x],ax
1568
	mov	[scroll_bar_data_horizontal.x_size],ax
1569
	sub	eax,[scroll_bar_data_horizontal.btn_high]
1569
	sub	eax,[scroll_bar_data_horizontal.btn_height]
1570
	sub	eax,[scroll_bar_data_horizontal.btn_high]
1570
	sub	eax,[scroll_bar_data_horizontal.btn_height]
1571
	mov	[scroll_bar_data_horizontal.max_area],eax
1571
	mov	[scroll_bar_data_horizontal.max_area],eax
1572
	xor	edx,edx
1572
	xor	edx,edx
Line 2893... Line 2893...
2893
align 4
2893
align 4
2894
ProcLib_import:
2894
ProcLib_import:
2895
OpenDialog_Init		dd aOpenDialog_Init
2895
OpenDialog_Init		dd aOpenDialog_Init
2896
OpenDialog_Start	dd aOpenDialog_Start
2896
OpenDialog_Start	dd aOpenDialog_Start
2897
;OpenDialog__Version	dd aOpenDialog_Version
2897
;OpenDialog__Version	dd aOpenDialog_Version
2898
        dd      0
-
 
2899
        dd      0
2898
        dd      0,0
2900
aOpenDialog_Init	db 'OpenDialog_init',0
2899
aOpenDialog_Init	db 'OpenDialog_init',0
2901
aOpenDialog_Start	db 'OpenDialog_start',0
2900
aOpenDialog_Start	db 'OpenDialog_start',0
2902
;aOpenDialog_Version	db 'Version_OpenDialog',0
2901
;aOpenDialog_Version	db 'Version_OpenDialog',0
2903
;---------------------------------------------------------------------
2902
;---------------------------------------------------------------------
2904
align	4
2903
align	4
Line 2920... Line 2919...
2920
 
2919
 
2921
menu_bar_draw		dd aMenu_bar_draw
2920
menu_bar_draw		dd aMenu_bar_draw
2922
menu_bar_mouse		dd aMenu_bar_mouse
2921
menu_bar_mouse		dd aMenu_bar_mouse
Line 2923... Line -...
2923
version_menu_bar	dd aVersion_menu_bar
-
 
2924
 
2922
version_menu_bar	dd aVersion_menu_bar
Line 2925... Line 2923...
2925
	dd 0
2923
 
2926
	dd 0
2924
	dd 0,0
2927
 
2925
 
2928
aEdit_box_draw		db 'edit_box',0
2926
aEdit_box_draw		db 'edit_box_draw',0
Line 2929... Line 2927...
2929
aEdit_box_key		db 'edit_box_key',0
2927
aEdit_box_key		db 'edit_box_key',0
Line 2943... Line 2941...
2943
aMenu_bar_draw		db 'menu_bar_draw',0
2941
aMenu_bar_draw		db 'menu_bar_draw',0
2944
aMenu_bar_mouse		db 'menu_bar_mouse',0
2942
aMenu_bar_mouse		db 'menu_bar_mouse',0
2945
aVersion_menu_bar	db 'version_menu_bar',0
2943
aVersion_menu_bar	db 'version_menu_bar',0
2946
;---------------------------------------------------------------------
2944
;---------------------------------------------------------------------
2947
align	4
2945
align	4
2948
scroll_bar_data_vertical:
-
 
2949
.x:
-
 
2950
.size_x		dw scroll_width_size;+0
-
 
2951
.start_x	dw 565	;+2
-
 
2952
.y:
-
 
2953
.size_y		dw 284	;+4
-
 
2954
.start_y	dw 19	;+6
-
 
2955
.btn_high	dd scroll_width_size	;+8
2946
scroll_bar_data_vertical scrollbar scroll_width_size, 565, 284, 19, scroll_width_size, 300+20, 50, 0, 0xAAAAAA, 0xCCCCCC, 0, 10
2956
.type		dd 0	;+12
-
 
2957
.max_area	dd 300+20	;+16
-
 
2958
.cur_area	dd 50	;+20
-
 
2959
.position	dd 0	;+24
-
 
2960
.bckg_col	dd 0xAAAAAA	;+28
-
 
2961
.frnt_col	dd 0xCCCCCC	;+32
-
 
2962
.line_col	dd 0	;+36
-
 
2963
.redraw		dd 0	;+40
-
 
2964
.delta		dw 0	;+44
-
 
2965
.delta2		dw 0	;+46
-
 
2966
.run_x:
-
 
2967
.r_size_x	dw 0	;+48
-
 
2968
.r_start_x	dw 0	;+50
-
 
2969
.run_y:
-
 
2970
.r_size_y	dw 0	;+52
-
 
2971
.r_start_y	dw 0	;+54
-
 
2972
.m_pos		dd 0	;+56
-
 
2973
.m_pos_2	dd 0	;+60
-
 
2974
.m_keys		dd 0	;+64
-
 
2975
.run_size	dd 0	;+68
-
 
2976
.position2	dd 0	;+72
-
 
2977
.work_size	dd 0	;+76
-
 
2978
.all_redraw	dd 0	;+80
-
 
2979
.ar_offset	dd 10	;+84
-
 
2980
;---------------------------------------------------------------------
2947
;---------------------------------------------------------------------
2981
align	4
2948
align	4
2982
scroll_bar_data_horizontal:
-
 
2983
.x:
-
 
2984
.size_x		dw 300	;0	;+0
-
 
2985
.start_x	dw 0	;0	;+2
-
 
2986
.y:
-
 
2987
.size_y		dw scroll_width_size	;0	;+4
2949
scroll_bar_data_horizontal scrollbar 300, 0, scroll_width_size, 300, scroll_width_size, 300, 30, 1, 0xAAAAAA, 0xCCCCCC, 0, 10
2988
.start_y	dw 300	;0	;+6
-
 
2989
.btn_high	dd scroll_width_size	;+8
-
 
2990
.type		dd 0	;+12
-
 
2991
.max_area	dd 300	;+16
-
 
2992
.cur_area	dd 30	;+20
-
 
2993
.position	dd 1	;+24
-
 
2994
.bckg_col	dd 0xAAAAAA	;+28
-
 
2995
.frnt_col	dd 0xCCCCCC	;+32
-
 
2996
.line_col	dd 0	;+36
-
 
2997
.redraw		dd 0	;+40
-
 
2998
.delta		dw 0	;+44
-
 
2999
.delta2		dw 0	;+46
-
 
3000
.run_x:
-
 
3001
.r_size_x	dw 0	;+48
-
 
3002
.r_start_x	dw 0	;+50
-
 
3003
.run_y:
-
 
3004
.r_size_y	dw 0	;+52
-
 
3005
.r_start_y	dw 0	;+54
-
 
3006
.m_pos		dd 0	;+56
-
 
3007
.m_pos_2	dd 0	;+60
-
 
3008
.m_keys		dd 0	;+64
-
 
3009
.run_size	dd 0	;+68
-
 
3010
.position2	dd 0	;+72
-
 
3011
.work_size	dd 0	;+76
-
 
3012
.all_redraw	dd 0	;+80
-
 
3013
.ar_offset	dd 10	;+84
-
 
3014
;---------------------------------------------------------------------
2950
;---------------------------------------------------------------------
3015
align	4
2951
align	4
3016
menu_data_1:
2952
menu_data_1:
3017
.type:		dd 0	;+0
2953
.type:		dd 0	;+0
3018
.x:
2954
.x: