GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء

GNOME پروجیکٹ نے Libadwaita لائبریری کی پہلی مستحکم ریلیز شائع کی ہے، جس میں صارف کے انٹرفیس اسٹائل کے لیے اجزاء کا ایک سیٹ شامل ہے جو GNOME HIG (ہیومن انٹرفیس گائیڈ لائنز) کی پیروی کرتا ہے۔ لائبریری میں ایپلی کیشنز کی تعمیر کے لیے ریڈی میڈ ویجٹ اور اشیاء شامل ہیں جو عام GNOME سٹائل کے مطابق ہیں، جس کے انٹرفیس کو کسی بھی سائز کی اسکرینوں کے ساتھ موافق بنایا جا سکتا ہے۔ لائبریری کوڈ C میں لکھا گیا ہے اور LGPL 2.1+ لائسنس کے تحت تقسیم کیا گیا ہے۔

GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء

libadwaita لائبریری کو GTK4 کے ساتھ استعمال کیا جاتا ہے اور GNOME میں استعمال ہونے والے Adwaita تھیم کے اجزاء شامل ہیں، جنہیں GTK سے باہر ایک علیحدہ لائبریری میں منتقل کر دیا گیا ہے۔ libadwaita کوڈ libhandy لائبریری پر مبنی ہے اور اس لائبریری کے جانشین کے طور پر پوزیشن میں ہے، جو کہ اصل میں GNOME ٹیکنالوجیز پر مبنی موبائل پلیٹ فارمز میں ایک انکولی انٹرفیس بنانے کے لیے بنائی گئی تھی، اور Librem 5 اسمارٹ فون کے لیے Phosh GNOME ماحول میں اس کا اعزاز حاصل کیا گیا تھا۔

لائبریری میں معیاری ویجٹ شامل ہیں جن میں انٹرفیس کے مختلف عناصر شامل ہیں، جیسے فہرستیں، پینل، ایڈیٹنگ بلاکس، بٹن، ٹیبز، سرچ فارمز، ڈائیلاگ باکسز وغیرہ۔ مجوزہ ویجیٹس آپ کو ایسے عالمگیر انٹرفیس بنانے کی اجازت دیتے ہیں جو پی سی اور لیپ ٹاپ کی بڑی اسکرینوں اور اسمارٹ فونز کی چھوٹی ٹچ اسکرینوں پر بغیر کسی رکاوٹ کے کام کرتے ہیں۔ ایپلیکیشن انٹرفیس متحرک طور پر اسکرین کے سائز اور دستیاب ان پٹ ڈیوائسز کے لحاظ سے تبدیل ہوتا ہے۔ لائبریری میں Adwaita سٹائل کا ایک سیٹ بھی شامل ہے جو دستی حسب ضرورت کے بغیر GNOME کے رہنما خطوط کو ظاہر کرتا ہے۔

GNOME کے اسٹائلنگ عناصر کو علیحدہ لائبریری میں منتقل کرنے سے GTK سے الگ الگ GNOME مخصوص تبدیلیاں تیار کی جا سکتی ہیں، جس سے GTK ڈویلپرز کو بنیادی چیزوں اور GNOME ڈویلپرز کو زیادہ تیزی اور لچکدار طریقے سے اسٹائلنگ تبدیلیوں کو آگے بڑھانے کی اجازت دیتا ہے جو وہ GTK کو متاثر کیے بغیر چاہتے ہیں۔ تاہم، یہ نقطہ نظر تیسری پارٹی کے GTK پر مبنی صارف ماحول کے ڈویلپرز کے لیے مشکلات پیدا کرتا ہے، جو یا تو libadwaita استعمال کرنے اور GNOME کی خصوصیات کو اپنانے اور اس کے ڈیزائن کو نقل کرنے، یا GTK طرز کی لائبریری کا اپنا ورژن تیار کرنے اور قبول کرنے پر مجبور ہیں۔ تیسری پارٹی کی طرز کی لائبریریوں پر مبنی ماحول میں متضاد GNOME ایپلی کیشنز کی ظاہری شکل۔

تھرڈ پارٹی فریم ورک ڈویلپرز کی طرف سے بنیادی شکایت انٹرفیس عناصر کے رنگوں کو اوور رائیڈ کرنے کے مسائل سے متعلق ہے، لیکن libadwaita ڈویلپرز لچکدار رنگ کے انتظام کے لیے API فراہم کرنے پر کام کر رہے ہیں، جسے مستقبل میں ریلیز میں شامل کیا جائے گا۔ حل نہ ہونے والے مسائل میں صرف ٹچ اسکرینوں پر اشاروں پر قابو پانے والے ویجٹس کے درست آپریشن کا بھی ذکر کیا گیا ہے - ٹچ پیڈز کے لیے، اس طرح کے ویجٹس کے درست آپریشن کو بعد میں یقینی بنایا جائے گا، کیونکہ انہیں GTK میں تبدیلی کی ضرورت ہے۔

