wxWidgets 3.2.0 zostało już wydane i to są jego nowości

Niedawno ogłoszono pierwszą wersję nowej stabilnej gałęzi wieloplatformowego zestawu narzędzi wxWidgets 3.2.0 , który umożliwia tworzenie graficznych interfejsów dla systemów Linux, Windows, macOS, UNIX i platform mobilnych.

W porównaniu z wersją 3.0, występuje kilka niezgodności na poziomie API. W przeciwieństwie do innych zestawów narzędzi, wxWidgets zapewnia prawdziwie natywną aplikację dla systemu docelowego, wykorzystując systemowe API zamiast symulować interfejs graficzny.

wxWidgets można najlepiej opisać jako natywny zestaw narzędzi , ponieważ zapewnia cienką warstwę abstrakcji dla natywnych kontrolek platformy, w przeciwieństwie do emulacji kontrolek za pomocą grafiki prymitywnej. Korzystanie z natywnych kontrolek na istniejących platformach pozwala nam uzyskać bardziej natywne rezultaty wizualne dla interfejsu graficznego niż inne biblioteki, takie jak Swing (dla Javy), a także oferuje lepszą wydajność i inne korzyści.

wxWidgets nie ogranicza się tylko do tworzenia interfejsów graficznych, ponieważ biblioteka zawiera warstwę interprocesów komunikacyjnych, funkcjonalności dla sieci, takie jak gniazda i wiele innych.

Główne nowe funkcje wxWidgets 3.2.0

W tej nowej wersji wprowadzono nowy eksperymentalny port wxQt , który umożliwia uruchamianie wxWidgets w środowisku Qt, natomiast port wxGTK zapewnia pełne wsparcie dla protokołu Wayland.

Dodatkowo podkreślono, że dodano obsługę wyświetlaczy o wysokiej gęstości pikseli (High DPI), a także możliwość przypisywania różnych ustawień DPI do różnych monitorów i dynamicznej zmiany ustawień DPI. Zaproponowano również nowe API wxBitmapBundle, które umożliwia jednoczesne manipulowanie różnymi opcjami bitmap prezentowanymi w różnych rozdzielczościach.

Kolejną godną uwagi zmianą jest wprowadzenie nowego systemu kompilacji opartego na CMake , który dodaje obsługę nowych kompilatorów (w tym MSVS 2022, g++12 i clang14) i systemów operacyjnych dla systemu kompilacji.

Na uwagę zasługuje również poprawione dostosowanie do standardu OpenGL , lepsze wykorzystanie nowszych wersji OpenGL (3.2+) oraz dodana obsługa kompresji LZMA i 64-bitowych plików ZIP.

Z drugiej strony, podkreśla również ulepszone bezpieczeństwo w czasie kompilacji z możliwością wyłączenia niebezpiecznych niejawnych konwersji między łańcuchami typu wxString i "char*" oraz dodaną obsługę zdarzeń w celu kontrolowania gestów odtwarzanych za pomocą myszy.

Klasy wxFont i wxGraphicsContext umożliwiają teraz określanie wartości niecałkowitych podczas określania rozmiaru czcionki i szerokości rysika. Klasa wxStaticBox implementuje możliwość przypisywania okienkom dowolnych etykiet.

Inne istotne zmiany obejmują:

  • Do API wxWebRequest dodano obsługę HTTPS i HTTP/2.
  • Dodano obsługę zamrażania kolumn i wierszy w klasie wxGrid.
  • Poprawiona obsługa platformy macOS, w tym możliwość korzystania z ciemnego motywu oraz dodatkowa obsługa urządzeń opartych na procesorach ARM.
  • Wprowadzono ulepszenia w celu obsługi standardu C++11. Dodano wsparcie dla asemblacji przez kompilatory C++20.
  • Wszystkie dołączone biblioteki innych firm zostały zaktualizowane. Dodano wsparcie dla WebKit 2 i GStreamer 1.7.

Jeśli chcesz dowiedzieć się więcej, szczegóły znajdziesz pod tym linkiem.

Pobierz pliki wxWidgets

Dla tych, którzy są zainteresowani możliwością pobrania i zainstalowania tego zestawu narzędzi, mogą uzyskać pakiety dla docelowego systemu operacyjnego (Windows, Mac lub Linux) z oficjalnej strony internetowej w sekcji pobierania

Link jest taki.

W przypadku tych, którzy używają Debiana, Ubuntu lub ich pochodnych, mogą skompilować, wpisując w terminalu następujący tekst.

sudo apt-get install libgtk-3-dev build-essential checkinstall

Kontynuują rozpakowywanie pakietu pobranego z oficjalnej strony internetowej i przechodzą do folderu wynikowego. Tutaj mogą otworzyć terminal umieszczony w ścieżce folderu lub ustawić się w folderze w terminalu.

I przystępujemy do kompilacji z:

mkdir gtk-build
cd gtk-build/
../configure --disable-shared --enable-unicode
make


Dodaj jako preferowane źródło w Google