Агар — это тип сахарного полимера, полученный из морских и красных водорослей. В воде он становится желеобразным и в основном используется в качестве питательной среды для микробиологических работ. Agar (или LibAgar ) — это также название набора инструментов GUI с открытым исходным кодом, набора программных библиотек для создания графических пользовательских интерфейсов.
Agar работает с самыми разными платформами и графическими системами: от современных настольных компьютеров до классических консолей и встраиваемых устройств. Его низкоуровневые уровни являются модульными, расширяемыми и легко портируются на новые аппаратные платформы и графические системы. Стандартные драйверы включают в себя:
Для графических систем без возможностей многооконного режима (или в случаях, когда интерфейс в стиле MDI предпочтительнее интеграции с настольным компьютером) предусмотрен однооконный режим, и в этом случае Agar предоставляет собственный внутренний оконный менеджер.
Каскадный механизм стилей Agar отделяет детали презентации от базового кода. Атрибуты стиля, включая типографику, цвета, отступы и интервалы между виджетами, можно назначать из таблицы стилей с использованием общего языка. Инструмент «Редактор стилей» позволяет просматривать изменения стиля в режиме реального времени.
Хотя Agar включает стандартную библиотеку виджетов общего назначения, она также предназначена для внешнего расширения. Новые виджеты Agar можно реализовать как часть приложения или внешней библиотеки. Сложные элементы пользовательского интерфейса часто можно реализовать в нескольких строках кода. Интерфейс регистрации классов упрощает процесс.
Чтобы облегчить отладку, версия Debug выполняет проверку типов, проверку правильности объекта и членства в классе по указателям объектов, передаваемым вызовам API во время выполнения. Agar является потокобезопасным, если он создан с поддержкой потоков. Вызовы публичного API являются реентерабельными, если не указано иное, хотя Agar не использует потоки для своей собственной работы.
См. прилагаемый INSTALL.md или онлайн-руководство по установке: