blockly > blockRendering > RenderInfo
מחלקה blockRendering.RenderInfo
אובייקט שמכיל את כל פרטי הגודל הנדרשים כדי לשרטט את הבלוק הזה.
אישור המדידה הזה לא מפיץ שינויים בבלוק (למרות ששדות עשויים לבחור לעיבוד מחדש כשמתבצעת קריאה ל-getSize() ). עם זאת, שיחות חוזרות ונשנות עשויות להיות יקרות.
Signature:
export declare class RenderInfo
יצרנים
יצרן | גורמי שינוי | תיאור |
---|---|---|
(constructor)(render, block) | יצירה של מופע חדש של המחלקה RenderInfo |
מאפיינים
נכס | גורמי שינוי | סוג | תיאור |
---|---|---|---|
block_ | BlockSvg | ||
bottomRow | BottomRow | ||
constants_ | protected |
ConstantProvider | |
height (גובה) | number | גובה הבלוק שעבר עיבוד, כולל בלוקים של צאצאים. | |
inputRows | InputRow[] | מערך של שורות קלט בבלוק. | |
isCollapsed | בוליאני | ||
isInline | בוליאני | ||
isInsertionMarker | בוליאני | ||
outputConnection | OutputConnection | null | ||
renderer_ |
|
כלי לעיבוד | כלי לרינדור הבלוקים בשימוש. |
שורות | שורה[] | מערך של אובייקטי שורה שמכיל מידע על מידות התמונה. | |
RTL | בוליאני | ||
startX | number | ||
startY | number | ||
statementEdge | number | ||
topRow | TopRow | ||
רוחב | number | רוחב הבלוק שעבר עיבוד, לא כולל בלוקים צאצאים. זהו הקצה הימני של הבלוק בזמן רינדור LTR. | |
widthWithChildren | number | רוחב הבלוק שעבר עיבוד, כולל בלוקים צאצאים. |
שיטות
שיטה | גורמי שינוי | תיאור |
---|---|---|
addיישורmentPering_(row, missingSpace) | protected |
משנים את השורה הרלוונטית כדי להוסיף את המרווח הפנימי הנתון מסביב לשדות שלה. המיקום המדויק של המרווח הפנימי מבוסס על מאפיין היישור של הקלט האחרון בשדה. |
addElemSpacing_() | protected |
הוספת ריווח אופקי בין רכיבים בתוך כל שורה וסביבם. |
addInput_(input, activeRow) | protected |
אם צריך, מוסיפים רכיב קלט לשורה הפעילה ומתעדים את סוג הקלט בשורה. |
addRowSpacing_() | protected |
מוסיפים רווחים בין שורות ומגדירים את הגודל שלהם. |
alignRowElements_() | protected |
ייתכן שיהיה צורך ברווחים נוספים כדי לוודא שהצלעות הימניות של כל השורות נמצאות בשורה. אפשר לחשב את זה רק אחרי מעבר ראשון, כדי לחשב את הגודל של כל השורות. |
alignStatementRow_(row) | protected |
יישרו את הרכיבים של שורת הצהרה על סמך גבולות מחושבים. בניגוד לסוגים אחרים של שורות, שורות בדוחות מוסיפות רווח בכמה מקומות. |
computeBounds_() | protected |
מציאת המיקום הימני של הבלוק ושל הקצה הימני של קלט ההצהרה. |
createRows_() | protected |
יצירת שורות של אובייקטים ניתנים למדידה שמייצגים את כל החלקים של הבלוק שניתן לעבד. |
finalize_() | protected |
מבצעים את השינויים הסופיים באובייקט המידע של הרינדור. חשוב במיוחד לשמור את המיקום ה-y של כל שורה ולתעד את הגובה של כל הבלוק. |
getDesiredRowWidth_(_row) | protected |
מחשבים את הרוחב הרצוי של שורת קלט. |
getElemCenterline_(row, elem) | protected |
מחשבים את קו האמצע של רכיב בשורה שעברה רינדור. יישום הבסיס הזה מציב את קו האמצע באמצע השורה באופן אנכי, ללא מקרים מיוחדים. סביר להניח שתצטרכו לוגיקה נוספת כדי לטפל (לכל הפחות) בשורות העליונות והתחתונות. |
getInRowSpacing_(prev, next) | protected |
מחשבים את הרוחב של רכיב רווח בשורה על סמך הרכיב הקודם והרכיב הבא באותה שורה. לדוגמה, ניתן להוסיף מרווח פנימי נוסף בין שני שדות שניתן לערוך. |
getMeasureableForConnection(conn) | הפונקציה מחזירה את החיבור ניתן למדידה שמשויך לחיבור הנתון. | |
getRenderer() | משתמשים בכלי לרינדור הבלוקים. | |
getSpacerRowHeight_(_prev, _next) | protected |
חישוב הגובה של שורת רווח. |
getSpacerRowwidth_(_prev, _next) | protected |
מחשבים את הרוחב של שורת רווח. |
makeSpacerRow_(prev, next) | protected |
יוצרים שורת רווח כדי לעבור בין השורה הקודמת לשורה הבאה, ומגדירים את הגודל שלה. |
measure() | צריך לאכלס את האובייקט הזה בכל פרטי הגודל הנדרשים כדי לשרטט את הבלוק. אישור המדידה הזה לא מפיץ שינויים בבלוק (למרות ששדות עשויים לבחור לעיבוד מחדש כשמתבצעת קריאה ל-getSize() ). עם זאת, שיחות חוזרות ונשנות עשויות להיות יקרות. |
|
populateBottomRow_() | protected |
יוצרים את כל הרכיבים ששייכים לשורה התחתונה, שאינם מפרידים. |
populateTopRow_() | protected |
יוצרים את כל הרכיבים ששייכים לשורה העליונה, שאינם מפרידים. |
recordElemPositions_(row) | protected |
מתעדים את פרטי המיקום הסופי של רכיבים בשורה הנתונה, לשימוש בשרטוט. לכל הפחות, המערכת מתעדת xPos וקו אמצע בכל רכיב. |
EligibleStartNewRow_(currInput, prevInput) | protected |
עליכם להחליט אם להתחיל שורה חדשה בין שני ה-Blockly.Inputs. |