FLTK

редактировать
FLTK
FLTK shadow.svg
Первоначальный выпуск1998 г.; 22 года назад (1998 г.)
Стабильный выпуск 1.3.5 (3 марта 2019 г.; 19 месяцев назад (03.03.2019))
Предварительный выпуск 1.4.x-20200821-4c012bd7 ( 21 августа 2020 г.; 2 месяца назад (2020-08-21)
Репозиторий Измените это в Викиданных
Написано наC ++
Операционная система Unix-подобная с X11, macOS, Microsoft Windows, AmigaOS 4
Тип Библиотека пользовательского интерфейса
Лицензия Стандартная общественная лицензия ограниченного применения GNU версия 2 с исключением, позволяющим статическое связывание
Веб-сайтwww.fltk.org

Fast Light Toolkit (FLTK, произносится как fulltick) - это кроссплатформенная библиотека виджета (графический элемент управления) для графических пользовательских интерфейсов. (GUI), разработанный Биллом Спицаком и другими. Созданный для программирования 3D-графики, он имеет интерфейс к OpenGL, но он также подходит для общего программирования GUI.

Использование собственных виджетов, систем рисования и событий, абстрагированных от базового системно-зависимого кода, позволяет писать программы, которые выглядят одинаково во всех поддерживаемых операционных системах.

FLTK бесплатен и программное обеспечение с открытым исходным кодом под лицензией GNU Lesser General Public License (LGPL) с добавленным пунктом, разрешающим статические ссылки из приложений с несовместимыми лицензиями.

В отличие от библиотек пользовательского интерфейса, таких как GTK, Qt и wxWidgets, FLTK использует более легкий дизайн и ограничивается функциональностью графического интерфейса. Из-за этого библиотека очень мала (программа FLTK «Hello World» составляет около 100 KiB ) и обычно статически связана. Он также избегает сложных макросов, отдельных препроцессоров кода и использования некоторых расширенных функций C ++ : шаблонов, исключений и информации о типе времени выполнения (RTTI) или, для FLTK 1.x, пространства имен. В сочетании со скромным размером пакета это позволяет относительно легко изучить его для новых пользователей.

Эти преимущества имеют соответствующие недостатки. FLTK предлагает меньше виджетов, чем большинство наборов инструментов GUI, и из-за использования неродных виджетов не имеет собственного внешнего вида ни на одной платформе.

Содержание
  • 1 Значение имени
  • 2 Архитектура
    • 2.1 Языковые привязки
    • 2.2 Разработчики графического интерфейса
  • 3 Использование
  • 4 Версии
    • 4.1 1.0.x
    • 4.2 1.1.x
    • 4.3 2.0 ветвь
    • 4.4 1.2.x
    • 4.5 1.3.x
    • 4.6 1.4.x
    • 4.7 3.0 ветвь
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Значение имени

FLTK изначально был разработан для совместимости с библиотекой форм, написанной для машин Silicon Graphics (SGI) (производная от этой библиотеки под названием XForms все еще используется довольно часто). В этой библиотеке все функции и структуры начинаются с fl_. Это именование было распространено на все новые методы и виджеты в библиотеке C ++, и этот префикс FLбыл взят в качестве имени библиотеки. После того, как FL был выпущен как открытый исходный код, было обнаружено, что поиск «FL» в Интернете был проблемой, потому что это также сокращение от Florida. После долгих споров и поиска нового названия для набора инструментов, который уже использовался несколькими людьми, Билл Спицак придумал Fast Light Tool Kit (FLTK).

Архитектура

FLTK - это объектно-ориентированный инструментарий виджетов, написанный на языке программирования C ++. Хотя GTK в основном предназначен для X Window System, FLTK работает на других платформах, включая Microsoft Windows (взаимодействует с Windows API ) и ОС. X (сопряжен с Quartz ). Обсуждается бэкэнд Wayland. FLTK2 получил экспериментальную поддержку для необязательного использования графической библиотеки cairo.

Языковые привязки

Библиотека, написанная на одном языке программирования, может использоваться на другом языке, если написаны языковые привязки. FLTK имеет ряд привязок для различных языков.

FLTK был в основном разработан для языка программирования C ++ и написан на нем. Однако привязки существуют для других языков, например Lua, Perl, Python, Ruby, Rust и Tcl.

Для FLTK 1.x в этом примере создается окно с кнопкой ОК :

#include #include #include int main (int argc, char * argv) {Fl_Window * w = новое Fl_Window (330, 190); новый Fl_Button (110, 130, 100, 35, «Хорошо»); w->конец (); w->показать (argc, argv); вернуть Fl :: run (); }

Дизайнеры GUI

FLTK включает Fast Light User Interface Designer (FLUID ), графический GUI дизайнер, который генерирует исходный код C ++ и заголовочные файлы.

Используйте

FLTK используется во многих программах и проектах, в том числе:

  • Nanolinux, 14 МБ Linux-дистрибутив
  • XFDOS, дистрибутив на основе FreeDOS с GUI, портирование Nano-X и FLTK
  • Agenda VR3, основанный на Linux персональный цифровой помощник с программным обеспечением на ФЛТК.
    • third-party Agenda VR3 программное обеспечение
  • Amnesia: The Dark Descent от Frictional Games использует FLTK в качестве приложения для запуска
  • , Логическая головоломка для персонального компьютера от YPH.
  • Аудио:
    • Fldigi, любительское радио программное обеспечение, позволяющее передавать данные и текстовый чат в цифровых режимах, таких как PSK31
    • Giada, лупер, микропроцессор, программное обеспечение сэмплового проигрывателя, открытый исходный код
    • Prodatum, редактор предустановок синтезатора, использует реалистичный дизайн интерфейса
    • ZynAddSubFX, открытый исходный код программный синтезатор
  • DiSTI GL Studio, инструмент разработки человеко-машинного интерфейса
  • Конструирование:
    • ForcePAD, интуитивно понятный инструмент для визуализации поведения конструкций, подверженных нагрузкам и граничным условиям
    • Gmsh, конечно-элементный генератор сетки с открытым исходным кодом
    • RoboCIM, программное обеспечение для моделирования и управления работой серво-роботизированной системы и внешних устройств
  • Equinox Desktop Environment ( EDE)
  • Запись оптических дисков FlBurn ПО для Linux
  • Графика:
    • Avimator, редактор Biovision Hierarchy (BVH)
    • CinePaint, ПО для глубокой раскраски, переход с От GTK до FLTK, с открытым исходным кодом
    • ITK-SNAP, программное приложение для сегментации медицинских изображений, с открытым исходным кодом
    • Nuke, программа для цифрового композитинга. До версии 5, теперь заменен на Qt
    • Open Movie Editor
    • OpenVSP, параметрическое создание эскизов самолетов НАСА, недавно открытый
    • PosteRazor, программное обеспечение для печати плакатов с открытым исходным кодом для Windows, OS X, Linux
  • SmallBASIC, порт Windows
  • Веб-браузеры:
    • Dillo, Dillo-2 был основан на FLTK-2, отказ от этой ветки FLTK без официального выпуска был основная причина запуска Dillo-3 с использованием FLTK1.3
    • В-пятых, повторяет функционирование ранних Opera
    • NetRider
  • оконных менеджеров X :
Версии

Эта история версий является примером иногда бурного характера разработки с открытым исходным кодом.

1.0.x

Это предыдущая стабильная версия, в настоящее время не поддерживаемая.

1.1.x

Это предыдущая стабильная версия, в настоящее время не поддерживаемая.

Ветвь 2.0

Это ветвь разработки, долгое время считавшаяся следующим шагом в развитии FLTK, с множеством новых функций и более чистым стилем программирования. Он так и не достиг стабильности, и развитие в основном остановилось. Ветка сейчас неактивна.

1.2.x

Это была попытка взять некоторые из лучших возможностей 2.0 и объединить их обратно в более популярную ветку 1.1. Больше не разрабатывается.

1.3.x

Текущая стабильная версия. Обеспечивает поддержку UTF-8.

1.4.x

Текущая ветвь разработки. Добавляет больше возможностей в 1.3.

3.0 ветка

Эта ветка в основном представляет собой концептуальную модель для будущей работы. Сейчас неактивен.

См. Также
  • Портал бесплатного программного обеспечения с открытым исходным кодом
Ссылки
Внешние ссылки

.

Последняя правка сделана 2021-05-20 07:57:58
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте