Movatterモバイル変換


[0]ホーム

URL:


Vai al contenuto
WikipediaL'enciclopedia libera
Ricerca

FLTK

Da Wikipedia, l'enciclopedia libera.
FLTK
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereLibreria grafica (non in lista)
Data prima versione1998
Ultima versione1.4.2 (23 febbraio 2025)
Sistema operativoLinux
Microsoft Windows
macOS
LinguaggioC++
LicenzaGNU Lesser General Public License
(licenza libera)
LinguaMultilingue
Sito webwww.fltk.org
Modifica dati su Wikidata ·Manuale

Fast Light Toolkit (FLTK), ininformatica, è un toolkitmultipiattaforma per la realizzazione diinterfacce grafiche (GUI)[1], sviluppata inizialmente da Bill Spitzak e altri.

Utilizzando i propriwidget, sistemi di disegno ed eventi astratti dal sistema sottostante, consente di scrivere programmi che hanno lo stesso aspetto su tutti isistemi operativi supportati.

FLTK è unsoftware libero e open source, concesso in licenza sottoGNU Lesser General Public License (LGPL) con una clausola aggiunta che consente il collegamento statico da applicazioni con licenze incompatibili.

A differenza delle librerie dell'interfaccia utente comeGTK,Qt ewxWidgets, FLTK utilizza un design più leggero e si limita alla funzionalità della GUI. Per questo motivo, lalibreria è molto piccola (il programma FLTK di"Hello World" è di circa 100KiB) e di solito ècollegata staticamente. Evita inoltre macro complesse,preprocessori di codice separati e l'uso di alcune funzionalità avanzate diC++: modelli,eccezioni einformazioni sul tipo di runtime (RTTI) o, per FLTK 1.x, inamespace. Il tutto, in combinazione con le dimensioni modeste del pacchetto, rende relativamente facile l'apprendimento per i nuovi utenti.[2]

Questi vantaggi comportano anche svantaggi corrispondenti. FLTK offre meno widget rispetto alla maggior parte dei toolkit GUI e, a causa dell'utilizzo di widget non nativi, non ha un aspetto nativo su nessuna piattaforma.

Origini del nome

[modifica |modifica wikitesto]

FLTK è stato originariamente progettato per essere compatibile con la libreria Forms sviluppata per macchineSilicon Graphics (SGI) (un derivato di questa libreria chiamatoXForms è ancora abbastanza usato). In quella libreria, tutte le funzioni e le strutture iniziano confl_ . Questa denominazione è stata estesa a tutti i nuovi metodi e widget nella libreria C++ e questo prefissoFL è stato utilizzato come nome della libreria. Dopo che FL è stato rilasciato come open source, si è scoperto che cercare "FL" su Internet era un problema, perché è anche l'abbreviazione dello stato dellaFlorida. Dopo molte discussioni e la ricerca di un nuovo nome per il toolkit, che era già utilizzato da diverse persone, Bill Spitzak ha inventatoFast Light Tool Kit (FLTK).[3]

Architettura

[modifica |modifica wikitesto]

FLTK è untoolkit widgetorientato agli oggetti scritto nel linguaggio di programmazioneC++. Mentre GTK è ottimizzato principalmente perX Window System eWayland, FLTK funziona bene su altre piattaforme, tra cuiMicrosoft Windows (interfacciato conWindows API) eMacOS (interfacciato conQuartz). È stato implementato un back-endWayland che sarà disponibile nella versione 1.4.0.[4] FLTK2 ha ottenuto il supporto sperimentale per l'utilizzo facoltativo della libreria graficaCairo.

Supporto dei linguaggi di programmazione

[modifica |modifica wikitesto]

Una libreria scritta in un linguaggio di programmazione può essere utilizzata in un altro linguaggio se vengono sviluppati i relativibinding. FLTK ha una gamma di associazioni per vari linguaggi.

FLTK è stato scritto e progettato principalmente nellinguaggio di programmazioneC++. Tuttavia, esistono binding per altri linguaggi, ad esempioLua[5],Perl[6],Python[7],Ruby[8],Rust[9] eTcl[10].

