Open main menu

Gramps β

Changes

Date Handler/he

333 bytes added, 1 May
m
יצירת מחלקת נתך תאריכים ממוקממת חדשה: typo
===המקמת מחלקה למצג תאריכים===
מחלקת מתצג התאריכים צריכה להגזר ממחלקת'''DateDisplay''' באופן הבא:
<div dir="ltr">
from _DateDisplay import DateDisplay class MyDateParser(DateDisplay): ...
</div>
בנוסף היא אמורה לספק שיטת <div dir="ltr> <code>display()</code>. </div>אם משתמשם ביישום ברירת המחדל, יורשים ממנו את סגנון iso, כלומר, כל התאריכים יוצגו ללא הבדל גלוי בין תאריכי תקופה וטווח.
הרמת ההתאמה האישית הבאה תהיה בחירת חלופה "ארוזה" מראש אחרת, שמסופקת במחלקה הבסיסית, כדלקמן (כפי ש־DateDisplayEN עושה):
<div dir="ltr">
display = DateDisplay.display_formatted
</div>
התאמה זו תתאים ליותר ממחצית מהשפות הנתמכות נכון להיום, שפות שלא מטפללות את רשימת המשתנים הזמינים למתצג התאריך.
כששפת היעד דורשת הטיית שמות חודשים תלויי מבחינים, או, למשל, אם התאריך הוא תאריך התחלה או סיום בטווח, נדרש להשתמש ולתרגם מחרוזות מיוחדות כדי לציין את ההטיה המתאימה. תיעוד לתרחיש מתקדם זה ניתן למצוא בהערות קוד המקור של DateDisplay.
If your language overrides כששפת היעד עוקפת את Display.formats to something elseלמשהו אחר, it should also override היא צריכה לעקוף גם את _display_calendar (or, separately, the או את _display_gregorian/_display_hebrew/... whatever methods that delegate to _display_calendar by default with the appropriate month listsבנפרד, לכל השיטות שמאצילות ל־_display_calendar כברירת מחדל עם רשימות שמות החודשים המתאימים). The override of עקיפת _display_calendar should format the date according to the currently selected custom formatצריכה לעצב את התאריך בהתאם לתסדיר מותאם אישית שנבחר, using תוך שימוש במספר self.format number as an index into the כמפתח לרשימת self.formats list.
===Providing a localized date parser classיצירת מחלקת נתח תאריכים ממומקמת חדשה===The parser class must derive from the המחלקה החדש חייבת להגזר ממחלקת '''DateParser''' class: <div dir="ltr"><code> from _DateParser import DateParser</code><br> <code> class MyDateParser(DateParser):</code><br> <code> ...</code></div>::The parser class must provide מחלקת הנתח חייבת לספק את השיטה <div dir="ltr"><code>parse()</code> method. In fact</div> למעשה, since the base class already defines such methodמכיוון שהמחלקה הבסיסית כבר מגדירה שיטה זו, it is most likely that you will only need to re-define class constants and, maybe, the סביר להניח שיהיה צורך להגדיר מחדש רק את קבועי המחלקה ואולי את השיטה <div dir="ltr"><code>init_strings()</code> method.</div>
===Localizing the date formats===
3,401
edits