add function 'edit_box_key_safe'

git-svn-id: svn://kolibrios.org@9616 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
IgorA 2022-01-11 22:08:55 +00:00
parent b50d4e8c3f
commit 70dba2afa0
3 changed files with 29 additions and 5 deletions

View File

@ -186,6 +186,7 @@ dd sz_version, 0x00000001
dd sz_edit_box, edit_box_draw ;old function name dd sz_edit_box, edit_box_draw ;old function name
dd sz_edit_box_draw, edit_box_draw dd sz_edit_box_draw, edit_box_draw
dd sz_edit_box_key, edit_box_key dd sz_edit_box_key, edit_box_key
dd sz_edit_box_key_safe, edit_box_key_safe
dd sz_edit_box_mouse, edit_box_mouse dd sz_edit_box_mouse, edit_box_mouse
dd sz_edit_box_set_text, edit_box_set_text dd sz_edit_box_set_text, edit_box_set_text
dd szVersion_ed, 0x00000001 dd szVersion_ed, 0x00000001
@ -301,6 +302,7 @@ sz_version db 'version',0
sz_edit_box db 'edit_box',0 sz_edit_box db 'edit_box',0
sz_edit_box_draw db 'edit_box_draw',0 sz_edit_box_draw db 'edit_box_draw',0
sz_edit_box_key db 'edit_box_key',0 sz_edit_box_key db 'edit_box_key',0
sz_edit_box_key_safe db 'edit_box_key_safe',0
sz_edit_box_mouse db 'edit_box_mouse',0 sz_edit_box_mouse db 'edit_box_mouse',0
sz_edit_box_set_text db 'edit_box_set_text',0 sz_edit_box_set_text db 'edit_box_set_text',0
szVersion_ed db 'version_ed',0 szVersion_ed db 'version_ed',0

View File

@ -11,6 +11,7 @@
<p><a href="#funct">Функции</a></p> <p><a href="#funct">Функции</a></p>
<ul> <ul>
<li><a href="#fun_key">edit_box_key</a></li> <li><a href="#fun_key">edit_box_key</a></li>
<li><a href="#fun_key_safe">edit_box_key_safe</a></li>
<li><a href="#fun_mouse">edit_box_mouse</a></li> <li><a href="#fun_mouse">edit_box_mouse</a></li>
<li><a href="#fun_draw">edit_box_draw</a></li> <li><a href="#fun_draw">edit_box_draw</a></li>
<li><a href="#fun_set_text">edit_box_set_text</a></li> <li><a href="#fun_set_text">edit_box_set_text</a></li>
@ -27,7 +28,16 @@
<h1><a name="funct">Функции</a></h1> <h1><a name="funct">Функции</a></h1>
<h2><a name="fun_key">edit_box_key</a></h2> <h2><a name="fun_key">edit_box_key</a></h2>
<p>Эта функция должна вызыватся при вводе информации с клавиатуры.</p> <p>Эта функция должна вызыватся при вводе информации с клавиатуры. Пример использования:</p>
<pre>mcall SF_GET_KEY
stdcall dword [edit_box_key], edit1</pre>
<p>где <b>edit1</b> - структура элемента edit_box; <b>eax</b> - перед вызовом функции должен содержать код нажатой клавиши.</p>
<h2><a name="fun_key_safe">edit_box_key_safe</a></h2>
<p>Эта функция должна вызыватся при вводе информации с клавиатуры (в языках программирования высокого уровня). Пример использования:</p>
<pre>mcall SF_GET_KEY
stdcall [edit_box_key_safe], edit1, eax</pre>
<p>где <b>edit1</b> - структура элемента edit_box; <b>eax</b> - код нажатой клавиши.</p>
<h2><a name="fun_mouse">edit_box_mouse</a></h2> <h2><a name="fun_mouse">edit_box_mouse</a></h2>
<p>Эта функция должна вызыватся при вводе информации с мыши.</p> <p>Эта функция должна вызыватся при вводе информации с мыши.</p>
@ -37,9 +47,7 @@
<h2><a name="fun_set_text">edit_box_set_text</a></h2> <h2><a name="fun_set_text">edit_box_set_text</a></h2>
<p>Эта функция копирует текст из указателя в текстовое поле. Если текст в указателе окажется длиннее чем допустимый в элементе edit_box, то он запишется не весь. После вызова данной функции необходимо перерисовать окно функцией edit_box_draw, иначе изменения будут сразу не видны. Пример использования:</p> <p>Эта функция копирует текст из указателя в текстовое поле. Если текст в указателе окажется длиннее чем допустимый в элементе edit_box, то он запишется не весь. После вызова данной функции необходимо перерисовать окно функцией edit_box_draw, иначе изменения будут сразу не видны. Пример использования:</p>
<pre> push dword buf <pre>stdcall [edit_box_set_text], edit1, buf
push dword edit1
call dword [edit_box_set_text]
......... .........
buf db '111-222-333',0</pre> buf db '111-222-333',0</pre>
<p>где <b>edit1</b> - структура элемента edit_box; <b>buf</b> - буфер, в котором содержится устанавливаемый текст.</p> <p>где <b>edit1</b> - структура элемента edit_box; <b>buf</b> - буфер, в котором содержится устанавливаемый текст.</p>
@ -91,6 +99,6 @@ buf db '111-222-333',0</pre>
<p>Поле для ввода пароля, все введенные символы отображаются звездами.</p> <p>Поле для ввода пароля, все введенные символы отображаются звездами.</p>
<hr> <hr>
<p>Документация обновлялась последний раз 27.11.10.</p> <p>Документация обновлялась последний раз 12.01.22.</p>
</body> </body>
</html> </html>

View File

@ -47,6 +47,20 @@ edit_box_exit:
popad popad
ret 4 ret 4
;description:
; void edit_box_key_safe(edit_box *e, ksys_oskey_t ch)
;input:
; e - edit struct
; ch - key code
align 16
edit_box_key_safe:
push eax
mov eax,[esp+12]
push dword[esp+8]
call edit_box_key
pop eax
ret
;========================================================== ;==========================================================
;=== ®¡à ¡®âª  ª« ¢¨ âãàë ================================= ;=== ®¡à ¡®âª  ª« ¢¨ âãàë =================================
;========================================================== ;==========================================================