Fenêtres de dialogue Lua ImGUI
Ce script simplifie la création de fenêtres de dialogue, réduisant la création d'une fenêtre de dialogue à une seule ligne.
Actuellement, il existe des fenêtres de dialogue avec des boutons, des entrées de nombres entiers, des entrées de chaînes et avec des RadioButton.
Voici un petit manuel
m.BtnDialog(Header, Text, strButtons, butSize) crée une fenêtre de dialogue avec des boutons et du texte
Header - Titre de la fenêtre (chaîne)
Text - Texte après le titre (chaîne)
strButtons - Texte affiché sur les boutons (tableau de chaînes)
butSize - imgui.ImVec2, taille des boutons
m.BigBtnDialog(Header, Text, strButtons, butSize) crée une fenêtre de dialogue avec des boutons et du texte
strButtons - Texte affiché sur les boutons (tableau de tableaux de chaînes)
les boutons de différents tableaux strButtons sont disposés sur la ligne correspondante (ex. {{\"1stroka 1\", \"1stroka 2\"}, {\"2s 1\", \"2s 2\"}})
m.RadioButtonDialog(Header, Text, strButtons, imint, butSize) crée une fenêtre de dialogue avec des RadioButton`.
strButtons - Texte affiché sur les RadioButton` (tableau de chaînes)
imint - imgui.ImInt, dans lequel est enregistré le numéro du RadioButton` sélectionné (à partir de 1).
m.RadioButtonReturnDialog(Header, Text, strButtons, Values, imint, butSize) crée une fenêtre de dialogue avec des RadioButton`.
Il se distingue par la présence de Values
Values - tableau de valeurs (peut aussi être un tableau de tableaux), la valeur à l'index du RadioButton` sélectionné est renvoyée par cette fonction.
m.InputIntDialog(Header, Text, strInts, imints, butSize) crée une fenêtre de dialogue pour entrer un nombre entier (ou plusieurs entiers)
strInts - tableau de noms pour les champs d'entrée des nombres
imints - tableau imgui.ImInt pour enregistrer les valeurs.
m.InputTextDialog(Header, Text, strings, imbufs, butSize) crée une fenêtre de dialogue pour entrer une chaîne (ou plusieurs chaînes)
strings - tableau de noms pour les champs d'entrée de texte
Этот скрипт упростит написание диалоговых окон, сведёт создание диалогового окна к написанию одной строки.
На данный момент присутствуют диалоговые окна с кнопками, вводом целых чисел, вводом строк и с 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 - таблица наименований для полей ввода текста