WxWidgets

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 8. března 2021; kontroly vyžadují 14 úprav .

wxWidgets
Typ knihovna prvků rozhraní (widgetů)
Vývojář Vývojáři a přispěvatelé
Zapsáno v C++ , Perl , Python
Operační systém UNIXové , Windows
Jazyky rozhraní Ve 37 jazycích včetně ruštiny
Nejnovější verze 3.2.1 ( 9. září 2022 ) [1]
Stát Aktivní
Licence licence wxWidgets ( kompatibilní s GPL )
webová stránka wxwidgets.org
 Mediální soubory na Wikimedia Commons

wxWidgets (dříve známý jako wxWindows ) je open -source multiplatformní nástrojová knihovna pro vývoj multiplatformních aplikací na zdrojové úrovni. Hlavní použití wxWidgets je vytvořit grafické uživatelské rozhraní (GUI), ale knihovna obsahuje velké množství dalších funkcí a používá se k vytváření široké škály softwaru. wxWidgets je uvolněn pod licencí založenou na LGPL . Projekt odstartoval v roce 1992 Julian Smart, který je stále členem základního vývojového týmu a zaměřuje se na něj zejména vývojem WxWidgets GUI frameworku - DialogBlocks [2] .

Technické vlastnosti a výhody

wxWidgets je vývojářský nástroj pro psaní desktopových nebo mobilních aplikací s grafickým uživatelským rozhraním (GUI), které ušetří spoustu času při psaní multiplatformních aplikací a zajistí jim standardní chování.

Aplikace obvykle zobrazují uživatelská okna se standardními ovládacími prvky , obrázky a grafy; reagovat na události z myši , klávesnice a dalších zdrojů - tyto standardní funkce rozhraní se snadno implementují pomocí wxWidgets a ustupují do pozadí, což umožňuje programátorovi soustředit se na funkčnost aplikace. Navíc, protože jiné funkce mohou být implementovány odlišně na různých operačních systémech a zařízeních, wxWidgets obsahuje nástroje na vysoké úrovni (sady tříd) pro práci s grafickými obrázky, dokumenty ve formátech XML a HTML , archivy, systémy souborů, procesy , tiskové subsystémy, multimédia, sítě , třídy pro multithreading , konfigurace aplikací, meziprocesová komunikace, přístup k databázi , ladění, odesílání výpisů a mnoho dalších nástrojů.

Tyto pokročilé nástroje v knihovně wxWidgets vám umožňují psát programy založené na jediném API a kompilovat je na různých počítačových platformách s minimálními nebo žádnými změnami ve zdrojovém kódu . Podporuje Microsoft Windows , Apple Macintosh , UNIXové systémy (pro X11 , Motif a GTK ), OpenVMS a OS/2 . Embedded verze je ve vývoji.

Knihovna je napsána v C++ , ale lze ji propojit s mnoha dalšími běžnými jazyky , jako je Ruby ( wxRuby , Anvil ), Python ( wxPython ), Smalltalk ( wxSqueak ), Perl , Erlang , Haskell [3] , Lua [4] .

Mezi podporované kompilátory C++ patří :

Důležitá vlastnost wxWidgets: na rozdíl od některých jiných knihoven ( Swing , Qt atd.) maximálně využívá „nativní“ grafické prvky rozhraní operačního systému , kdekoli je to možné. To je pro mnoho uživatelů značná výhoda, protože si zvyknou na práci v konkrétním prostředí a změny v rozhraní programu jim často způsobují potíže v práci.

WxWidgets má také všechny výhody bezplatné open source platformy:

Navíc extrémně "liberální" licence wxWidgets umožňuje propojení s nesvobodnými fragmenty kódu, což umožňuje použití i v uzavřených komerčních projektech.

Všechny výše uvedené funkce přispěly k oblibě knihovny u široké škály vývojářů – od nadšených programátorů po velké korporace a vládní agentury (včetně Xerox , AMD , NASA a mnoha dalších).

Stručná historie wxWidgets

