انتشار جعبه ابزار گرافیکی wxWidgets 3.2.0

9 سال پس از انتشار شعبه 3.0، اولین نسخه از یک شاخه پایدار جدید از کیت ابزار کراس پلتفرم wxWidgets 3.2.0 ارائه شد که به شما امکان ایجاد رابط های گرافیکی برای لینوکس، ویندوز، macOS، یونیکس و پلتفرم های موبایل را می دهد. در مقایسه با شاخه 3.0، تعدادی ناسازگاری در سطح API وجود دارد. این جعبه ابزار به زبان C++ نوشته شده است و تحت مجوز رایگان کتابخانه wxWindows، مورد تایید بنیاد منبع باز و سازمان OSI توزیع شده است. مجوز بر اساس LGPL است و با اجازه آن برای استفاده از شرایط خاص خود برای توزیع آثار مشتق شده به شکل باینری متمایز است.

علاوه بر توسعه برنامه‌ها در C++، wxWidgets اتصال‌هایی را برای اکثر زبان‌های برنامه‌نویسی محبوب از جمله PHP، Python، Perl و Ruby فراهم می‌کند. برخلاف سایر ابزارها، wxWidgets با استفاده از APIهای سیستم به جای تقلید از رابط کاربری گرافیکی، برنامه‌ای را با ظاهر و احساس واقعی برای سیستم هدف ارائه می‌کند.

نوآوری های اصلی:

  • یک پورت آزمایشی جدید از 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 توانایی اختصاص برچسب های دلخواه به ویندوز را پیاده سازی می کند.
  • WxWebRequest API اکنون از HTTPS و HTTP/2 پشتیبانی می کند.
  • کلاس wxGrid پشتیبانی از ثابت کردن ستون ها و ردیف ها را اضافه کرده است.
  • کلاس های جدید معرفی شده اند: wxActivityIndicator، wxAddRemoveCtrl، wxAppProgressIndicator، wxBitmapBundle، wxNativeWindow، wxPersistentComboBox، wxPowerResourceBlocker، wxSecretStore، wxTempFFile و wxUILocale.
  • کنترلرهای XRC جدید برای همه کلاس‌های جدید و برخی کلاس‌های موجود پیاده‌سازی شده‌اند.
  • روش‌های جدید معرفی‌شده: wxDataViewToggleRenderer::ShowAsRadio()، wxDateTime::GetWeekBasedYear()، wxDisplay::GetPPI()، wxGrid::SetCornerLabelValue()، wxHtmlEasyPrinting::MockEasyPrinting::MockEntPrompton wxListBox::دریافت کنید 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

اضافه کردن نظر