Function RemoveComponent is renamed in MoveComponent.

New function is added.
void ActivateTrapForSpecializedMessage (dword *control) - to activate a trap for the specialized messages.

git-svn-id: svn://kolibrios.org@675 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
andrew_programmer
2007-11-19 17:44:47 +00:00
parent 814797a829
commit 21d1027a5a
16 changed files with 177 additions and 67 deletions

View File

@@ -11,6 +11,6 @@ align 4
get_version:
xor eax,eax
mov eax,dword 071014 ;07.10.13
mov eax,dword 071119 ;07.11.19
ret

View File

@@ -0,0 +1,16 @@
;*******************************************************
;*Function activate a trap for the specialized message.*
;*******************************************************
;IN
;void ActivateTrapForSpecializedMessage(dword *control)
activate_trap_for_specialized_message:
mov ebx,[esp+4]
xor eax,eax
mov al,[ebx+control_header_size]
or al,activate_trap
mov [ebx+control_header_size],al
ret 4

View File

@@ -1,6 +1,6 @@
zk_redraw_all_Bookmark = 1000000b
zk_redraw_all_Bookmark_off = 10111111b
zk_redraw_all_Bookmark = 00100000b
zk_redraw_all_Bookmark_off = 11011111b
zk_init_Bookmark = 10000000b
zk_init_Bookmark_off = 01111111b
zk_child_button_type = 10001001b
@@ -1161,7 +1161,7 @@ SendMessageChildControlsOfBookmark:
mov ebx,[eax]
mov eax,ebx
mov ebx,[Bookmark.MessageForChildButton+12]
test ebx,ebx
jz bookmark_left_button_of_mouse_not_pressed

View File

@@ -1,16 +1,16 @@
;button's types
bt_check_text_type = 1b
bt_check_picture_type = 10b
bt_check_picture_text_type = 100b
bt_no_draw = 1000b
bt_check_3D_type = 10000b
bt_check_text_type = 00000001b
bt_check_picture_type = 00000010b
bt_check_picture_text_type = 00000100b
bt_no_draw = 00001000b
bt_check_3D_type = 00010000b
bt_check_full_redraw = 10000000b
bt_full_redraw_off = 1111111b
bt_full_redraw_off = 01111111b
;button's flags
bt_crossing = 1b
bt_crossing_pressing = 11b
bt_crossing = 00000001b
bt_crossing_pressing = 00000011b
bt_crossing_pressing_off = 11111100b
bt_control_data_size = 50

View File

@@ -136,6 +136,9 @@ check_box:
no_redraw_all_check_box:
cmp [eax],dword 3
je exit_check_box
cmp [eax],dword 6
jne no_mouse_check_box

View File

@@ -182,6 +182,9 @@ edit_box:
.no_keys_edit_box:
cmp [eax],dword 3
je exit_edit_box
;events of mouse for EditBox
cmp [eax],dword 6

View File

@@ -2,8 +2,8 @@
im_control_data_size = 26
im_redraw_all = 10000000b
im_redraw_all_off = 01111111b
im_special_redraw_on = 1b
im_special_redraw_off = 11111110b
;im_special_redraw_on = 00000001b
;im_special_redraw_off = 11111110b
;****************************************************
;*******************craete Image**********************
@@ -87,11 +87,11 @@ image:
xor eax,eax
mov al,[Image.type]
and al,im_special_redraw_on
and al,activate_trap
test al,al
jz no_activate_redraw_image
and [Image.type],im_special_redraw_off
and [Image.type],deactivate_trap
or [Image.type],im_redraw_all
no_activate_redraw_image:

View File

@@ -1,15 +1,16 @@
;**********************************************************************
; library of Graphics Universal Interface for Kolibri operation system
;
; version 071001
; version 071119
; 2007 year
;
;autors:
;
;andrew_programmer polynki@mail.ru
;
;menegement of controls : destroy_control, send_message
;GUI components : button,scroller,Bookmark,text,image,number,progres bar
;menegement of controls : destroy_control, send_message,move_component
; resize_component,activate_trap_for_specialized_message
;GUI components : button,scroller,Bookmark,text,image,number,progres_bar
;
;<Lrz> and Maxxxx32
;
@@ -25,6 +26,9 @@ control_header_size = 44
border_width = 5
activate_trap = 01000000b
deactivate_trap = 10111111b
section '.flat' code readable align 16
include 'macros.inc'
@@ -70,8 +74,11 @@ section '.flat' code readable align 16
;function for resize GUI component
include 'resize_component.inc'
;function for remove GUI component
include 'remove_component.inc'
;function for move GUI component
include 'move_component.inc'
;function for activate trap for specialized messages
include 'activate_trap.inc'
align 16
EXPORTS:
@@ -79,7 +86,8 @@ EXPORTS:
dd szSendMessage,send_message
dd szVersion,get_version
dd szResizeComponent,resize_component
dd szRemoveComponent,remove_component
dd szMoveComponent,move_component
dd szActivateTrap,activate_trap_for_specialized_message
dd szcraeteButton,craete_button
dd szcraeteScroller,craete_scroller
dd szcraeteBookmark,craete_Bookmark
@@ -95,7 +103,8 @@ szDestroyControl db 'DestroyControl',0
szSendMessage db 'SendMessage',0
szVersion db 'Version',0
szResizeComponent db 'ResizeComponent',0
szRemoveComponent db 'RemoveComponent',0
szMoveComponent db 'MoveComponent',0
szActivateTrap db 'ActivateTrapForSpecializedMessage',0
szcraeteButton db 'CraeteButton',0
szcraeteScroller db 'CraeteScroller',0
szcraeteBookmark db 'CraeteBookmark',0

