דילוג לתוכן הראשי

ביטול פעולה וביצוע חוזר

ניתן לחזור למצב עריכה קודם או להתקדם למצב מאוחר יותר.
ההיסטוריה שומרת עד 2048 שינויים.

  • ביטול פעולה: Ctrl + Z (Windows/Linux) או ⌘ + Z (Mac)
  • ביצוע חוזר: Ctrl + Shift + Z (Windows/Linux) או ⌘ + Shift + Z (Mac)

בסרגל הכלים מופיעות אותן שתי פקודות כלחצנים Undo ו-Redo, לצד הלחצן Time Travel.
שני הלחצנים מוארים רק כשיש מה לבטל או מה לבצע שוב. עורך readonly מסתיר את שלושתם, וקיצורי המקשים אינם עושים דבר.

ביטול פעולה וביצוע חוזר פועלים בכרטיסיית ERD בלבד. הם אינם זמינים בכרטיסיות ויזואליזציה, סכמת SQL, מחולל קוד והגדרות. בשדות Before tables ו-After tables של כרטיסיית סכמת SQL, אותם מקשים מבטלים ומבצעים שוב, במקום זאת, את ההקלדה בשדה.
קיצורי המקשים גם אינם פעילים כל עוד פתוחים החיפוש המהיר, החלון Table Properties, התצוגה Diff Viewer, התצוגה המקדימה של Auto Layout, תיבת הדו-שיח Export image, מיפוי עמודות או מסע בזמן.
הם ממשיכים לפעול כשהמקלדת נמצאת בכל מקום בסייר, כולל העץ שלו, וכל עוד בורר הצבעים פתוח. גם כשסמן הטקסט נמצא באחד מהשדות שלהם, כגון שדה האיתור, שדה ההחלפה או השדה Hex, הם מבטלים ומבצעים שוב שינויים בתרשים, ולא בטקסט שבשדה.

ההיסטוריה מוחזקת בזיכרון של הסשן הנוכחי. היא אינה נשמרת במסמך, ולכן תרשים שנפתח מחדש מתחיל עם היסטוריה ריקה.

הזזת טבלה והסרת עמודה באמצעות ⌥ + Backspace, ולאחר מכן ביטול שתי הפעולות באמצעות ⌘ + Z וביצוע חוזר שלהן באמצעות ⌘ + Shift + Z

מה נרשם בהיסטוריה​

נרשמים:

  • טבלאות ופתקים: הוספה, הסרה, הזזה, צבע, שם והערה, הטקסט והגודל של פתק.
  • קבוצות טבלאות: הוספה, הסרה, הזזה, שינוי גודל, שם, צבע, והקבוצה שבה נמצאת כל טבלה – ראו קבוצות טבלאות.
  • עמודות: הוספה, הסרה, שינוי סדר, וכל אחת מאפשרויות העמודה.
  • קשרים: הוספה, הסרה, שינוי סוג, העמודות שנקבעו במיפוי עמודות, וכל בחירה מתוך הפריטים On Delete או On Update – ראו ON DELETE ו-ON UPDATE. ביטול של הסרה מחזיר את הקשר עם פעולות ה-ON DELETE וה-ON UPDATE שלו.
  • אינדקסים והעמודות שלהם.
  • מיקום התצוגה, רמת הזום והמתגים של View Option.
  • הסקריפטים Before tables ו-After tables של כרטיסיית סכמת SQL, צעד אחד לכל עריכה שמחילים ביציאה מהשדה – ראו סקריפטים לפני הטבלאות ואחריהן.
  • ייבוא של קובץ, והוספה של קובץ באמצעות Import and Add.

אינם נרשמים:

  • מסד הנתונים ושם מסד הנתונים.
  • שפת הקוד במחולל הקוד, Table Name Case ו-Column Name Case.
  • סוג המירכאות, בין שנקבע בכרטיסיית סכמת SQL ובין שנקבע בכרטיסיית מחולל קוד.
  • הבחירות Statements, Header ו-Tables בכרטיסיית סכמת SQL, ששייכות לחלון העורך – ראו חלונית אפשרויות.
  • כל מה שבכרטיסיית הגדרות, כולל השורות Lock.
  • ערכת הנושא ושפת התצוגה – ראו שפה וערכת נושא.
  • איזו טבלה, איזה פתק או איזו קבוצה מוצגים בחזית ביחס לשאר.
  • הסייר: פתיחה, סגירה או שינוי גודל שלו, כיווץ העץ שלו, ומחרוזת החיפוש והאפשרויות. עם זאת, מה שהלחצנים Replace ו-Replace All משנים נרשם, וכך גם הגלילה שמעבר יוצר – ראו מחווה אחת, צעד אחד.
  • זום והזזת התצוגה בכרטיסיית ויזואליזציה בכל אחד משני המצבים, הזזה של צמתים בגרף או של כרטיסים במצב זרימה, Tidy Up, תצוגת השורות והתמקדות בטבלאות – ראו מצב זרימה לעולם אינו עורך את המסמך.

