wxWidgets 3.1.4 grafik asboblar to'plamining chiqarilishi

bo'lib o'tdi platformalararo asboblar to'plamini chiqarish wxWidgetlar 3.1.4, bu sizga Linux, Windows, macOS, UNIX va mobil platformalar uchun grafik interfeyslarni yaratish imkonini beradi. wxWidgets 3.1 keyingi barqaror 3.2.0 versiyasi uchun yangi xususiyatlarni ishlab chiquvchi dasturchilar tarmog'i sifatida joylashtirilgan. 3.0 filiali bilan taqqoslaganda, API darajasida bir qator nomuvofiqliklar mavjud va ABI oraliq 3.1.x versiyalari orasida bir xil bo'lib qolishi kafolatlanmaydi.

Asboblar to'plami C++ tilida yozilgan va bepul litsenziya ostida tarqatiladi wxWindows kutubxonasi litsenziyasi, Free Software Foundation va OSI tashkiloti tomonidan tasdiqlangan. Litsenziya LGPLga asoslanadi va ikkilik shaklda hosilaviy ishlarni tarqatish uchun o'z shartlaridan foydalanishga ruxsati bilan ajralib turadi. C/C++ da dasturlarni ishlab chiqishdan tashqari, wxWidgetlar eng mashhur dasturlash tillari uchun bog'lanishlarni ta'minlaydi, jumladan PHP, Python, Perl и yoqut. Boshqa asboblar to'plamidan farqli o'laroq, wxWidgets GUI-ni taqlid qilish o'rniga tizim API-laridan foydalangan holda maqsadli tizim uchun haqiqiy ko'rinish va hissiyotga ega ilovani taqdim etadi.

Asosiy innovatsiyalar:

  • CMake-ga asoslangan yangi qurish tizimi. Yig'ish tizimiga yangi kompilyatorlarni (MSVC 2019, g++ 10) va operatsion tizimlarni (macOS 10.14 va ARM uchun macOS 11) qo'llab-quvvatlash qo'shildi;
  • wxQt ning yangi eksperimental porti;
  • OpenGL-ni qo'llab-quvvatlash qayta ishlab chiqildi, yangi OpenGL versiyalaridan foydalanish (3.2+) yaxshilandi;
  • Sichqoncha yordamida o'ynaladigan nazorat imo-ishoralari uchun hodisalar uchun qo'shimcha yordam qo'shildi;
  • Shrift o'lchamlari va qalam kengligini belgilashda wxFont va wxGraphicsContext-da butun son bo'lmagan qiymatlarni belgilash imkoniyati qo'shildi;
  • wxStaticBox derazalarga o'zboshimchalik bilan teglar belgilash qobiliyatini amalga oshiradi;
  • Yuqori piksel zichligi (High DPI) bo'lgan ekranlar uchun yaxshilangan qo'llab-quvvatlash;
  • LZMA siqish va ZIP 64 fayllarini qo'llab-quvvatlash qo'shildi;
  • Yangi sinflar kiritildi: wxActivityIndicator, wxAddRemoveCtrl,
    wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
    wxSecretStore va wxTempFFile;

  • wxGrid-da ustunlar va qatorlarni muzlatish uchun qo'shilgan yordam;
  • Yangi usullar joriy etildi: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::
    GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(),
    wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(),
    wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(),
    wxToolbook::EnablePage(), wxUIActionSimulator::Select();
  • wxBusyInfo, wxDataViewCtrl-ga sezilarli yaxshilanishlar kiritildi,
    wxNotificationMessage, wxStaticBox, wxStyledTextCtrl va wxUIActionSimulator;

  • WxString va "char*" satrlari o'rtasidagi xavfli yashirin konversiyalarni o'chirib qo'yish qobiliyati bilan yaxshilangan kompilyatsiya vaqti xavfsizligi.
  • Barcha kiritilgan uchinchi tomon kutubxonalari yangilandi. WebKit 2 va GStreamer 1.7 uchun qo‘shimcha qo‘llab-quvvatlash;
  • C++ 11 standartini qo'llab-quvvatlash uchun yaxshilanishlar amalga oshirildi. C++ 20 kompilyatorlari bilan qurish uchun qo'shimcha yordam.
  • wxGTK3 va wxOSX/Kakao portlarida katta miqdordagi tuzatishlar.

Manba: opennet.ru

a Izoh qo'shish