ИЮП (программное обеспечение)
Оригинальный автор(ы) | Tecgraf / PUC-Rio в сотрудничестве с Petrobras |
---|---|
Стабильная версия | 3.31 / 13 октября 2023 г |
Операционная система | Кросс-платформенный |
Тип | Комплект для разработки программного обеспечения |
Лицензия | С |
Веб-сайт | www |
— Портативный пользовательский интерфейс IUP компьютерного это комплект для разработки программного обеспечения , который предоставляет портативный набор инструментов с поддержкой сценариев для создания графических пользовательских интерфейсов (GUI) с использованием языков программирования C , Perl , Lua , Nim и Zig и других. [1] Это позволяет быстро создавать прототипы и дорабатывать развертываемые приложения с графическим интерфейсом без необходимости компиляции.
Цель IUP — позволить пользовательскому интерфейсу программ работать в различных системах в неизмененном виде. [2]
Он обеспечивает эту возможность, связывая Lua с его кодом C/ C++ или просто записывая C в интерфейс прикладного программирования (API). Он обрабатывает элементы пользовательского интерфейса, используя собственные элементы управления, предоставляемые собственными API, такими как Windows API в Windows , GTK+ в Linux и Motif - LessTif в старых версиях Unices. Он также предоставляет некоторые специально разработанные элементы управления с использованием графических API, таких как CD-Canvas Draw или OpenGL .
Функции
[ редактировать ]К отличительным особенностям IUP относятся:
- ANSI C API, один из немногих простых наборов инструментов, поддерживающих C,
- Единый API для Windows или Linux ,
- Встроенная поддержка сценариев Lua, вызывающих функции IUP (управляемых сценарием Lua),
- Удалены ограничения на типы объектов класса/экземпляра , но сохранена прототипная иерархия наследования в стиле Lua.
- Абстрактная Y. модель макета, в которой размеры и положения рассчитываются на основе горизонтальных и вертикальных контейнеров, а не явных координат X и Компоновка на основе координат также поддерживается третьим типом контейнера.
- Небольшой API, порядка 100 функций .
- Использование цикла событий — механизма обратного вызова . Этот основной цикл можно вызвать внутри Lua.
- Элементы интерфейса создаются до того, как они будут сопоставлены с собственными элементами. Это обратная ситуация, сложившаяся при сборке элементов графического интерфейса.
- Доступен в виде исходного кода или готовых статических или динамических библиотек для широкого спектра компиляторов, включая исходный код готовых примеров.
Сценарии Lua выполняются путем связывания Lua и IUPLua (по крайней мере) в небольшой программе на C, называемой хост-приложением. Эта программа создает состояние Lua, передает состояние Lua в IUPLua для инициализации, а затем открывает и выполняет сценарий Lua для состояния Lua. Или все состояние IUP может быть динамически загружено с помощью Lua. require
или package.loadlib
ИУПЛуа.
При необходимости скрипт(ы) позже можно скомпилировать с помощью компилятора Lua.
Поддержка UTF-8 была добавлена в целевую версию Windows в ноябре 2013 года с выпуском версии 3.9. [3]
Лицензия, авторские права
[ редактировать ]IUP имеет либеральную лицензию на бесплатное использование, модификацию, продажу и распространение в соответствии с лицензией MIT . [4]
IUP находится в разработке, по крайней мере, с момента выпуска версии 1.8 в 1998 году. Она была начата в сотрудничестве с Petrobras .
Ссылки
[ редактировать ]- ^ «ИУП для Зига» . Зиг НОВОСТИ . 19 сентября 2021 г. Проверено 16 мая 2023 г.
- ^ «IUP — Портативный пользовательский интерфейс» . www.tecgraf.puc-rio.br . Проверено 24 сентября 2016 г.
- ^ «История 3.х» . www.tecgraf.puc-rio.br . Проверено 16 мая 2023 г.
- ^ «Библиотечная лицензия Tecgraf» . www.tecgraf.puc-rio.br . Проверено 3 декабря 2015 г.
Внешние ссылки
[ редактировать ]- Программное обеспечение Lua (язык программирования)
- Наборы инструментов для виджетов
- Интерфейсы прикладного программирования
- Бесплатные компьютерные библиотеки
- Кроссплатформенное бесплатное программное обеспечение
- Программное обеспечение, использующее лицензию MIT
- Комплекты разработки программного обеспечения
- Заглушки бесплатного программного обеспечения и программного обеспечения с открытым исходным кодом