לא ניתן לבטל שינוי של אף אחד מאלה.

גם שינויים שמגיעים מעורך אחר אינם נרשמים, ולכן ביטול פעולה חל רק על השינויים של המשתמש עצמו. בסשן עריכה שיתופית כל עורך מבטל את השינויים שלו, וסוכן קוד שעורך דרך שרת ה-MCP מבטל את השינויים שלו באמצעות erd_undo.

ביטול של הפעולה Import, שמחליפה את התרשים כולו, מחזיר את התרשים הקודם כפי שהיה בעורך בעת הייבוא, כשכל נעילה מופעלת או כבויה וכל ערך נעול כפי שהיו אז.
אם בתרשים הזה Viewport היה נעול, התצוגה והזום חוזרים לתצוגה הנעולה, שבה התרשים נפתח, ולא למיקום שבו הייתה התצוגה. כש-Viewport שלו אינו נעול, הם חוזרים למיקום שבו הייתה התצוגה בעת הייבוא. שאר ההגדרות הנעולות, כגון הכרטיסייה הנוכחית או שפת הקוד במחולל הקוד, נשארות כפי שהן במסך.
תרשים חדש מתחיל כשכל הנעילות מופעלות. כדי לשמור על התצוגה גם בביטול כזה, יש לבטל את הנעילה של Viewport לפני הייבוא. ביטול הנעילה לאחר מכן, או ייבוא של קובץ JSON שהנעילה Viewport שלו כבויה, אינו משנה את המקום שאליו הביטול מחזיר את התצוגה.

מחווה אחת, צעד אחד​

כל מה שמחווה אחת מבצעת הופך לרשומה אחת בהיסטוריה.
ביטול של הדבקת כמה טבלאות ופתקים בבת אחת, או של שכפולם באמצעות Alt + drag, נעשה בצעד אחד.

הקשה על Delete או על Backspace, או בחירה ב-Delete selected או ב-Delete columns בתפריט ההקשר, היא צעד אחד, בלי קשר למספר הטבלאות, הפתקים, קבוצות הטבלאות או העמודות שהיא מסירה.
הפעלה או כיבוי של המפתח הראשי בכמה עמודות שנבחרו נרשמים כצעד אחד, בין באמצעות Alt + K (Windows/Linux) או ⌥ + K (Mac) ובין באמצעות הפריט Primary Key on selected columns בתפריט ההקשר של טבלה.
קביעת הצבע של הבחירה, או הסרתו באמצעות No color או Remove color, היא צעד אחד, בלי קשר למספר הטבלאות, הפתקים והקבוצות שנבחרו. בחירה בצבע שכבר יש לכל מה שנבחר אינה רושמת צעד, וגם No color אינו רושם צעד כשלאף אחד מהפריטים שנבחרו אין צבע.
לחיצה על Map או על Save במיפוי עמודות היא צעד אחד, יחד עם עמודות המפתח הזר שהיא מוסיפה וסוגי הנתונים שהיא משנה.
הפעולה Import and Add היא צעד אחד, יחד עם הגלילה שמביאה את הבלוק שנוסף לתצוגה כשיש בה צורך.

יצירה של קבוצת טבלאות, בשרטוט שלה או בקיבוץ הטבלאות שנבחרו באמצעות הפריט Group selected tables או T ואז G, היא צעד אחד יחד עם כל הטבלאות שנכללות בה. הסרה של קבוצה היא צעד אחד, וביטולה מחזיר את הקבוצה עם הטבלאות שלה בתוכה.
גרירה של קבוצה בשורת הכותרת שלה מזיזה את הקבוצה ואת כל הטבלאות שלה בצעד אחד. טבלאות שמשוחררות לתוך קבוצה או מחוצה לה מחליפות קבוצה באותו צעד כמו הגרירה שלהן כשמשחררים בתוך כ-200ms מהתנועה האחרונה, כך שביטול פעולה אחד מחזיר אותן למקומן ולקבוצות שבהן היו. אחרי השהיה ארוכה יותר לפני השחרור, שינוי הקבוצה הוא צעד נפרד, וביטול הפעולה הראשון מבטל רק אותו.
שינוי גודל של קבוצה באמצעות קצה או פינה נרשם פעם אחת, בשחרור.
החלת פריסה אוטומטית היא צעד אחד, כולל הקבוצות שהיא מתאימה סביב הטבלאות שלהן.

גם הלחצן Replace All באיתור והחלפה הוא צעד אחד, בלי קשר למספר שמות הטבלאות, שמות העמודות, שמות האינדקסים, שמות קבוצות הטבלאות, ההערות והפתקים שהוא משנה. כשהוא אינו משנה דבר, כמו כשהאפשרות Preserve Case כותבת כל התאמה בחזרה כפי שהייתה, הוא אינו רושם צעד.
לחיצה בודדת על Replace היא צעד אחד, כולל הגלילה להתאמה הבאה כשההתאמה הזו דורשת גלילה. כשהיא כותבת את ההתאמה שלה בחזרה כפי שהייתה, היא רושמת רק את הגלילה הזו, או שאינה רושמת דבר כשאין גלילה.
מעבר להתאמה גולל את בד הציור רק כשההתאמה עדיין אינה נראית היטב – ראו היכן נוחתת קפיצה. הגלילה הזו נרשמת כמו כל שינוי אחר של מיקום התצוגה, ולכן אחרי מעבר בין התאמות, ביטול פעולה מבטל תחילה את הגלילות האלה, אחת בכל צעד.
שאר המעברים שנוחתים בבד הציור רושמים את הגלילות שלהם באותו אופן: בחירה בשורה בסייר, בתוצאה של החיפוש המהיר, או בלחצן הכרטיס של הקישור החיצוני במצב זרימה. מעבר שמשאיר את התצוגה במקומה אינו רושם דבר. גם בחירה בשורה ברשימה של Diff Viewer אינה רושמת דבר, כי היא מזיזה רק את הצדדים של מציג ההבדלים עצמו, שהם לקריאה בלבד.

גם גרירה רציפה, הזזת התצוגה של בד הציור, זום, צביטה או שינוי צבע נאגרים למשך כ-200ms ונרשמים כרשומה אחת.
גרירה שזזה פחות מ-20px בסך הכול אינה רושמת הזזה. רק שינוי קבוצה שהיא גורמת לו, אם יש כזה, נרשם.

הקלדה בתא או בפתק נרשמת לפי קלט ולא לפי מחווה: כל תו שמוקלד, כל הדבקה וכל שלב של הרכבה בשיטת הקלט (IME) נרשמים כצעד נפרד.
השם של קבוצת טבלאות נרשם פעם אחת, כשהוא נשמר בהקשה על Enter או ביציאה מהשדה, כך שהשם שמוקלד בקבוצה שזה עתה נוצרה הוא צעד נפרד מיצירתה. הקשה על Esc, או שם שנשאר ללא שינוי, אינם רושמים דבר.

מסע בזמן​

מסע בזמן נפתח מהלחצן Time Travel בסרגל הכלים, לצד ביטול פעולה וביצוע חוזר.
הלחצן אינו עושה דבר עד שיש בסשן לפחות שינוי אחד שנרשם.

מסע בזמן פותח עותק נפרד של התרשים לקריאה בלבד, במיקום הגלילה וברמת הזום שבד הציור מציג, בין שהנעילה Viewport מופעלת ובין שלא.
יש לגרור את המחוון, או ללחוץ במקום כלשהו על המסילה שלו, כדי לנוע לאורך כל היסטוריית העריכה ולהציג תצוגה מקדימה של כל נקודה. המיקום השמאלי ביותר של המחוון הוא המצב שהיה צעד אחד לפני השינוי הראשון שנרשם, והוא נפתח כשהידית על המצב הנוכחי.
התצוגה המקדימה אינה מגיבה לפעולות: היא מציגה מפה מוקטנת, אבל לא ניתן להזיז בה את התצוגה, לגלול בה או לערוך אותה, והמסמך האמיתי נשאר ללא שינוי עד להחלה.

יש ללחוץ על Apply כדי לשחזר את הנקודה שנבחרה, או על Cancel, או להקיש על Esc, כדי להשאיר את המסמך ללא שינוי.

פתיחת מסע בזמן, גרירת המחוון אחורה לאורך הסשן והחלת נקודה מוקדמת יותר