gohud

GoStyle — المكان الواحد الذي تُصنع فيه الأشياء

← الودجات

استدعِ Button.new() مباشرةً وستنحرف الحشوة والارتفاع والالتفاف انحرافًا طفيفًا من شاشة إلى أخرى. وهذا الانحراف غير مرئي في مراجعة الكود، وبيّن تمامًا في لقطة شاشة.

المجموعةالدوال
البنيةcolumn row wrap_row padding spacer divider responsive_grid aspect foldable
النصlabel label_key line section typography
الأزرارbutton button_key icon_button list_button list_row apply_icon style_choice_card style_chip_button style_chip_label
الإدخالline_edit textarea toggle checkbox slider picker select dropdown radio_group segmented choice_grid
العرضcard chip hud_panel chip_panel avatar skeleton alert table tabs breadcrumb progress empty_state
قطع الأسطحsurface box floating disc face_padding
المساعداتform fit_words natural_width tooltip_node card_body let_input_through
box() يعيد دائمًا StyleBoxFlat، لأن المستدعين يستلمونه ثم يعدّلون bg_color أو corner_radius. استعمل surface() حين يجب أن يبقى شكل مخصّص على حاله.

صفوف القوائم ذات وصف

GoStyle.list_button(GoIconSet.SWORD, "حافظ العهد", _inspect, Color.TRANSPARENT,
    "سيف طويل  /  هجوم 42", false)

الصفّ ذو السطر الثاني ينال حشوة علوية وسفلية متساويتين، أفسح من صفّ السطر الواحد، ويبقى زوج العنوان والوصف متوسّطًا رأسيًا بجانب الأيقونة — حتى حين تمدّه حاوية ليصير أطول، وحتى بعد أن يلتفّ الوصف على عدة أسطر. ويظلّ الصفّ كله هدف لمس واحدًا.

مثال medieval_light — صفوف قوائم من سطرين وخانات سريعة وأشرطة
صفوف من سطرين وخانات وأشرطة في مثال العصور الوسطى — استدعاءات المصنع نفسها تحت medieval_light.

الصفوف المتدفقة

ضع عناصر التحكم في wrap_row بـعرضها الطبيعي. فمع بقاء الالتفاف مفعَّلًا، يهبط الحدّ الأدنى لعرض الزر إلى ما يقارب الصفر فيقيس الصفُّ خليّته عليه — فينهار النص إلى حرف واحد في كل سطر. والمصنع يمنع ذلك عنك.

لا تترك قائمة فارغة فارغة

page.add_child(GoStyle.empty_state(GoIconSet.BOX, "لا شيء هنا بعد"))

الناس يقرؤون الشاشة الخالية على أنها عطل.

خطّافات الاشتقاق

كل موضع يُنشأ فيه ودجت ابن يمرّ عبر دالة قابلة للتجاوز، فيستطيع مشروع يشتقّ من أنواع gohud أن يضع أصنافه هو داخل الودجات دون نسخ أي كود.

الخطّافالودجتالافتراضي
_make_scroll()GoCoachMark، GoSurfaceGoScroll.new()
_make_close_button()GoPromptCard، GoSurfaceGoIconButton.new()
_make_surface()GoSheet، GoDialogsGoSurface.new()
_should_pause()GoCoachMarkيخفي البطاقة ما دام مربع حوار مشروط مفتوحًا