View File

@@ -1,8 +1,8 @@
;****************************************************
;***************Resize of GUI component**************
;*****************move of GUI component**************
;****************************************************
;IN
;ResizeComponent(dword Parend,dword Control,dword newx,dword newy)
;MoveComponent(dword Parend,dword Control,dword newx,dword newy)
;newy
;newx
;Control
@@ -12,7 +12,7 @@
align 4
remove_component:
move_component:
mov ebx,[esp+4] ;Control
mov ecx,[esp+8] ;new x

View File

@@ -2,10 +2,10 @@
nm_control_data_size = 22
nm_redraw_all = 10000000b
nm_redraw_off = 01111111b
nm_special_redraw_on = 100b
nm_special_redraw_off = 11111011b
nm_integer_type = 10b
nm_no_show_number = 1b
;nm_special_redraw_on = 00000100b
;nm_special_redraw_off = 11111011b
nm_integer_type = 00000010b
nm_no_show_number = 00000001b
;****************************************************
;********************craete Number**********************
@@ -92,12 +92,12 @@ number:
xor ebx,ebx
mov bl,[Number.type]
and bl,nm_special_redraw_on
and bl,activate_trap
test bl,bl
jz no_special_message_for_number
or [Number.type],nm_redraw_all
and [Number.type],nm_special_redraw_off
and [Number.type],deactivate_trap
no_special_message_for_number:

View File

@@ -2,8 +2,8 @@
pb_control_data_size = 34
pb_redraw_all = 10000000b
pb_redraw_all_off = 01111111b
pb_special_progress_on = 1b
pb_special_progress_off = 11111110b
;pb_special_progress_on = 00000001b
;pb_special_progress_off = 11111110b
;****************************************************
;****************craete ProgressBar********************
@@ -109,7 +109,18 @@ progress_bar:
cmp [eax],dword 3
jne no_special_message_progress_bar
or [ProgressBar.type],pb_special_progress_on
xor eax,eax
mov al,[ProgressBar.type]
and al,activate_trap
test al,al
jz no_draw_progress_bar
and [ProgressBar.type],deactivate_trap
call draw_progress
no_draw_progress_bar:
jmp exit_progress_bar
no_special_message_progress_bar:
@@ -127,17 +138,6 @@ progress_bar:
no_draw_all_progress_bar:
xor eax,eax
mov al,[ProgressBar.type]
and al,pb_special_progress_on
test al,al
jz no_draw_progress_bar
and [ProgressBar.type],pb_special_progress_off
call draw_progress
no_draw_progress_bar:
exit_progress_bar:

View File

@@ -1,24 +1,25 @@
;scroller's flags
sc_check_vertical = 1b
sc_check_horizontal = 10b
sc_check_init_child_buttons = 100b
sc_check_3D_type = 10000b
sc_scroll_bar_move = 100000b
sc_active = 1000000b
sc_check_vertical = 00000001b
sc_check_horizontal = 00000010b
sc_check_init_child_buttons = 00000100b
sc_active = 00001000b
sc_check_3D_type = 00010000b
sc_scroll_bar_move = 00100000b
sc_redraw = 10000000b
sc_redraw_off = 01111111b
sc_full_redraw = 11100000b
sc_full_redraw = 10101000b
sc_scroll_bar_move_off = 11011111b
sc_move_active_off = 10011111b
sc_move_active_off = 11010111b
sc_first_child_button_pressed = 1b
sc_first_child_button_pressed = 00000001b
sc_first_child_button_pressed_off = 11111110b
sc_second_child_button_pressed = 10000b
sc_second_child_button_pressed = 00010000b
sc_second_child_button_pressed_off = 11101111b
sc_control_data_size = 29
sc_child_button_type = 10001000b
sc_child_button_type = 10001000b
;****************************************************
;******************Crate Scroller*********************

View File

@@ -1,9 +1,9 @@
tx_control_data_size = 22
tx_no_show_text = 1b
tx_no_show_text = 00000001b
tx_redraw_all = 10000000b
tx_redraw_all_off = 01111111b
tx_special_redraw_on = 100b
tx_special_redraw_on = 00000100b
tx_special_redraw_off = 11111011b
;****************************************************