Per FLTK 1.x, questo esempio di codice crea una finestra con unpulsanteOK:

#include<FL/Fl.H>#include<FL/Fl_Window.H>#include<FL/Fl_Button.H>intmain(intargc,char*argv[]){Fl_Window*w=newFl_Window(330,190);newFl_Button(110,130,100,35,"Okay");w->end();w->show(argc,argv);returnFl::run();}

Progettazione della GUI

[modifica |modifica wikitesto]

FLTK includeFast Light User Interface Designer (FLUID), undesigner grafico della GUI che genera file sorgente e di intestazioneC++.

Versioni

[modifica |modifica wikitesto]

Questa cronologia delle versioni è un esempio della natura talvolta tumultuosa dello sviluppo open source.[11]

1.0.x

[modifica |modifica wikitesto]

Questa è la versione stabile precedente, ora non mantenuta.

1.1.x

[modifica |modifica wikitesto]

Questa è la versione stabile precedente, ora non mantenuta.

Ramo di sviluppo 2.0

[modifica |modifica wikitesto]

Questo era un ramo di sviluppo, a lungo pensato come il step successivo nell'evoluzione di FLTK, con molte nuove funzionalità e uno stile di programmazione più pulito. Non ha mai raggiunto la stabilità e lo sviluppo è sostanzialmente cessato.

1.2.x

[modifica |modifica wikitesto]

Questo è stato un tentativo di prendere alcune delle migliorie della versione 2.0 e di unirle nuovamente nel più popolare ramo 1.1. Non è più sviluppato.

1.3.x

[modifica |modifica wikitesto]

Versione stabile attuale.[11] Fornisce il supportoUTF-8.

1.4.x

[modifica |modifica wikitesto]

Ramo di sviluppo attuale. Aggiunge più funzionalità alla versione 1.3.[11]

Ramo di sviluppo 3.0

[modifica |modifica wikitesto]

Questo ramo è principalmente un modello concettuale per il lavoro futuro. Ora inattivo.

Note

[modifica |modifica wikitesto]
  1. ^(EN)Fast Light Toolkit, suwww.fltk.org.URL consultato il 30 gennaio 2020.
  2. ^(EN)Fast Light ToolKit (FLTK), sucpplibs.com(archiviato dall'url originale il 18 maggio 2015).
  3. ^(EN)Article #363: What does "FLTK" mean?, suwww.fltk.org.URL consultato il 7 maggio 2024.
  4. ^(EN)STR #3371, suwww.fltk.org, 2 aprile 2017.URL consultato il 7 maggio 2024.
  5. ^(EN)murgaLua, sumurga-projects.com(archiviato dall'url originale il 22 marzo 2016).
  6. ^(EN)FLTK.pm, suwww.fltk.org.URL consultato il 7 maggio 2024.
  7. ^(EN)pyFLTK Home Page, supyfltk.sourceforge.io.URL consultato il 7 maggio 2024.
  8. ^(EN)Ruby/FLTK, suruby-fltk.sourceforge.net.URL consultato il 7 maggio 2024.
  9. ^(EN)fltk-rs/fltk-rs, fltk-rs, 6 maggio 2024.URL consultato il 7 maggio 2024.
  10. ^(EN)Tcl/Fltk dynamic extension for Tcl, suSourceForge, 3 aprile 2013.URL consultato il 7 maggio 2024.
  11. ^abc(EN)Article #825: What are the Versions of FLTK?, sufltk.org.URL consultato il 7 maggio 2024.

Voci correlate

[modifica |modifica wikitesto]

Altri progetti

[modifica |modifica wikitesto]

Altri progetti

Collegamenti esterni

[modifica |modifica wikitesto]
  Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero
Estratto da "https://it.wikipedia.org/w/index.php?title=FLTK&oldid=141402526"
Categorie:
Categorie nascoste:

[8]ページ先頭

©2009-2025 Movatter.jp