تم الافراج عن النسخة الجديدة من مجموعة أدوات الأنظمة الأساسية المتعددة "WxWidgets 3.1.4" الذي مقدر لإنشاء واجهات رسومية لأنظمة Linux و Windows و macOS و UNIX والمنصات المحمولة.
مجموعة الأدوات مكتوب بلغة C ++ ويتم توزيعه بموجب ترخيص مكتبة wxWindows المجاني ، معتمدة من مؤسسة البرمجيات الحرة و OSI.
يعتمد الترخيص على LGPL ويتميز بالسماح لك باستخدام الشروط الخاصة بك لتوزيع أعمال مشتقة في شكل ثنائي. بالإضافة إلى تطوير برامج C / C ++ ، توفر wxWidgets روابط لأكثر لغات البرمجة شيوعًا ، بما في ذلك PHP و Python و Perl و Ruby.
على عكس مجموعات الأدوات الأخرى ، يوفر wxWidgets تطبيقًا أصليًا حقًا للنظام الهدف ، باستخدام واجهة برمجة تطبيقات النظام بدلاً من محاكاة واجهة المستخدم الرسومية.
من الأفضل وصف wxWidgets على أنه مجموعة أدوات أصلية ل يوفر طبقة رقيقة من التجريد لعناصر التحكم الأصلية للمنصة ، على عكس محاكاة عناصر التحكم باستخدام الرسومات البدائية. يتيح لنا استخدام عنصر تحكم أصلي على الأنظمة الأساسية الحالية تحقيق المزيد من النتائج المرئية الأصلية للواجهة الرسومية مقارنة بالمكتبات الأخرى مثل Swing (لـ Java) ، فضلاً عن تقديم أداء أفضل ومزايا أخرى.
لا يقتصر wxWidgets على تطوير واجهات رسومية فقط ، وذلك لأن المكتبة بها طبقة من عمليات الاتصال البينية ووظائف الشبكة مثل المقابس وغير ذلك الكثير.
الميزات الرئيسية الجديدة لـ wxWidgets 3.1.4
يتم وضع wxWidgets 3.1 كفرع تطوير، تطوير ميزات جديدة للإصدار المستقر التالي ، 3.2.0. بالمقارنة مع الفرع 3.0 ، هناك عدد من حالات عدم التوافق على مستوى API ولا يضمن ABI أن يظل ثابتًا بين إصدارات 3.1.x المؤقتة.
بالنسبة للمستجدات التي تم تقديمها في هذا الإصدار الجديد ، يتم تمييز نظام بناء nevo القائم على CMakeبالإضافة إلى ذلك ، يضيف نظام الإنشاء دعمًا للمترجمين الجدد (MSVC 2019 ، g ++ 10) وأنظمة التشغيل (macOS 10.14 و macOS 11 لـ ARM).
التحسين الآخر الذي يبرز في هذا الإصدار الجديد هو تحسين الأمان في وقت التشغيل من خلال تعطيل التحويلات الضمنية الخطيرة بين wxString و "char *".
من ناحية أخرىتم تحديث جميع مكتبات الطرف الثالث المضمنة. تمت إضافة دعم WebKit 2 و GStreamer 1.7 ، بالإضافة إلى التحسينات المتعلقة بدعم معيار C ++ 11 ، تمت إضافة دعم مجمع مترجم C ++ 20.
أيضا يسلط الضوء على إعادة تصميم دعم OpenGL، تم تحسين استخدام الإصدارات الجديدة من OpenGL (3.2+) ، بالإضافة إلى الدعم الجديد للأحداث لإيماءات التحكم التي يتم لعبها باستخدام الماوس.
من التغييرات الأخرى التي تبرز من هذا الإصدار الجديد:
- تم إجراء تحسينات كبيرة على فئات wxBusyInfo و wxDataViewCtrl و wxNotificationMessage و wxStaticBox و wxStyledTextCtrl و wxUIActionSimulator.
- تمت إضافة القدرة على تحديد قيم غير صحيحة في wxFont و wxGraphicsContext عند تحديد حجم الخط وعرض قلم رصاص خفيف.
- في wxStaticBox ، يتم تنفيذ القدرة على تعيين تسميات عشوائية إلى Windows.
- دعم محسّن لشاشات العرض عالية الكثافة (DPI).
- دعم إضافي لضغط LZMA وملفات ZIP 64.
- تم تقديم فئات جديدة: wxActivityIndicator و wxAddRemoveCtrl و wxAppProgressIndicator و wxNativeWindow و wxPowerResourceBlocker و wxSecretStore و wxTempFFile.
- تمت إضافة دعم لتجميد الأعمدة والصفوف في wxGrid.
- الكثير من الحلول في منافذ wxGTK3 و wxOSX / Cocoa.
- منفذ wxQt تجريبي جديد.
أخيرا إذا كنت مهتمًا بمعرفة المزيد عنها ، يمكنك التحقق من التفاصيل بالذهاب إلى الرابط التالي.
تنزيل wxWidgets
بالنسبة لأولئك الذين يرغبون في القدرة على تنزيل وتثبيت مجموعة الأدوات هذه ، يمكنهم الحصول على الحزم الخاصة بنظام التشغيل المستهدف (Windows أو Mac أو Linux) من الموقع الرسمي في قسم التنزيل الخاص به
في حالة أولئك الذين يستخدمون Debian أو Ubuntu أو بعض مشتقاتها ، يمكنهم التجميع عن طريق كتابة ما يلي في Terminal.
sudo apt-get install libgtk-3-dev build-essential checkinstall
يشرعون في فك ضغط الحزمة التي قاموا بتنزيلها من الموقع الرسمي وإدخال المجلد الناتج. هنا يمكنهم فتح محطة موضوعة في مسار المجلد أو وضع أنفسهم داخل المجلد في الجهاز.
وننتقل إلى التجميع مع:
mkdir gtk-build
cd gtk-build/
../configure --disable-shared --enable-unicode
make
حولا
أنا لا أحب ما أصبحت عليه المدونة ، إنها مليئة بالدعاية ، إنه أمر فظيع ، تابولة هنا ، هناك ، فقط من خلال الدخول إلى هنا ، أخشى أن يصيب جهاز الكمبيوتر الخاص بي. يا رفاق ، لا تلطخ الإرث الذي تركه لك مالكو المدونة السابقون ، حيث كانت مدونة رائعة للغاية.