Skip to content

رسومات: عروض المستكشف — عرض_شجريّ/لوح_مقسّم حرًّا + قياس جدول_بيانات/مسار_تنقّل (م٤ من خطّة الودجات)#287

Merged
SalehKadah merged 1 commit into
devfrom
رسومات/م4-عروض-المستكشف
Jul 25, 2026

Hidden character warning

The head ref may contain hidden characters: "\u0631\u0633\u0648\u0645\u0627\u062a/\u06454-\u0639\u0631\u0648\u0636-\u0627\u0644\u0645\u0633\u062a\u0643\u0634\u0641"
Merged

رسومات: عروض المستكشف — عرض_شجريّ/لوح_مقسّم حرًّا + قياس جدول_بيانات/مسار_تنقّل (م٤ من خطّة الودجات)#287
SalehKadah merged 1 commit into
devfrom
رسومات/م4-عروض-المستكشف

Conversation

@SalehKadah

Copy link
Copy Markdown
Collaborator

م٤ — عروض المستكشف (شريحة رسم حرّ فوق مكتبة الرسومات القائمة)

المرحلة الرابعة من [خطّة مكتبة ودجات سطح المكتب شبيهة بويندوز]. توسيع صرف لمكتبة SadUI القائمة (features/graphics/core) — لا إعادة كتابة، لا تعداد جديد، لا RFC: كلّ الأنواع معرَّفة سلفًا في UINodeType؛ نُضيف رسمها الحرّ فقط عبر renderNode المشترك بالبدائيّات القائمة.

التغييرات

  • platform_renderer.cpp — حالتا رسم جديدتان قبل default::
    • TreeView (عرض_شجريّ): لوح تصفّح جانبيّ + خطّ فاصل على الحافّة الداخليّة (RTL ⇒ rect.x).
    • SplitView (لوح_مقسّم): حاوية سيّد/تفصيل مستديرة + خطّ إطاريّ LightGray.
    • Breadcrumb وDataTable مرسومان أصلًا — يعملان حرًّا عبر renderNode المشترك بلا تغيير.
  • layout.cpp — قياسات measureLeaf افتراضيّة لـTreeView/SplitView/DataTable/Breadcrumb بحارس maxWidth/maxHeight < 1e6f (نمط م١–م٣).

البرهان الحرّ

مُبرهَن عبر هارنس off-screen يبني شجرة IRNode مباشرةً ⇒ LayoutEngineFreestandingRenderer ⇒ مخزن ذاكرة ⇒ PPM/PNG. المشهد: مستكشف ملفّات (عرض شجريّ يمينًا + جدول بيانات يسارًا + مسار تنقّل أعلى داخل لوح مقسّم) ⇒ ٦٦ محرف HD مرسوم، محاذاة RTL سليمة، الخطّ الفاصل على الحدّ الداخليّ.

المراجعة

🟢 أميليا (مراجعة على الديف المُودَع، بلا لمس git): توسيع نظيف، تواقيع البدائيّات متطابقة، لا مفاتيح خام، حرّاس القياس سليمة، لا لمس لمنطق المحرّك. صُحّحت ملاحظتها التجميليّة (اتّجاه الخطّ الفاصل RTL) قبل الدفع.

🤖 Generated with Claude Code

…نات/مسار_تنقّل (م٤ من خطّة الودجات)

شريحة رسم حرّ صرفة فوق مكتبة الرسومات القائمة (لا تعداد جديد، لا RFC): كلّ الأنواع
معرَّفة سلفًا في UINodeType. تُضاف حالات renderNode بالبدائيّات القائمة نفسها،
وقياسات measureLeaf الافتراضيّة.

- platform_renderer.cpp: حالتا رسم جديدتان —
  · TreeView (عرض_شجريّ): لوح تصفّح أبيض + خطّ فاصل على الحافّة الداخليّة (RTL).
  · SplitView (لوح_مقسّم): حاوية سيّد/تفصيل مستديرة + خطّ إطاريّ LightGray.
  (Breadcrumb وDataTable مرسومان أصلًا — يعملان حرًّا عبر renderNode المشترك.)
- layout.cpp: قياسات measureLeaf لـTreeView/SplitView/DataTable/Breadcrumb
  بحارس maxWidth/maxHeight < 1e6f (نمط م١–م٣).

مُبرهَن حرًّا عبر هارنس off-screen (مستكشف ملفّات: شجرة + جدول + مسار تنقّل
داخل لوح مقسّم) ⇒ 66 محرف HD مرسوم.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

📚 تذكير مزامنة دليل المطوّرين

هذا الـPR يلمس مصادر موثَّقة في دليل المطوّرين. راجع الفصول الآتية وحدّثها إن تغيّر سلوكها، ثم ثبّت البصمات هناك (python scripts/check_sync.py --update):

بندٌ في معيار الإنجاز. تذكيرٌ آليّ — لا يحجب الدمج.

@SalehKadah
SalehKadah merged commit 526c4a8 into dev Jul 25, 2026
16 checks passed
@SalehKadah
SalehKadah deleted the رسومات/م4-عروض-المستكشف branch July 25, 2026 12:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant