סידור רכיבים בקבוצות

השימוש בקבוצות מאפשר לכם לחלק את עיצוב פני השעון למבנה לוגי.

האפשרות הזו יכולה לעזור לכם לארגן את הרכיבים. אפשר לתת לכל קבוצה name כדי לציין את המטרה שלה.

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

הנה כמה דוגמאות שימחישו איך זה יכול לעזור. הקוד הבא Group מכיל רכיבי PartText, PartImage ו-PartDraw שונים שמרכיבים חלק לוגי אחד של פני השעון:

<Group name="decorations" x="100" y="100" width="200" height="200">
    <!-- PartText, PartImage, PartDraw elements go here -->
</Group>

שינוי ההתנהגות של מצב רגיש לסביבה

אחרי שמגדירים את Group, אפשר לשנות את הרשאות הגישה של כל Group במצב רגיש לסביבה. לדוגמה, כדי להסתיר את Group:

<Group name="decorations" x="100" y="100" width="200" height="200">
    <Variant mode="AMBIENT" target="alpha" value="0" />
    <!-- PartText, PartImage, PartDraw elements go here -->
</Group>

כך לא צריך להוסיף רכיב Variant לכל רכיב צאצא בנפרד.

שינוי קבוצה

בדומה לשינוי ההתנהגות של התאורה הסביבתית, אפשר לשנות הרבה מהמאפיינים של Group באמצעות שימוש באחד או יותר מרכיבי Transform.Variant

בדוגמה הזו, הרכיב Group מסובב לפי השניות. אם מציינים את pivotX ו-pivotY כ-0.5, הסיבוב מתבצע סביב מרכז Group, בלי קשר למיקום של כל רכיב, כמו PartText או PartImage בתוך Group:

<Group name="decorations" x="100" y="100" width="200" height="200">
    <!-- One full rotation per minute -->
    <Transform target="angle" value="[SECOND] * 6" />
    <!-- PartText, PartImage, PartDraw elements go here -->
</Group>