Projekt s názvem wxWindows byl založen v roce 1992, když Julian Smart pracoval na University of Edinburgh na nástroji pro vytváření grafů s názvem „Hardy“. Namísto výběru mezi vývojem pro pracovní stanici Sun nebo platformu PC se Julian rozhodl použít multiplatformní rámec. Vzhledem k tomu, že síla existujících multiplatformních frameworků byla omezená a oddělení nemělo potřebný rozpočet na sepsání jednoho, rozhodl se jej napsat sám. Univerzita dala Julianovi přístup ke stažení wxWindows 1.0 na FTP server katedry v září 1992 a další vývojáři začali používat jeho kód.

Malá, ale nadšená komunita programátorů wxWindows se rychle rozrostla a vytvořila si vlastní mailing list . Doplnění a opravy byly distribuovány v seznamu adresátů. Postupně se uživatelská základna knihovny rozšířila po celém světě: jednotliví programátoři, akademické skupiny, vládní agentury a ti, kteří zjistili, že wxWindows je uživatelsky přívětivější produkt s lepší podporou než komerční produkty, které dříve viděli nebo používali.

wxWindows byl původně zaměřen na Xview a MFC 1.0. Uživatelé Borland C++ , kteří si stěžovali na vazbu MFC, tak začali přepisovat programy na čisté Win32 . Protože XView otevřel cestu k Motifu , port na Motif byl spuštěn velmi rychle.

V roce 1997 byla za pomoci Markuse Holzema (který vytvořil směr wxWindows Xt ještě v dobách konference) navržena nová verze rozhraní wxWindows 2 API. Wolfram Gloger navrhl myšlenku portování wxWindows na GTK a Robert Roebling vytvořil potřebnou uživatelskou grafiku upravenou pro GNOME . Byl průkopníkem vývoje wxGTK a stále je hlavním přispěvatelem k vývoji unixového/linuxového portu wxWidgets.

V roce 1998 byly porty Windows a GTK zkombinovány a uvolněny pod systémem CVS . Vadim Zeitlin se k projektu připojil, aby pomohl vyvinout velkou část designu a kódu. Stefan Chomor také v roce 1998 začal vytvářet port pro MacOS.

Rok 1999 je ve znamení příchodu programátora Václava Slavíka. Vytvořil působivé třídy wxHTML a prohlížeč souborů nápovědy založený na HTML .

V roce 2000 SciTech Inc. financoval začátek vývoje wxUniversal, vlastní sady uživatelské grafiky wxWindows pro použití na platformách, které zatím žádnou uživatelskou grafiku nemají.

V roce 2002 přidali Julian Smart a Robert Reubling port wxX11 pomocí wxUniversal.

V červenci 2003 začal wxWindows běžet na Windows CE a Robert Reubling předvedl aplikaci wxGTK běžící na vestavěné platformě GPE Linux.

Dne 20. února 2004 vývojáři wxWindows varovali, že projekt bude přejmenován na wxWidgets v důsledku jednání mezi Microsoftem a Julianem Smartem v souvislosti s vyhrazenou ochrannou známkou Windows společnosti Microsoft (vývojáři wxWidgets a dalších souvisejících projektů obdrželi finanční kompenzaci za změna názvu) [5 ] . Také v roce 2004 Stefan Chomor a jeho tým úspěšně dokončili portování wxWidgets (wxMac) na MAC OS X, čímž se výrazně rozšířila funkčnost aplikací pro OS X. Významně byl vylepšen port využívající Cocoa (v čele s Davidem Elliotem a Williamem Osbornem). William Osborne vyhrál soutěž o vytvoření verze wxWidgets pro Palm OS 6 s cílem minimální podpory platformy.

V dubnu 2005 byla vydána verze 2.6, která spojuje všechny hlavní porty frameworku.

Běžný software napsaný v wxWidgets

Viz také Kategorie: Aplikace používající WxWidgets

Viz také

Poznámky

  1. Vydán wxWidgets 3.2.1 .
  2. JulianSmart.com Archivováno 26. listopadu 2014.
  3. wxHaskell . Získáno 1. října 2009. Archivováno z originálu 23. dubna 2009.
  4. wxLua (downlink) . Získáno 22. února 2008. Archivováno z originálu 17. srpna 2010. 
  5. Změna názvu wxWidgets  . - Změňte název na wxWidgets. Získáno 29. října 2008. Archivováno z originálu dne 27. srpna 2011.

Literatura

Odkazy

Dokumentace nápovědy