Phát hành bộ công cụ đồ họa wxWidgets 3.2.0

9 năm sau khi phát hành nhánh 3.0, bản phát hành đầu tiên của nhánh ổn định mới của bộ công cụ đa nền tảng wxWidgets 3.2.0 đã được trình làng, cho phép bạn tạo giao diện đồ họa cho các nền tảng Linux, Windows, macOS, UNIX và di động. So với nhánh 3.0, có một số điểm không tương thích ở cấp độ API. Bộ công cụ này được viết bằng C++ và được phân phối theo Giấy phép Thư viện wxWindows miễn phí, được Tổ chức Nguồn Mở và tổ chức OSI phê duyệt. Giấy phép dựa trên LGPL và được phân biệt bằng việc cho phép sử dụng các điều khoản riêng của mình để phân phối các tác phẩm phái sinh ở dạng nhị phân.

Ngoài việc phát triển các chương trình bằng C++, wxWidgets còn cung cấp các liên kết cho hầu hết các ngôn ngữ lập trình phổ biến, bao gồm PHP, Python, Perl và Ruby. Không giống như các bộ công cụ khác, wxWidgets cung cấp cho ứng dụng giao diện thực sự nguyên bản cho hệ thống đích bằng cách sử dụng API hệ thống thay vì bắt chước GUI.

Những đổi mới chính:

  • Một cổng thử nghiệm mới của wxQt đã được triển khai, cho phép wxWidget hoạt động trên khung Qt.
  • Cổng wxGTK cung cấp hỗ trợ đầy đủ cho giao thức Wayland.
  • Đã thêm hỗ trợ cho màn hình có mật độ điểm ảnh cao (DPI cao). Đã thêm khả năng chỉ định các Sở thích khác nhau cho các màn hình khác nhau và thay đổi linh hoạt các Sở thích. API wxBitmapBundle mới đã được đề xuất, cho phép bạn thao tác một số phiên bản của hình ảnh bitmap, được trình bày ở các độ phân giải khác nhau, dưới dạng tổng thể.
  • Một hệ thống xây dựng mới dựa trên CMake đã được đề xuất. Hỗ trợ cho các trình biên dịch mới (bao gồm MSVS 2022, g++ 12 và clang 14) và hệ điều hành đã được thêm vào hệ thống hợp ngữ.
  • Hỗ trợ OpenGL đã được thiết kế lại, việc sử dụng các phiên bản OpenGL mới (3.2+) đã được cải thiện.
  • Đã thêm hỗ trợ cho các tệp nén LZMA và ZIP 64.
  • Tính năng bảo vệ trong thời gian biên dịch đã được nâng cao nhờ khả năng vô hiệu hóa các chuyển đổi tiềm ẩn nguy hiểm giữa các chuỗi thuộc loại wxString và “char*”.
  • Đã thêm hỗ trợ sự kiện cho các cử chỉ điều khiển được thực hiện bằng chuột.
  • Các lớp wxFont và wxGraphicsContext hiện có khả năng chỉ định các giá trị không nguyên khi xác định kích thước phông chữ và độ rộng bút.
  • Lớp wxStaticBox triển khai khả năng gán nhãn tùy ý cho các cửa sổ.
  • API wxWebRequest hiện hỗ trợ HTTPS và HTTP/2.
  • Lớp wxGrid đã thêm hỗ trợ cho việc cố định cột và hàng.
  • Các lớp mới được giới thiệu: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile và wxUILocale.
  • Trình xử lý XRC mới đã được triển khai cho tất cả các lớp mới và một số lớp hiện có.
  • Các phương pháp mới được giới thiệu: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wxListBox::Get TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Những cải tiến đáng kể đã được thực hiện đối với các lớp wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl và wxUIActionSimulator.
  • Hỗ trợ cho nền tảng macOS đã được cải thiện, bao gồm khả năng sử dụng chủ đề tối và hỗ trợ thêm cho các thiết bị chạy bộ xử lý ARM.
  • Những cải tiến đã được thực hiện để hỗ trợ tiêu chuẩn C++ 11. Đã thêm hỗ trợ để xây dựng bằng trình biên dịch C++20.
  • Tất cả các thư viện của bên thứ ba đi kèm đã được cập nhật. Đã thêm hỗ trợ cho WebKit 2 và GStreamer 1.7.

Nguồn: opennet.ru

Thêm một lời nhận xét