Wydanie graficznego narzędzia wxWidgets 3.2.0

Po 9 latach od wydania wersji 3.0 zaprezentowano pierwsze wydanie nowej stabilnej wersji wieloplatformowego narzędzia wxWidgets 3.2.0, które umożliwia tworzenie interfejsów graficznych dla systemów Linux, Windows, macOS, UNIX i platform mobilnych. W porównaniu do wersji 3.0 zauważono szereg niekompatybilności na poziomie API. Narzędzie napisane jest w języku C++ i udostępniane na podstawie wolnej licencji wxWindows Library License, zatwierdzonej przez Fundację Otwartych Technologii oraz organizację OSI. Licencja oparta jest na LGPL i różni się możliwością stosowania własnych warunków dystrybucji prac pochodnych w formie binarnej.

Oprócz tworzenia programów w C++, wxWidgets oferuje powiązania dla większości popularnych języków programowania, w tym PHP, Python, Perl i Ruby. W przeciwieństwie do innych narzędzi, wxWidgets zapewnia aplikacjom prawdziwie natywny wygląd i metody interakcji dla docelowego systemu, dzięki używaniu systemowych API, a nie symulacji GUI.

Główne nowości:

  • Zrealizowano nowy eksperymentalny port wxQt, który umożliwia działanie wxWidgets na frameworku Qt.
  • W porcie wxGTK zapewniono pełne wsparcie dla protokołu Wayland.
  • Dodano wsparcie dla ekranów o wysokiej gęstości pikseli (High DPI). Dodano możliwość przypisania różnych DPI dla różnych monitorów oraz dynamicznej zmiany DPI. Zaproponowano nowe API wxBitmapBundle, które umożliwia manipulację wieloma wersjami rastrowego obrazu w różnych rozdzielczościach jako całości.
  • Proponowany jest nowy system budowy oparty na CMake. System budowy zyskał wsparcie dla nowych kompilatorów (w tym MSVS 2022, g++ 12 i clang 14) oraz systemów operacyjnych.
  • Przeprojektowano wsparcie dla OpenGL, poprawiono wykorzystanie nowych wersji OpenGL (3.2+).
  • Dodano wsparcie dla kompresji LZMA i plików ZIP 64.
  • Wzmożono zabezpieczenia na etapie kompilacji, dzięki możliwości wyłączenia niebezpiecznych niejawnych konwersji pomiędzy łańcuchami typów wxString i «char*».
  • Dodano wsparcie dla zdarzeń dla gestów sterujących, wykonywanych za pomocą myszy.
  • W klasach wxFont i wxGraphicsContext dodano możliwość określenia wartości niecałkowitych przy definiowaniu rozmiaru czcionek i szerokości pisaka.
  • W klasie wxStaticBox wprowadzono możliwość przypisywania dowolnych etykiet oknom.
  • W API wxWebRequest dodano wsparcie dla HTTPS i HTTP/2.
  • W klasie wxGrid dodano wsparcie dla zamrażania kolumn i wierszy.
  • Wprowadzono nowe klasy: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile i wxUILocale.
  • Dla wszystkich nowych i niektórych istniejących klas zrealizowano nowe obsługi XRC.
  • Wprowadzone nowe metody: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Wprowadzono znaczne ulepszenia w klasach wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl i wxUIActionSimulator.
  • Ulepszono wsparcie dla platformy macOS, w tym umożliwiono korzystanie z ciemnego motywu i dodano wsparcie dla urządzeń na procesorach ARM.
  • Wprowadzono ulepszenia związane z wsparciem standardu C++11. Dodano wsparcie dla kompilacji z użyciem C++20.
  • Zaktualizowano wszystkie zewnętrzne biblioteki zawarte w zestawie. Dodano wsparcie dla WebKit 2 i GStreamer 1.7.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster