הבחירה היא כל מה שנבחר כרגע בדף פתוח של מצגת, כמו טווח של טקסט מודגש או טבלה. במדריך הזה מוסבר איך לקבל ולהגדיר את הבחירה במצגת פעילה באמצעות Apps Script.
הבחירה היא תמונת מצב של מה שהיה כשהסקריפט התחיל. אם המשתמש ילחץ והבחירה תשתנה בזמן שהסקריפט פועל, השינויים האלה לא יבואו לידי ביטוי.
בחירות וסוג הבחירה
אפשר לקרוא את הבחירה באמצעות המחלקה Selection. למחלקות יש שיטות שונות לקבלת האובייקטים שנבחרו בהתאם לסוג האובייקטים שנבחרו.
הספירה SelectionType מייצגת את הסוג הספציפי של האובייקטים שנבחרו. לדוגמה, אם המשתמש בחר טקסט בתוך צורה, סוג הבחירה יהיה TEXT. במקרה כזה, אפשר לאחזר את טווח הטקסט שנבחר באמצעות המתודה selection.getTextRange()
.
אפשר גם לאחזר את האובייקט שמכיל את הבחירה. אם ממשיכים עם הדוגמה שלמעלה, אפשר לאחזר את הצורה שמכילה את הטקסט שנבחר באמצעות selection.getPageElementRange().getPageElements()[0]
. באופן דומה, הדף שמכיל את הצורה המקיפה הוא הדף הפעיל הנוכחי. כדי לאחזר את הדף הזה, משתמשים ב-selection.getCurrentPage()
.
קריאת הטקסט שנבחר
כדי לקרוא את הבחירה, משתמשים בשיטה Presentation.getSelection() כמו בדוגמה הבאה:
קריאה של הדף הנוכחי
כדי לאחזר את הדף הנוכחי שהמשתמש צופה בו, משתמשים בשיטות getSelection() ו-getCurrentPage() באופן הבא:
שימו לב שהדף הנוכחי יכול להיות אחד מהסוגים הבאים:
בדף הנוכחי יכולים להיות אובייקט אחד או יותר שנבחרו, והערך של SelectionType קובע את סוג הבחירה.
קריאת הבחירה על סמך סוג הבחירה
בדוגמה הבאה אפשר לראות איך משתמשים בסוג הבחירה כדי לקרוא את הבחירה הנוכחית באופן שמתאים לסוג.
הקראה של טקסט שנבחר
אפשר לקרוא את הטקסט שנבחר באמצעות ה-method Selection.getTextRange(). יש שני סוגים של בחירת טקסט:
- בחירת טווח: אם צורה מכילה את הטקסט 'Hello' ונבחר הטקסט 'He', הטווח שמוחזר הוא startIndex=0 ו-endIndex=2.
- בחירה באמצעות סמן: אם הצורה מכילה את הטקסט 'Hello', והסמן נמצא אחרי 'H' ('H|ello'), הטווח שמוחזר הוא טווח ריק עם startIndex=1 ו-endIndex=1.
שינוי הבחירה
הסקריפט יכול לשנות את הבחירה של המשתמש. כל שינוי בבחירה שהסקריפט מבצע במצגת משתקף בפעולות בחירה הבאות למשך הביצוע של הסקריפט.
השינויים בבחירה משתקפים בדפדפן של המשתמש רק אחרי שהסקריפט
מסיים את ההרצה, או כשמתבצעת קריאה ל-Presentation.saveAndClose()
.
בחירת הדף הנוכחי
אפשר לבחור דף במצגת הפעילה כדף הנוכחי באמצעות הקריאה לשיטה selectAsCurrentPage(). השיטה הזו מסירה כל רכיב דף, דף או בחירת טקסט קודמים. לכן, השימוש בשיטה הזו בדף הנוכחי מאפשר לבטל את הבחירות הנוכחיות בדף. לדוגמה:
בחירת רכיב בדף
כדי לבחור רכיב בדף, משתמשים בשיטה PageElement.select(). בנוסף, כל רכיבי הדף שנבחרו קודם יבוטלו.
לדוגמה:
בחירה של כמה רכיבי דף
כדי להוסיף עוד רכיבים בדף לבחירה, משתמשים בשיטה PageElement.select(false). כל רכיבי הדף צריכים להיות בדף הנוכחי.
שינוי הצורה של החלק שנבחר
העריכות שהסקריפט מבצע יכולות לשנות את הבחירה הנוכחית, כך שהבחירה משתנה כתוצאה מהעריכה. לדוגמה:
- נניח שבחרתם שתי צורות, A ו-B.
- לאחר מכן, הסקריפט מסיר את הצורה A.
- כתוצאה מכך, הבחירה משתנה בהתאם לעריכה כך שרק צורה ב' נבחרת.
בדוגמה הבאה אפשר לראות איך אפשר לשנות את הבחירה באמצעות שינוי של רכיבי דף נבחרים.
בחירת טקסט
אפשר לבחור טקסט שמופיע בתוך צורה או תא בטבלה באמצעות השיטה TextRange.select(). אם הטקסט נמצא בתוך צורה, גם הצורה נבחרת. אם הטקסט נמצא בתא בטבלה, התא והטבלה שמכילה אותו נבחרים.
הפעולה הזו מגדירה גם את דף ההורה כדף הנוכחי.
בחירת טווח בצורה
בדוגמה הבאה אפשר לראות איך בוחרים טווח בתוך טקסט שנמצא בתוך צורה.
בחירת סמן בצורה
בדוגמה הבאה אפשר לראות איך לבחור טקסט באמצעות הסמן בתוך צורה.
בחירת טווח בתא בטבלה
בדוגמה הבאה מוצג איך לבחור טווח בתוך טקסט שנמצא בתא בטבלה.
בחירת מיקום הסמן ב-TableCell
בדוגמה הבאה מוצג איך בוחרים טקסט באמצעות סמן בתוך תא בטבלה.
שינוי הבחירה באמצעות עריכות טקסטואליות
בדוגמה הבאה אפשר לראות איך אפשר לשנות את הטקסט שנבחר על ידי עריכה שלו.
ביטול הבחירה
אין שיטות מפורשות לביטול הבחירה של טקסט או רכיבי דף. אבל אפשר להשיג את התוצאה הזו באמצעות השיטות Page.selectAsCurrentPage()
או pageElement.select()
.
בחירת דף נוכחי
בדוגמה הבאה מוצג איך לבטל את הבחירה של כל הפריטים שנבחרו בדף מסוים, על ידי הגדרת הדף הזה כדף הנוכחי.
בחירת רכיב בדף
בדוגמה הבאה אנחנו מראים איך לבטל את הבחירה של כל הפריטים שנבחרו בדף על ידי בחירה של רכיב דף אחד, וכך להסיר את כל הפריטים האחרים מהבחירה.