files
kolibrios/programs/develop/libraries/box_lib/doc/checkbox/info_checkbox.htm
Andrew bd56fbf35f
All checks were successful
Build system / Check kernel codestyle (pull_request) Successful in 21s
Build system / Build (pull_request) Successful in 4m17s
develop/libraries/box_lib: Post-SVN tidy
- Move source code from `trunk` into program root directory.
- Update build files and ASM include paths. This touches *many* files.
- Note: Line endings standardised from `CRLF` > `LF`, so best to view diffs with whitespace changes hidden.
2025-05-25 11:38:47 +01:00

81 lines
3.6 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html>
<head>
<title>элемент Check Box</title>
<meta http-equiv="content-type" content="text/html; charset=WINDOWS-1251">
<link href="../style.css" type=text/css rel=stylesheet>
</head>
<body>
<p><a href="../box_lib.htm">На главную &uarr;</a></p>
<h1>Оглавление</h1>
<p><a href="#vveden">Введение</a></p>
<p><a href="#funct2">Функции</a></p>
<ul>
<li><a href="#fun_init2">init_checkbox2</a></li>
<li><a href="#fun_draw2">check_box_draw2</a></li>
<li><a href="#fun_mouse2">check_box_mouse2</a></li>
<li><a href="#version_ch2">version_ch</a></li>
</ul>
<p><a href="#struc_checkbox">Структура checkbox</a></p>
<p><a href="#checkbox_styles">Стили элемента</a></p>
<h1><a name="vveden">Введение</a></h1>
<p>Checkbox предназначен для установки, снятия флага активности процесса. Часто
используется для включения / выключения тех или иных функций.</p>
<p>Version 1 была разработана в 2007-2009 годах. Version 2 была разработана в 2010 году и является переработанной и оптимизированной версией. Основные отличия от версии 1:</p>
<ul>
<li>Поддержка ASCIIZ строк.</li>
<li>Появился код инициализации бокса, что уменьшает задержки при обработки событий мышки.</li>
<li>Оптимизированна структура компонента, при неизменном размере.</li>
<li>Написаны макросы, которые позволяют работать с группами checkbox.</li>
</ul>
<h1><a name="funct2">Функции</a></h1>
<h2><a name="fun_init2">init_checkbox2</a></h2>
<p>Эта функция должна вызыватся при инициализации приложения, фактически она считает колличество символов в стоке для вывода. Если не нужно выводить подписи к checkbox, то ее можно не вызывать.</p>
<h2><a name="fun_draw2">check_box_draw2</a></h2>
<p>Эта функция должна вызыватся при вводе информации с клавиатуры.</p>
<h2><a name="fun_mouse2">check_box_mouse2</a></h2>
<p>Эта функция должна вызыватся при вводе информации с мыши.</p>
<h2><a name="version_ch2">version_ch</a></h2>
<p>Версия элемента</p>
<h1><a name="struc_checkbox2">Структура checkbox</a></h1>
<p>Размер структуры checkbox2 указан внутри файла <i>box_lib.mac</i> в параметре <b>ch_struc_size</b>.</p>
<pre>struc check_box2 left_s,top_s,ch_text_margin,color,border_color,text_color,text,flags
{ ;структура параметров для чек бокса
.left_s: dd left_s ;+0 положение по х dw + размер dw
.top_s: dd top_s ;+4 положение по у dw + размер dw
.ch_text_margin: dd ch_text_margin ;расстояние от прямоугольника чек бокса до надписи
.color: dd color ;цвет внутри чекбокса
.border_color: dd border_color ;цвет рамки
.text_color: dd text_color ;цвет надписи должен быть в формате цвет or 0x80000000, это для отображения ASCIIZ строк.
.text: dd text ;адрес в коде программы где расположен текст
.flags: dd flags+0 ;флаги
.size_of_str: dd 0x0 ;длинна строки, вычисляется при инициализации компонента
}
</pre>
<p><b>left_s</b> - отступ слева + ширина (в формате: положение по x * 65536 + длинна по х).</p>
<p><b>top_s</b> - отступ сверху + высота (в формате: положение по y * 65536 + длинна по y).</p>
<p><b>ch_text_margin</b> - расстояние от прямоугольника чек бокса до надписи.</p>
<p><b>color</b> - цвет внутри чекбокса.</p>
<h1><a name="checkbox_styles">Стили элемента</a></h1>
<h2>ch_flag_en = 10b</h2>
<p>Флаг установленного чек бокса.</p>
<h2>ch_flag_top = 0x0</h2>
<p>Флаг расположения текста вверху т.е. 3-й бит.</p>
<h2>ch_flag_middle = 100b</h2>
<p>Флаг расположения текста в центре т.е. 4-й бит.</p>
<h2>ch_flag_bottom = 1000b</h2>
<p>Флаг расположения текста в низу т.е. по умолчанию принимается значение внизу т.е. отсуствие 3-го и 4-го бита</p>
<hr>
<p>Документация обновлялась последний раз 10.01.22.</p>
</body>
</html>