Ventanas de diálogo Lua ImGUI










Este script simplificará la creación de ventanas de diálogo, reduciendo la creación de una ventana de diálogo a una sola línea.
Actualmente hay ventanas de diálogo con botones, entrada de números enteros, entrada de texto y con RadioButton.
Aquí hay un pequeño manual
m.BtnDialog(Header, Text, strButtons, butSize) crea una ventana de diálogo con botones y texto
Header - Título de la ventana (cadena)
Text - Texto después del título (cadena)
strButtons - Texto mostrado en los botones (tabla de cadenas)
butSize - imgui.ImVec2, tamaño de los botones
m.BigBtnDialog(Header, Text, strButtons, butSize) crea una ventana de diálogo con botones y texto
strButtons - Texto mostrado en los botones (tabla de tablas de cadenas)
los botones de diferentes tablas strButtons se colocan en la fila correspondiente (ej. {{\"1stroka 1\", \"1stroka 2\"}, {\"2s 1\", \"2s 2\"}})
m.RadioButtonDialog(Header, Text, strButtons, imint, butSize) crea una ventana de diálogo con RadioButtons
strButtons - Texto mostrado en los RadioButtons (tabla de cadenas)
imint - imgui.ImInt, donde se guarda el número del RadioButton seleccionado (desde uno).
m.RadioButtonReturnDialog(Header, Text, strButtons, Values, imint, butSize) crea una ventana de diálogo con RadioButtons
Diferente del anterior por la presencia de Values
Values - tabla de valores (puede ser también una tabla de tablas), el valor por índice del RadioButton seleccionado que se devuelve con esta función.
m.InputIntDialog(Header, Text, strInts, imints, butSize) crea una ventana de diálogo para la entrada de un número entero (números enteros)
strInts - tabla de nombres para los campos de entrada de números
imints - tabla de imgui.ImInt para guardar los valores.
m.InputTextDialog(Header, Text, strings, imbufs, butSize) crea una ventana de diálogo para la entrada de texto (varias líneas)
strings - tabla de nombres para los campos de entrada de texto
Этот скрипт упростит написание диалоговых окон, сведёт создание диалогового окна к написанию одной строки.
На данный момент присутствуют диалоговые окна с кнопками, вводом целых чисел, вводом строк и с RadioButton.
Вот небольшой мануал
m.BtnDialog(Header, Text, strButtons, butSize) создаёт диалоговое окно с кнопками и текстом
Header - Заголовок окна(строка)
Text - Текст после заголовка(строка)
strButtons - Текст, отображаемый на кнопках(таблица строк)
butSize - imgui.ImVec2, размер кнопок
m.BigBtnDialog(Header, Text, strButtons, butSize) создаёт диалоговое окно с кнопками и текстом
strButtons - Текст, отображаемый на кнопках(таблица таблиц строк)
кнопки из разный таблиц strButtons располагаются на соответствующей строчке(ex. {{\"1stroka 1\", \"1stroka 2\"}, {\"2s 1\", \"2s 2\"}})
m.RadioButtonDialog(Header, Text, strButtons, imint, butSize) создаёт диалоговое окно с RadioButton`ами
strButtons - Текст, отображаемый на RadioButton`ах(таблица строк)
imint - imgui.ImInt, в который записывается номер выбранного RadioButton`а (с еденицы).
m.RadioButtonReturnDialog(Header, Text, strButtons, Values, imint, butSize) создаёт диалоговое окно с RadioButton`ами
От предыдущего отличается наличием Values
Values - таблица значений(может быть и таблица таблиц), значение по индексу выбранного RadioButton`а из которого возвращается этой функцией.
m.InputIntDialog(Header, Text, strInts, imints, butSize) создает диалоговое окно с вводом целого числа(целых чисел)
strInts - таблица названий для полей ввода чисел
imints - таблица imgui.ImInt для записи в них значений.
m.InputTextDialog(Header, Text, strings, imbufs, butSize) создает диалоговое окно с вводом строки(нескольких строк)
strings - таблица наименований для полей ввода текста