libhandy کے مقابلے libadwaita میں اہم تبدیلیاں:

  • شیلیوں کا مکمل طور پر دوبارہ ڈیزائن کیا گیا سیٹ۔ GNOME میں استعمال ہونے والی Adwaita تھیم کو GTK سے ہٹا کر جدید بنایا گیا ہے، اور GTK میں پرانی تھیم کو "Default" کے نام سے طے کیا گیا ہے۔ libadwaita اور "Default" تھیم کے درمیان سب سے نمایاں فرق ونڈو ہیڈرز کے ڈیزائن میں تبدیلی ہے۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • رنگوں کو عناصر کے ساتھ منسلک کرنے اور ایپلی کیشن کے چلنے کے دوران رنگوں کو تبدیل کرنے کے طریقہ کار کو تبدیل کر دیا گیا ہے (مسائل اس حقیقت کی وجہ سے ہیں کہ libadwaita نے SCSS میں تبدیل کیا، جس کے لیے رنگ تبدیل کرنے کے لیے دوبارہ تعمیر کی ضرورت ہے)۔ عناصر کے رنگوں کو تبدیل کرنے کے لیے، جو مثال کے طور پر GNOME ویب میں پوشیدگی وضع میں منتقلی کو نشان زد کرنے کے لیے درکار ہے، ابتدائی OS میں تجویز کردہ طریقہ استعمال کیا جاتا ہے اور یہ "@define-color" کے ذریعے نامزد رنگوں کی ایک مقررہ فہرست کی وضاحت پر مبنی ہے۔ تاہم، اب بہت سے انٹرفیس عناصر کے رنگوں کا حساب بنیادی متن کے رنگ کے حساب سے کیا جاتا ہے اور خود بخود بدل جاتا ہے، جو ایپلی کیشنز کو رنگ سکیم کو مکمل طور پر کنٹرول کرنے کی اجازت نہیں دیتا ہے (ڈویلپر اس حد کو ختم کرنے کے لیے کام کر رہے ہیں)۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراءGNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • عناصر کی زیادہ متضاد روشنی ڈالنے کی وجہ سے ڈارک تھیمز استعمال کرتے وقت ڈسپلے کا معیار بڑھا دیا گیا ہے۔ لہجے کا رنگ روشن بنا دیا گیا ہے، اور ایک اور نمایاں رنگ شامل کیا گیا ہے، جو سیاہ اور ہلکے تھیمز کے لیے تبدیل ہو سکتا ہے۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراءGNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • ایپلی کیشنز میں استعمال کے لیے نئی طرز کی کلاسوں کا ایک بڑا حصہ شامل کیا گیا۔ مثال کے طور پر، بڑے گول بٹنوں کے لیے ".pill"، GtkHeaderBar میں ".flat" استعمال کرنے کی صلاحیت، لیبلز میں لہجے کا رنگ سیٹ کرنے کے لیے ".accent"، ٹیبل ٹائپوگرافی کے لیے ".numeric"، پس منظر استعمال کرنے کے لیے ".card" اور فہرستوں کی طرح سایہ۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • بڑی یک سنگی SCSS فائلوں کو چھوٹی طرز کی فائلوں کے مجموعہ میں تقسیم کیا گیا ہے۔
  • ڈارک ڈیزائن سٹائل اور ہائی کنٹراسٹ موڈ سیٹ کرنے کے لیے API کو شامل کیا گیا۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • دستاویزات پر دوبارہ کام کیا گیا ہے؛ gi-docgen ٹول کٹ اب اسے بنانے کے لیے استعمال کیا جاتا ہے۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • ایک اینیمیشن API شامل کیا گیا ہے، جسے ایک حالت کو دوسری حالت سے بدلتے وقت عبوری اثرات پیدا کرنے کے ساتھ ساتھ موسم بہار کی حرکت پذیری بنانے کے لیے استعمال کیا جا سکتا ہے۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • AdwViewSwitcher پر مبنی ٹیبز کے لیے، غیر دیکھی ہوئی اطلاعات کی تعداد کے ساتھ لیبل ڈسپلے کرنے کی صلاحیت شامل کی گئی ہے۔
    GNOME طرز کے انٹرفیس بنانے کے لیے Libadwaita 1.0 لائبریری کا اجراء
  • Libadwaita اور لوڈ شیلیوں کو خود بخود شروع کرنے کے لیے AdwApplication کلاس (GtkApplication کا ذیلی طبقہ) شامل کیا گیا۔
  • معیاری کارروائیوں کو آسان بنانے کے لیے وجیٹس کا ایک انتخاب شامل کیا گیا ہے: ونڈو ٹائٹل سیٹ کرنے کے لیے AdwWindowTitle، چائلڈ سب کلاسز کی تخلیق کو آسان بنانے کے لیے AdwBin، مشترکہ بٹنوں کے لیے AdwSplitButton، آئیکن اور لیبل والے بٹنوں کے لیے AdwButtonContent۔
  • API کو صاف کیا گیا۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں