Lanzamento do kit de ferramentas gráficas wxWidgets 3.2.0

9 anos despois do lanzamento da rama 3.0, presentouse a primeira versión dunha nova rama estable do kit de ferramentas multiplataforma wxWidgets 3.2.0, que permite crear interfaces gráficas para Linux, Windows, macOS, UNIX e plataformas móbiles. En comparación coa rama 3.0, hai unha serie de incompatibilidades a nivel de API. O conxunto de ferramentas está escrito en C++ e distribúese baixo a licenza gratuíta de biblioteca wxWindows, aprobada pola Open Source Foundation e a organización OSI. A licenza baséase na LGPL e distínguese polo seu permiso para usar os seus propios termos para distribuír obras derivadas en forma binaria.

Ademais de desenvolver programas en C++, wxWidgets ofrece enlaces para as linguaxes de programación máis populares, incluíndo PHP, Python, Perl e Ruby. A diferenza doutros conxuntos de ferramentas, wxWidgets ofrece unha aplicación cunha aparencia nativa para o sistema de destino mediante o uso de API do sistema en lugar de imitar a GUI.

Principais novidades:

  • Implementouse un novo porto experimental de wxQt, o que permite que wxWidgets funcione enriba do framework Qt.
  • O porto wxGTK ofrece soporte completo para o protocolo Wayland.
  • Engadido soporte para pantallas con alta densidade de píxeles (Alto DPI). Engadida a posibilidade de asignar diferentes DPI para diferentes monitores e cambiar dinámicamente DPI. Propúxose unha nova API wxBitmapBundle, que permite manipular varias versións dunha imaxe de mapa de bits, presentada en diferentes resolucións, como un todo.
  • Propúxose un novo sistema de construción baseado en CMake. Engadiuse ao sistema de montaxe soporte para compiladores novos (incluíndo MSVS 2022, g++ 12 e clang 14) e sistemas operativos.
  • Rediseñouse o soporte de OpenGL, mellorouse o uso das novas versións de OpenGL (3.2+).
  • Engadido soporte para a compresión LZMA e ficheiros ZIP 64.
  • Mellorouse a protección en tempo de compilación, grazas á posibilidade de desactivar as perigosas conversións implícitas entre cadeas dos tipos wxString e "char*".
  • Engadiuse compatibilidade de eventos para os xestos de control xogados co rato.
  • As clases wxFont e wxGraphicsContext agora teñen a capacidade de especificar valores non enteiros ao definir tamaños de fonte e ancho de pluma.
  • A clase wxStaticBox implementa a capacidade de asignar etiquetas arbitrarias a Windows.
  • A API wxWebRequest agora admite HTTPS e HTTP/2.
  • A clase wxGrid engadiu compatibilidade para conxelar columnas e filas.
  • Novas clases introducidas: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile e wxUILocale.
  • Implementáronse novos controladores XRC para todas as clases novas e algunhas clases existentes.
  • Novos métodos introducidos: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptModeGet(E), wxHtmlEasyPrinting::SetPromptModeGet(E), wxDisplay::GetPPI(), etTop Elemento (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Realizáronse melloras significativas nas clases wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl e wxUIActionSimulator.
  • Mellorouse a compatibilidade coa plataforma macOS, incluída a posibilidade de usar un tema escuro e engadiuse soporte para dispositivos con procesadores ARM.
  • Realizáronse melloras para soportar o estándar C++11. Engadido soporte para a construción con compiladores C++20.
  • Actualizáronse todas as bibliotecas de terceiros incluídas. Engadido soporte para WebKit 2 e GStreamer 1.7.

Fonte: opennet.ru

Engadir un comentario