Wydanie zestawu narzędzi graficznych wxWidgets 3.1.4

Odbyła się wydanie wieloplatformowego zestawu narzędzi wxWidgets 3.1.4, który umożliwia tworzenie interfejsów graficznych dla platform Linux, Windows, macOS, UNIX i mobilnych. wxWidgets 3.1 jest pozycjonowany jako gałąź programistów, która opracowuje nowe funkcje dla następnej stabilnej wersji 3.2.0. W porównaniu z gałęzią 3.0 istnieje wiele niezgodności na poziomie API i nie ma gwarancji, że ABI pozostanie takie samo pomiędzy pośrednimi wydaniami 3.1.x.

Zestaw narzędzi jest napisany w języku C++ i jest rozpowszechniany na bezpłatnej licencji Licencja biblioteczna wxWindows, zatwierdzony przez Free Software Foundation i organizację OSI. Licencja oparta jest na licencji LGPL i wyróżnia się zezwoleniem na używanie własnych warunków do rozpowszechniania utworów pochodnych w formie binarnej. Oprócz tworzenia programów w C/C++, wxWidgets zapewnia powiązania dla najpopularniejszych języków programowania, w tym PHP, Python, Perl и Rubin. W przeciwieństwie do innych zestawów narzędzi, wxWidgets zapewnia aplikacji prawdziwie natywny wygląd i działanie dla systemu docelowego, korzystając z systemowych interfejsów API, a nie naśladując GUI.

Główne innowacje:

  • Nowy system kompilacji oparty na CMake. Do systemu asemblera dodano obsługę nowych kompilatorów (MSVC 2019, g++ 10) i systemów operacyjnych (macOS 10.14 i macOS 11 dla ARM);
  • Nowy eksperymentalny port wxQt;
  • Przeprojektowano obsługę OpenGL, poprawiono obsługę nowych wersji OpenGL (3.2+);
  • Dodano obsługę zdarzeń dla gestów kontrolnych odtwarzanych za pomocą myszki;
  • Dodano możliwość określenia wartości niecałkowitych w wxFont i wxGraphicsContext podczas definiowania rozmiarów czcionek i szerokości pisaków;
  • wxStaticBox implementuje możliwość przypisywania dowolnych etykiet do okien;
  • Ulepszona obsługa ekranów o dużej gęstości pikseli (High DPI);
  • Dodano obsługę kompresji LZMA i plików ZIP 64;
  • Wprowadzono nowe klasy: wxActivityIndicator, wxAddRemoveCtrl,
    wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
    wxSecretStore i wxTempFFile;

  • Dodano obsługę zamrażania kolumn i wierszy w wxGrid;
  • Wprowadzono 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 znaczące ulepszenia w wxBusyInfo, wxDataViewCtrl,
    wxNotificationMessage, wxStaticBox, wxStyledTextCtrl i wxUIActionSimulator;

  • Ulepszone bezpieczeństwo w czasie kompilacji z możliwością wyłączenia niebezpiecznych niejawnych konwersji między ciągami wxString i „char*”.
  • Wszystkie dołączone biblioteki innych firm zostały zaktualizowane. Dodano obsługę WebKit 2 i GStreamer 1.7;
  • Wprowadzono ulepszenia w celu obsługi standardu C++ 11. Dodano obsługę budowania za pomocą kompilatorów C++ 20.
  • Duża liczba poprawek w portach wxGTK3 i wxOSX/Cocoa.

Źródło: opennet.ru

Dodaj komentarz