forked from KolibriOS/kolibrios
Box_lib:
1) A small fix for OptionBox - removed unnecessary redrawing when processing mouse events. 2) Build.sh - script to compile Box_lib library under Linux git-svn-id: svn://kolibrios.org@1227 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
f3fa774b6a
commit
f3c6ba6e90
10
programs/develop/libraries/box_lib/trunk/build.sh
Executable file
10
programs/develop/libraries/box_lib/trunk/build.sh
Executable file
@ -0,0 +1,10 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# This script does for Linux the same as build.bat for DOS,
|
||||||
|
# it compiles the current KolibriOS applications
|
||||||
|
|
||||||
|
mkdir bin
|
||||||
|
fasm -m 16384 box_lib.asm ./bin/box_lib.obj
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -47,7 +47,12 @@ option_check:
|
|||||||
|
|
||||||
option_box_mouse:
|
option_box_mouse:
|
||||||
pusha
|
pusha
|
||||||
|
mcall 37,2
|
||||||
|
test eax,eax
|
||||||
|
jnz @f
|
||||||
|
popa
|
||||||
|
ret 4
|
||||||
|
@@:
|
||||||
mov eax,dword [esp+36]
|
mov eax,dword [esp+36]
|
||||||
@@: mov edi,dword [eax]
|
@@: mov edi,dword [eax]
|
||||||
test edi,edi
|
test edi,edi
|
||||||
@ -156,16 +161,6 @@ macro use_optionbox_mouse
|
|||||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
option_box_mouse_op: ;обработка мыши
|
option_box_mouse_op: ;обработка мыши
|
||||||
pusha
|
pusha
|
||||||
mov eax,37 ;будем что то делать если у нас что - нить нажато
|
|
||||||
mov ebx,2 ;внести в регистр значение 2
|
|
||||||
mcall ;проверка не нажал ли пользователь кнопку мышки
|
|
||||||
test eax,eax ;проверка если у нас в eax=0, то установим флаг и выйдем
|
|
||||||
jnz @f ;перейти на нижнюю метку @@
|
|
||||||
|
|
||||||
jmp option_box_mouse_end
|
|
||||||
;если ничего не произошло, то восстановим значения регистров из стека
|
|
||||||
;выход
|
|
||||||
@@:
|
|
||||||
mov esi,dword op_text_length ;загрузить кол-во символов в текстовой строке
|
mov esi,dword op_text_length ;загрузить кол-во символов в текстовой строке
|
||||||
;Умножение на 6 Быстрое умножение можно воспользоваться любым мз методов, но на старых Процессорах (386,486,P1)быстрее будет с инструкцией Lea
|
;Умножение на 6 Быстрое умножение можно воспользоваться любым мз методов, но на старых Процессорах (386,486,P1)быстрее будет с инструкцией Lea
|
||||||
; lea esi,[eax*2+eax]
|
; lea esi,[eax*2+eax]
|
||||||
|
Loading…
Reference in New Issue
Block a user