Rilascio del toolkit grafico wxWidgets 3.3.0

Dopo tre anni di sviluppo, è stata pubblicata la versione 3.3.0 del toolkit multipiattaforma wxWidgets, che consente di creare interfacce grafiche per Linux, Windows, macOS, sistemi simili a UNIX e piattaforme mobili. Il toolkit è scritto in C++ ed è distribuito sotto la licenza wxWindows Library License, approvata dalla Free Software Foundation e dall'organizzazione OSI. La licenza si basa sulla LGPL e consente di definire le proprie condizioni per la distribuzione di opere derivate in forma binaria.

Oltre al supporto per C++, wxWidgets offre binding per la maggior parte dei linguaggi di programmazione più popolari, tra cui PHP, Python, Perl, Haskell e Ruby. L'interfaccia nelle applicazioni che utilizzano wxWidgets ha un aspetto nativo per il sistema di destinazione, grazie all'uso delle API di sistema e non a una simulazione del GUI.

wxWidgets 3.3.0 è posizionato come ramo per gli sviluppatori, dove vengono sviluppate nuove funzionalità per la prossima versione stabile 3.4.0. Questo ramo è contrassegnato come adatto per l'uso in progetti di lavoro: la differenza dalle versioni stabili è che nelle versioni intermedie dei rami per sviluppatori è consentito apportare modifiche all'ABI e all'API che rompono la compatibilità. Tali modifiche incompatibili sono sporadiche e, nel complesso, il ramo 3.3 è quasi completamente compatibile con wxWidgets 3.2 a livello di API.

Novità principali:

  • È stato implementato un nuovo backend wxWebView basato sul motore Chromium, che consente di integrare nelle applicazioni funzioni per la gestione e la visualizzazione di contenuti web.
  • Nella classe wxImage è stato aggiunto il supporto per le immagini in formato WebP.
  • Nel port wxMSW, che offre funzioni e controlli specifici per Windows, è stato aggiunto il supporto sperimentale per la modalità scura, attiva a partire da Windows 10. È stata interrotta la compatibilità con Windows XP e Vista. Per impostazione predefinita, è attivata la modalità di output con doppio buffering, come nei port wxGTK con Wayland e wxOSX.
  • Nella libreria wxAUI è stata implementata la possibilità di fissare la posizione delle schede (pin) e di creare schede multi-linea.
  • Aggiunta una variante della classe wxWebRequest per gestire richieste in modalità sincronizzata (bloccante).
  • Aggiunto un API per la gestione a basso livello degli eventi da touchscreen e touchpad.
  • Nella classe wxGrid sono stati implementati strumenti per le persone con disabilità.
  • Per i sistemi UNIX-like sono stati implementati eventi wxEVT_POWER_XXX per monitorare lo stato di consumo energetico.
  • Nel porto wxGTK, ora si utilizzano per quanto possibile i dialoghi nativi per la gestione dei file.
  • Nella classe wxTextCtrl, che crea elementi per visualizzare e modificare il testo, è stata implementata la supporto per testo con markup (RTF).
  • È stata aggiunta la supporto per animazioni e cursori su schermi ad alta densità di pixel (high DPI).
  • È stata aggiunta la supporto per la compilazione utilizzando i nuovi compilatori gcc 15, clang 19 e Xcode 16.
  • Nei sistemi UNIX-like, per la collocazione dei file di configurazione delle applicazioni è stata utilizzata la directory ~/ .config/appname.conf invece di ~/ .appname (il caricamento dei file di configurazione esistenti è stato mantenuto).
  • I porti wxMotif e wxGTK1 sono stati rimossi.
  • È stata rimossa la possibilità di compilare senza utilizzare Unicode (wxUSE_UNICODE=0).

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster