FLTK - FLTK
První vydání | 1998 |
---|---|
Stabilní uvolnění | 1.3.5 (3. března 2019[1]) [±] |
Náhled verze | 1.4.x-20200821-4c012bd7 (21. srpna 2020[±] | )
Úložiště | |
Napsáno | C ++ |
Operační systém | Unixový s X11, Operační Systém Mac, Microsoft Windows, AmigaOS 4 |
Typ | Knihovna uživatelského rozhraní |
Licence | GNU Lesser General Public License verze 2 s výjimkou povolit statické propojení[2] |
webová stránka | www |
Sada rychlých světel (FLTK, vyslovováno fulltick)[3] je napříč platformami widget knihovna (grafický ovládací prvek) pro grafická uživatelská rozhraní (GUI), vyvinutý Billem Spitzakem a dalšími. Vyrobeno pro ubytování 3D grafika programování, má rozhraní OpenGL, ale je také vhodný pro obecné programování GUI.
Pomocí vlastního systému widgetů, výkresů a událostí získaných ze základního kódu závislého na systému umožňuje psaní programů, které vypadají stejně na všech podporovaných operační systémy.
FLTK je bezplatný open source software, pod licencí GNU Lesser General Public License (LGPL) s přidanou klauzulí umožňující statické propojení aplikací s nekompatibilními licencemi.
Na rozdíl od knihoven uživatelského rozhraní jako GTK, Qt, a wxWidgets, FLTK používá lehčí design a omezuje se na funkčnost GUI. Z tohoto důvodu je knihovna velmi malá (FLTK Program „Hello World“ je kolem 100 KiB ), a je obvykle staticky propojeno. Rovněž se vyhýbá složitým makrům, samostatným preprocesorům kódu a použití některých pokročilých C ++ funkce: šablony, výjimky, a informace o typu běhu (RTTI) nebo pro FLTK 1.x, jmenné prostory. V kombinaci se skromnou velikostí balíčku to umožňuje novým uživatelům relativně snadné učení.[4]
Tyto výhody přicházejí s odpovídajícími nevýhodami. FLTK nabízí méně widgetů než většina nástrojů GUI a díky použití nepůvodních widgetů nemá nativní vzhled a chování na žádné platformě.
Význam jména
FLTK byl původně navržen tak, aby byl kompatibilní s Knihovnou formulářů psanou pro Křemíková grafika (SGI) machines (a derivate of this library called XForms se stále používá poměrně často). V této knihovně začínají všechny funkce a struktury fl_
. Toto pojmenování bylo rozšířeno na všechny nové metody a widgety v knihovně C ++ a tuto předponu FL
byl považován za název knihovny. Poté, co byl FL vydán jako otevřený zdroj, bylo zjištěno, že hledání „FL“ na internetu je problém, protože je to také zkratka pro Florida. Po mnoha debatách a hledání nového názvu sady nástrojů, kterou již používalo několik lidí, přišel Bill Spitzak s Sada rychlého nářadí (FLTK).[5]
Architektura
FLTK je objektově orientovaný sada nástrojů widget napsáno v programovacím jazyce C ++. Zatímco GTK je hlavně pro Systém X Window FLTK funguje na jiných platformách, včetně Microsoft Windows (propojený s Windows API ), a OS X (propojený s Křemen ). A Wayland back-end se diskutuje.[6] FLTK2 získal experimentální podporu pro volitelné použití cairo grafická knihovna.
Jazykové vazby
Knihovna napsaná v jednom programovacím jazyce může být použita v jiném jazyce, pokud jazykové vazby jsou psány. FLTK má řadu vazeb pro různé jazyky.[7]
FLTK byl hlavně navržen pro a je napsán v programovací jazyk C ++. Vazby však existují například pro jiné jazyky Lua,[8] Perl,[9] Krajta,[10] Rubín,[11] Rez[12] a Tcl.[13]
U FLTK 1.x tento příklad vytvoří okno s dobře knoflík:
#zahrnout <FL/Fl.H>#zahrnout <FL/Fl_Window.H>#zahrnout <FL/Fl_Button.H>int hlavní(int argc, char *argv[]) { Fl_Window* w = Nový Fl_Window(330, 190); Nový Fl_Button(110, 130, 100, 35, "Dobře"); w->konec(); w->ukázat(argc, argv); vrátit se Fl::běh();}
Návrháři grafického uživatelského rozhraní
FLTK zahrnuje Návrhář uživatelského rozhraní Fast Light (TEKUTINA ), grafické GUI návrhář který generuje C ++ zdrojové a hlavičkové soubory.
Použití
Mnoho programů a projektů používá FLTK, včetně:
- Nanolinux, 14 MB distribuce Linuxu[14][15][16][17][18][19]
- XFDOS, distribuce založená na FreeDOS s a GUI, portování Nano-X a FLTK[20][21][22][23]
- Agenda VR3, a Linux -na základě osobní digitální asistent se softwarem založeným na FLTK.
- třetí strana Agenda VR3 software
- Amnesia: The Dark Descent tím, že Třecí hry používá FLTK jako svou spouštěcí aplikaci
- MwendanoWD, Logická hádanka pro osobní počítač od YPH.[24]
- Zvuk:
- Fldigi, amatérské rádio software, umožňuje přenos dat a textový chat prostřednictvím digitálních režimů, jako je PSK31
- Giada, looper, mikrosekvencer, software přehrávače vzorků, open-source[25]
- Prodatum, editor předvoleb syntezátoru, používá realistický design rozhraní[26]
- ZynAddSubFX, open-source softwarový syntetizátor
- DiSTI GL Studio, vývojový nástroj rozhraní člověk-stroj[27]
- Inženýrství:
- ForcePAD, intuitivní nástroj pro vizualizaci chování struktur vystavených zatížení a okrajovým podmínkám[28]
- Gmsh, open-source konečný element generátor sítě
- RoboCIM, software pro simulaci a řízení provozu systému servomotoru a externích zařízení[29]
- Desktopové prostředí Equinox (EDE)
- Software pro vypalování optických disků FlBurn pro Linux[30]
- Grafika:
- Avimátor, a Hierarchie biovision (BVH) editor
- CinePaint, software pro hluboké barvy, migrace z GTK do FLTK, open-source
- ITK-SNAP, softwarová aplikace pro segmentaci lékařských obrazů, open-source
- Nuke, program digitálního skládání. Do verze 5, nyní nahrazeno Qt
- Otevřete editor filmů[31]
- OpenVSP, parametrické skicování letadel NASA, nedávno otevřené[32]
- PosteRazor, open-source software pro tisk plakátů pro Windows, OS X, Linux[33]
- SmallBASIC, Port Windows
- Internetové prohlížeče:
- X správci oken:
- FLWM
- miwm
Verze
Tato sekce potřebuje expanzi. Můžete pomoci přidávat k tomu. (Červenec 2010) |
Tato historie verzí je příkladem někdy bouřlivé povahy open-source vývoj.[36]
1.0.x.
Toto je předchozí stabilní verze, nyní neudržovaná.
1.1.x
Toto je předchozí stabilní verze, nyní neudržovaná.
Větev 2.0
Toto bylo vývojové odvětví, o kterém se dlouho myslelo, že je dalším krokem ve vývoji FLTK, s mnoha novými funkcemi a čistším stylem programování. Nikdy nedosáhlo stability a vývoj se z velké části zastavil. Pobočka je nyní neaktivní.
1.2.x.
Jednalo se o pokus využít některé z nejlepších funkcí verze 2.0 a sloučit je zpět do populárnější větve 1.1. Již se nevyvíjí.
1.3.x.
Aktuální stabilní vydání.[37] Poskytuje podporu UTF-8.
1.4.x
Aktuální vývojová větev. Přidává do funkce 1.3 další funkce.[38]
Větev 3.0
Tato větev je většinou koncepčním modelem pro budoucí práci. Nyní neaktivní.
Viz také
- GTK
- gtkmm (C ++ vazba GTK)
- Sada nástrojů FOX
- IUP (software) - sada nástrojů pro více platforem pro vytváření nativních grafických uživatelských rozhraní
- Juce
- Qt (software)
- Visual Component Framework (VCF)
- Sada widgetů
- wxWidgets - multiplatformní open source sada nástrojů pro C ++ widgety vyvinutá komunitou
- Ultimate ++
- Seznam sad nástrojů pro widgety
Reference
- ^ https://www.fltk.org/articles.php?L1635
- ^ „Licenční smlouva FLTK“.
- ^ „FLTK home“.
- ^ „Archivovaná kopie“. Archivovány od originál dne 2015-05-18. Citováno 2015-05-13.CS1 maint: archivovaná kopie jako titul (odkaz)
- ^ https://www.fltk.org/articles.php?L363+I0+TFAQ+P1+Q
- ^ „STR # 3371: Wayland Display Server Protocol support - Fast Light Toolkit (FLTK)“. www.fltk.org. Citováno 2020-08-06.
- ^ „Vazby jazyků GTK“.
- ^ „domovská stránka murgaLua“.
- ^ https://www.fltk.org/wiki.php?LC+P139+TC+Q
- ^ "domovská stránka pyFLTK".
- ^ „Domovská stránka Ruby / FLTK“.
- ^ "dokumentace přepravky FLTK".
- ^ „Domovská stránka Tcl / Fltk“.
- ^ „Oficiální web Nanolinux“.
- ^ https://eerielinux.wordpress.com/2014/11/30/tiny-to-the-extreme-nanolinux/
- ^ https://eerielinux.wordpress.com/2014/12/30/an-interview-with-the-nanolinux-developer/
- ^ „Archivovaná kopie“. Archivováno z původního dne 1999-04-20. Citováno 2019-08-15.CS1 maint: archivovaná kopie jako titul (odkaz)
- ^ http://sites.utoronto.ca/webdocs/HTMLdocs/PCTOOLS/pc_editors.html
- ^ http://www.georgpotthast.de/
- ^ https://eerielinux.wordpress.com/2012/10/12/an-extraordinary-tk-example/
- ^ https://eerielinux.wordpress.com/2014/12/30/an-interview-with-the-nanolinux-developer/
- ^ „Archivovaná kopie“. Archivováno z původního dne 1999-04-20. Citováno 2019-08-15.CS1 maint: archivovaná kopie jako titul (odkaz)
- ^ http://www.georgpotthast.de/
- ^ YPH
- ^ „Giada, hardcore loopmachine“. Archivovány od originál dne 25. 09. 2011. Citováno 2011-09-29.
- ^ Prodatum
- ^ DiSTI GL Studio
- ^ ForcePAD
- ^ RoboCIM - robotický software
- ^ FlBurn
- ^ Otevřete editor filmů
- ^ OpenVSP
- ^ PosteRazor
- ^ Pátý prohlížeč
- ^ NetRider
- ^ „Jaké jsou verze FLTK?“. Citováno 2010-07-23.
- ^ https://www.fltk.org/articles.php?L825 Přijato 5. března 2017.
- ^ https://www.fltk.org/articles.php?L825 Přijato 5. března 2017.