FLTK
FLTK | |
Информация | |
---|---|
Начална версия | 1998 |
Програмен език | C++ |
Операционна система | Unix-Linux-BSD (X11), OS X, Windows, AmigaOS 4 |
Вид софтуер | Widget toolkit |
Лиценз | GNU Lesser General Public License (с изключение позволяващо static linking) |
Уебсайт | www.fltk.org |
FLTK в Общомедия |
Fast Light Tool Kit (FLTK, произнася се „фултик“)[1] е мулти-платформена библиотека за създаване на графичен потребителски интерфейс (GUI), разработена от Бил Спитзак и други. Създадена за пресъздаване на 3D графики, има интерфейс към OpenGL, но също така е подходяща за общото GUI програмиране.
FLTK използва своите собствени системи за рисуване и реагиране към събития, въпреки че FLTK2 придобива експериментална поддръжка на графичната библиотека cairo), което позволява писането на програми, които изглеждат еднакво независимо от операционната система на която работят.
FLTK е свободен софтуер, лицензиран под LGPL с допълнителна клауза, позволяваща статично свързване от приложения с несъвместими лицензи. Тя включва FLUID (FLTK User Interface Designer), графичен GUI дизайнер, който възпроизвежда C++ код.
В контраст с библиотеки като Qt и wxWidgets, FLTK използва по-лек дизайн и има по-ограничен набор от елементи. Поради това, библиотеката е много лека (Една FLTK Hello World програма е около 100 KiB), и обикновено е статично свързана. В библиотеката също така се избягват сложни макроси, отделни предпроцесори, и липсва поддръжка за следните напреднали C++ функции: темплейти, изключения, RTTI и (единствено за FLTK 1.x) namespaces. В комбинация със скромните размери на библиотеката, това води до относително кратък период на обучение за нови потребители.
Тези предимства идват със съответните недостатъци. FLTK предлага по-малко елементи, отколкото повечето GUI библиотеки. Фактът, че FLTK използва само собствени елементи, може да пречи на програмата да се „слее“ със стила наложен от операционната система.
Значение на името
FLTK първоначално е проектиран да бъде съвместим с библиотеката Forms, написана за SGI машини (Производна на тази библиотека все още се използва често под името XForms). В тази библиотека всички функции и структури започват с fl_. Това наименование продължило да се използва за всички нови функции и елементи в C++ библиотеката. Така представката FL е взета за име на библиотеката. След като кодът на FL започва да се разпространява като свободен, се установява, че е невъзможно библиотеката да се намира лесно от интернет търсачките, поради факта, че FL е също така съкращение и за Флорида. След много дебати и търсене за ново име за библиотеката, която по това време е използвана от няколко души, Бил Спитзак я кръщава FLTK, което е съкращение от Fast Light Tool Kit.[2]
Използване в езици за програмиране
FLTK е проектиран за, и написан на програмния език C++. Въпреки това FLTK може да се използва и с други езици, сред които са Perl,[3] Python,[4] Lua[5] и Ruby.[6]
Следващият пример за FLTK 1.x възпроизвежда прозорец с Okay бутон
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Button.H>
int main(int argc, char *argv[]) {
Fl_Window* w = new Fl_Window(330, 190);
new Fl_Button(110, 130, 100, 35, "Okay");
w->end();
w->show(argc, argv);
return Fl::run();
}
Списък със софтуер, използващ FLTK
- TorApp.Info Online Security Printing Platform
- Prodatum
- ITK-SNAP
- CinePaint е в процес на миграция от GTK+ към FLTK.
- FLWM, е мениджър за прозорци използващ FLTK и библиотеката X
- miwm е мениджър за прозорци, който също използва FLTK и библиотеката X
- Nuke използва FLTK до версия 5, който впоследствие заменя с Qt (toolkit)
- SmallBasic за Уиндоус
- PosteRazor – Програма с отворен код за принтиране на постери работеща под Уиндоус, Мак ОС Х и Линукс
- Avimator – Базов BVH редактор с отворен код. Работи под Уиндоус, Мак и Линукс
- Dillo – Минималистичен уеб браузър. Dillo-2 е бил базиран на FLTK-2, но изоставянето на тази версия без официален релийз, е бил главен фактор в започването на Dillo-3, който използва FLTK1.3.
- Gmsh – генератор на Крайни Елементи с отворен код
- EDE – (Съкращение за Equinox Desktop Environment) e лека десктоп среда с отворен код.
- Open Movie Editor Базов видео редактор насочен предимно към аматьори във филмовото редактиране поради по-малкият набор от функции сравнено с професионалните редактори. Отворен код.
- Agenda VR3
- ForcePAD
- FlBurn Линукс софтуер за изпичане на оптични дискове
- DiSTI's GL Studio Архив на оригинала от 2012-08-15 в Wayback Machine.
- [Amnesia: The Dark Descent] е игра на [Frictional Games], която използва FLTK за своята лаунчер апликация
- FIdigi, е софтуер за амарьорско радио, който позволява размяна на информация и обмяна на текстови съобщения чрез PSK32.
- Giada – Your Hardcore Loopmachine Архив на оригинала от 2011-09-25 в Wayback Machine. – Отворен код.
- OpenVSP – Софтуер за чертаене на въздушни превозни средства. От скоро е отворен код.
Версии
1.0.x
Това е предишна стабилна версия, която вече не се поддържа
1.1.x
Тази версия е стабилна и се поддържа
Клон 2.0
За този клон дълго се е смятало, че ще бъде следващата стъпка в еволюцията на FLTK, с много новости и по-чист стил на програмиране, но така и не достига стабилност и работата по него е почти спряна
1.2.x
Това е бил опит да се вземат някои от най-добрите черти на 2.0 и да бъдат сляни с по-популярния клон 1.1. Работата по този клон е спряна.
1.3.x
Това е клонът, по който се работи най-активно. Проектът не е толкова амбициозен колкото 2.0 е бил преди време.
Клон 3.0
Този клон е модел за бъдеща разработка
Източници
- ↑ FLTK home
- ↑ www.fltk.org
- ↑ www.fltk.org
- ↑ pyFLTK homepage
- ↑ murgaLua homepage // Архивиран от оригинала на 2012-07-07. Посетен на 2012-08-16.
- ↑ Ruby/FLTK homepage www.fltk.org]
Външни препратки
- Официален уебсайт
- FLTK урок (EN) Архив на оригинала от 2009-07-20 в Wayback Machine.
- FLTK 1.3.0 урок (EN) Архив на оригинала от 2013-05-12 в Wayback Machine.
- Erco's FLTK Cheat Page (EN)
- Настройване на FLTK с Microsoft Visual Studio (EN)
Тази страница частично или изцяло представлява превод на страницата FLTK в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс – Признание – Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година – от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница, за да видите списъка на съавторите.
ВАЖНО: Този шаблон се отнася единствено до авторските права върху съдържанието на статията. Добавянето му не отменя изискването да се посочват конкретни източници на твърденията, които да бъдат благонадеждни. |