Фикс заголовков

This commit is contained in:
Igor Timofeev 2017-04-02 00:23:43 +03:00
parent c0e5d39cb4
commit b6abdd56ff

View File

@ -1,9 +1,11 @@
#О библиотеке
О библиотеке
------------
GUI - многофункциональная графическая библиотека, отлаженная под использование маломощными компьютерами с максимально возможной производительностью и удобством для конечного пользователя. Она поддерживает множество элементов интерфейса: от привычных кнопок, слайдеров, текстовых полей и картинок до графиков и инструментов работы с цветовыми режимами. Быстродействие достигается за счет использования тройной буферизации и сложных группировочных алгоритмов.
#Установка
Установка
---------
| Зависимость | Функционал |
| ------ | ------ |
| *advancedLua* | Дополнение стандартных библиотек Lua особыми функциями, такими как быстрая сериализация таблиц, перенос строк, округление чисел и т.д. |
@ -17,11 +19,12 @@ GUI - многофункциональная графическая библио
pastebin run 0nm5b1ju
#Методы для создания контейнеров
Методы для создания контейнеров
-------------------------------
Вся библиотека делится на две основные кострукции: контейнеры и виджеты. Контейнер предназначен для группировки нескольких виджетов в единую структуру и их конвеерной обработки. В первую очередь необходимо изучить особенности работы с контейнерами и окнами.
#GUI.**container**( x, y, width, height ): *table* container
GUI.**container**( x, y, width, height ): *table* container
-----------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -44,8 +47,8 @@ GUI - многофункциональная графическая библио
| :**getClickedObject**(*int* x, *int* y): *table* object or *nil*| Получить объект по указанным координатам, используя иерархический порядок расположения элементов. Вложенные контейнеры для данного метода являются **невидимыми** |
| :**draw**() | Рекурсивная отрисовка содержимого контейнера в порядке очереди его дочерних элементов. Обращаю внимание на то, что данный метод осуществляет отрисовку только в экранный буфер. Для отображения изменений на экране необходимо использовать метод библиотеки тройного буфера *.draw()* |
#GUI.**window**( x, y, width, height ): *table* window
GUI.**window**( x, y, width, height ): *table* window
-----------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -67,7 +70,8 @@ GUI - многофункциональная графическая библио
| :**returnData**(...)| Закрыть окно и вернуть множество данных любого типа |
| :**close**() | Закрыть окно без возврата данных|
#Методы для создания виджетов
Методы для создания виджетов
----------------------------
После понимания концепции контейнеров можно с легкостью приступить к добавлению виджетов в созданное окно или контейнер. Каждый виджет - это наследник объекта типа GUI.**object**(x, y, width, height) со своими особенностями отрисовки и поведения, описанными разработчиком. Однако имеются универсальные методы, имеющиеся у каждого виджета:
| Метод виджета |Описание |
@ -89,11 +93,10 @@ GUI - многофункциональная графическая библио
| *function* | :**moveToBack**() | Передвинуть виджет в начало иерархии виджетов контейнера |
| *function* | :**getFirstParent**() | Получить первый родительский контейнер для рассматриваемой системы родительских контейнеров. К примеру, при существовании множества вложенных контейнеров метод вернет первый и "главный" из них |
Ниже перечислены виджеты, уже созданные мной на основе описанных выше инструкций. При желании вы можете сделать абсолютно аналогичные или гораздо более технически продвинутые виджеты без каких-либо затруднений.
#GUI.**button**( x, y, width, height, buttonColor, textColor, buttonPressedColor, textPressedColor, text ): *table* button
GUI.**button**( x, y, width, height, buttonColor, textColor, buttonPressedColor, textPressedColor, text ): *table* button
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -122,8 +125,8 @@ GUI - многофункциональная графическая библио
| :**release**()| Изменить состояние кнопки на "отжатое" |
| :**pressAndRelease**( *float* time )| Нажать и отжать кнопку в течение указанного временного периода. Примечание: этот метод использует отрисовку содержимого двойного буфера |
#GUI.**panel**( x, y, width, height, color, transparency ): *table* panel
GUI.**panel**( x, y, width, height, color, transparency ): *table* panel
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -139,8 +142,8 @@ GUI - многофункциональная графическая библио
| ------ | ------ |
| .**onTouch**( *table* eventData )| Метод, вызываемый после нажатия на панель в обработчике событий |
#GUI.**label**( x, y, width, height, textColor, text ): *table* label
GUI.**label**( x, y, width, height, textColor, text ): *table* label
--------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -158,8 +161,8 @@ GUI - многофункциональная графическая библио
| :**setAlignment**( *enum* GUI.alignment.vertical, *enum* GUI.alignment.horizontal )| Выбрать вариант отображения текста относительно границ лейбла |
#GUI.**inputTextBox**( x, y, width, height, backgroundColor, textColor, backgroundFocusedColor, textFocusedColor, text, [placeholderText, eraseTextOnFocus, textMask, highlightLuaSyntax, autocompleteVariables] ): *table* inputTextBox
GUI.**inputTextBox**( x, y, width, height, backgroundColor, textColor, backgroundFocusedColor, textFocusedColor, text, [placeholderText, eraseTextOnFocus, textMask, highlightLuaSyntax, autocompleteVariables] ): *table* inputTextBox
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -184,8 +187,8 @@ GUI - многофункциональная графическая библио
| .**validator**( *string* text )| Метод, вызывающийся после окончания ввода текста в поле. Если возвращает *true*, то текст в текстовом поле меняется на введенный, в противном случае введенные данные игнорируются. К примеру, в данном методе удобно проверять, является ли введенная текстовая информация числом через *tonumber()* |
| .**onInputFinished**( *string* text, *table* eventData )| Метод, вызываемый после ввода данных в обработчике событий |
#GUI.**horizontalSlider**( x, y, width, primaryColor, secondaryColor, pipeColor, valueColor, minimumValue, maximumValue, value, [showCornerValues, currentValuePrefix, currentValuePostfix] ): *table* horizontalSlider
GUI.**horizontalSlider**( x, y, width, primaryColor, secondaryColor, pipeColor, valueColor, minimumValue, maximumValue, value, [showCornerValues, currentValuePrefix, currentValuePostfix] ): *table* horizontalSlider
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -208,8 +211,8 @@ GUI - многофункциональная графическая библио
| ------ | ------ |
| .**onValueChanged**( *float* value, *table* eventData )| Метод, вызывающийся после изменения значения слайдера |
#GUI.**switch**( x, y, width, primaryColor, secondaryColor, pipeColor, state ): *table* switch
GUI.**switch**( x, y, width, primaryColor, secondaryColor, pipeColor, state ): *table* switch
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -226,8 +229,8 @@ GUI - многофункциональная графическая библио
| ------ | ------ |
| .**onStateChanged**( *boolean* state, *table* eventData )| Метод, вызывающийся после изменения состояния переключателя |
#GUI.**colorSelector**( x, y, width, height, color, text ): *table* colorSelector
GUI.**colorSelector**( x, y, width, height, color, text ): *table* colorSelector
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -243,9 +246,8 @@ GUI - многофункциональная графическая библио
| ------ | ------ |
| .**onTouch**( *table* eventData )| Метод, вызываемый после нажатия на селектор цвета в обработчике событий |
#GUI.**comboBox**( x, y, width, height, backgroundColor, textColor, arrowBackgroundColor, arrowTextColor, items ): *table* comboBox
GUI.**comboBox**( x, y, width, height, backgroundColor, textColor, arrowBackgroundColor, arrowTextColor, items ): *table* comboBox
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -264,8 +266,8 @@ GUI - многофункциональная графическая библио
| :**addSeparator**()| Добавить визуальный в комбо-бокс разделитель |
| .**onItemSelected**( *table* item, *table* eventData )| Метод, вызывающийся после выборе какого-либо элемента комбо-бокса |
#GUI.**menu**( x, y, width, backgroundColor, textColor, backgroundPressedColor, textPressedColor, backgroundTransparency ): *table* menu
GUI.**menu**( x, y, width, backgroundColor, textColor, backgroundPressedColor, textPressedColor, backgroundTransparency ): *table* menu
------------------------------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |
@ -284,8 +286,8 @@ GUI - многофункциональная графическая библио
| :**addItem**( *string* text, *int* color )| Добавить в меню элемент с указанными параметрами |
| .**onItemSelected**( *table* item, *table* eventData )| Метод, вызывающийся после выборе какого-либо элемента комбо-бокса |
#GUI.**image**( x, y, loadedImage ): *table* image
GUI.**image**( x, y, loadedImage ): *table* image
-------------------------------------------------
| Тип | Аргумент | Описание |
| ------ | ------ | ------ |
| *int* | x | Координата объекта по оси x |