ΠŸΡƒΡΠΊΠ°Π½Π΅ Π½Π° wxWidgets 3.2.0 Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅Π½ инструмСнтариум

9 Π³ΠΎΠ΄ΠΈΠ½ΠΈ слСд пусканСто Π½Π° ΠΊΠ»ΠΎΠ½Π° 3.0 бСшС прСдставСно ΠΏΡŠΡ€Π²ΠΎΡ‚ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° Π½ΠΎΠ² стабилСн ΠΊΠ»ΠΎΠ½ Π½Π° крос-платформСния инструмСнтариум wxWidgets 3.2.0, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚Π΅ Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ интСрфСйси Π·Π° Linux, Windows, macOS, UNIX ΠΈ ΠΌΠΎΠ±ΠΈΠ»Π½ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΈ. Π’ сравнСниС с ΠΊΠ»ΠΎΠ½Π° 3.0 ΠΈΠΌΠ° Ρ€Π΅Π΄ΠΈΡ†Π° Π½Π΅ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΠΈ Π½Π° Π½ΠΈΠ²ΠΎ API. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡƒΠΌΡŠΡ‚ Π΅ написан Π½Π° C++ ΠΈ сС разпространява ΠΏΠΎΠ΄ бСзплатния Π»ΠΈΡ†Π΅Π½Π· Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° wxWindows, ΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ ΠΎΡ‚ Open Source Foundation ΠΈ организацията OSI. Π›ΠΈΡ†Π΅Π½Π·ΡŠΡ‚ сС основава Π½Π° LGPL ΠΈ сС ΠΎΡ‚Π»ΠΈΡ‡Π°Π²Π° с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ си Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° свои собствСни условия Π·Π° разпространСниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½ΠΈ произвСдСния Π² Π΄Π²ΠΎΠΈΡ‡Π½Π° Ρ„ΠΎΡ€ΠΌΠ°.

Π’ допълнСниС към Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π² C++, wxWidgets прСдоставя ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ Π·Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ популярни Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ PHP, Python, Perl ΠΈ Ruby. Π—Π° Ρ€Π°Π·Π»ΠΈΠΊΠ° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ Π½Π°Π±ΠΎΡ€ΠΈ ΠΎΡ‚ инструмСнти, wxWidgets прСдоставя ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с наистина СстСствСн Π²ΠΈΠ΄ ΠΈ усСщанС Π·Π° Ρ†Π΅Π»Π΅Π²Π°Ρ‚Π° систСма, ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° систСмни API, вмСсто Π΄Π° ΠΈΠΌΠΈΡ‚ΠΈΡ€Π° GUI.

Основни ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ:

  • Π’ΡŠΠ²Π΅Π΄Π΅Π½ Π΅ Π½ΠΎΠ² СкспСримСнталСн ΠΏΠΎΡ€Ρ‚ Π½Π° wxQt, ΠΊΠΎΠΉΡ‚ΠΎ позволява Π½Π° wxWidgets Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ Π²ΡŠΡ€Ρ…Ρƒ Ρ€Π°ΠΌΠΊΠ°Ρ‚Π° Π½Π° Qt.
  • ΠŸΠΎΡ€Ρ‚ΡŠΡ‚ wxGTK осигурява пълна ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Wayland.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π΅ΠΊΡ€Π°Π½ΠΈ с висока ΠΏΠ»ΡŠΡ‚Π½ΠΎΡΡ‚ Π½Π° пиксСлитС (High DPI). Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° присвояванС Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ DPI Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½Π° промяна Π½Π° DPI. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² wxBitmapBundle API, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ позволява Π΄Π° ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€Π°Ρ‚Π΅ няколко вСрсии Π½Π° растСрно ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, прСдставСно Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ€Π΅Π·ΠΎΠ»ΡŽΡ†ΠΈΠΈ, ΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½ΠΎ цяло.
  • ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π΅ Π½ΠΎΠ²Π° систСма Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅, Π±Π°Π·ΠΈΡ€Π°Π½Π° Π½Π° CMake. Към систСмата Π·Π° асСмблиранС Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π½ΠΎΠ²ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΠΈ (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ MSVS 2022, g++ 12 ΠΈ clang 14) ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ систСми.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° OpenGL Π΅ ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π½ΠΎΠ²ΠΈ вСрсии Π½Π° OpenGL (3.2+) Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° LZMA компрСсия ΠΈ ZIP 64 Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅.
  • Π—Π°Ρ‰ΠΈΡ‚Π°Ρ‚Π° ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π°Π½Π΅ Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π°, Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° способността Π΄Π° сС Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚ опасни нСявни прСобразувания ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠ·ΠΎΠ²Π΅ ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ²Π΅Ρ‚Π΅ wxString ΠΈ β€žchar*β€œ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ Π·Π° ТСстовС Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Π²ΡŠΠ·ΠΏΡ€ΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΌΠΈΡˆΠΊΠ°Ρ‚Π°.
  • ΠšΠ»Π°ΡΠΎΠ²Π΅Ρ‚Π΅ wxFont ΠΈ wxGraphicsContext Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚ способността Π΄Π° ΡƒΠΊΠ°Π·Π²Π°Ρ‚ нСцСлочислСни стойности, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Π½Π° ΡˆΡ€ΠΈΡ„Ρ‚Π° ΠΈ ΡˆΠΈΡ€ΠΈΠ½Π°Ρ‚Π° Π½Π° писалката.
  • ΠšΠ»Π°ΡΡŠΡ‚ wxStaticBox Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° присвояванС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Π΅Ρ‚ΠΈΠΊΠ΅Ρ‚ΠΈ Π½Π° ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈ.
  • API Π½Π° wxWebRequest Π²Π΅Ρ‡Π΅ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° HTTPS ΠΈ HTTP/2.
  • ΠšΠ»Π°ΡΡŠΡ‚ wxGrid ΠΈΠΌΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° замразяванС Π½Π° ΠΊΠΎΠ»ΠΎΠ½ΠΈ ΠΈ Ρ€Π΅Π΄ΠΎΠ²Π΅.
  • Π’ΡŠΠ²Π΅Π΄Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ класовС: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile ΠΈ wxUILocale.
  • Нови ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€ΠΈ Π½Π° XRC са Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ Π·Π° всички Π½ΠΎΠ²ΠΈ класовС ΠΈ някои ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈ класовС.
  • Π’ΡŠΠ²Π΅Π΄Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wx ListBox::Get TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • НаправСни са Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΈ подобрСния Π² класовСтС wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl ΠΈ wxUIActionSimulator.
  • ΠŸΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π·Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° macOS Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π°, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ‚ΡŠΠΌΠ½Π° Ρ‚Π΅ΠΌΠ° ΠΈ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° устройства, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ с ARM процСсори.
  • НаправСни са подобрСния Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° стандарта C++11. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ с C++20 ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ΠΈ.
  • Всички Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π° Ρ‚Ρ€Π΅Ρ‚ΠΈ страни са Π°ΠΊΡ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° WebKit 2 ΠΈ GStreamer 1.7.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€