2.2 Vererbung von Attributen
Bei einem Objekt werden Attributwerte immer vom zugrundeliegenden Modell geerbt. Diese Attributwerte können dann bei dem Objekt durch neue Werte überschrieben werden. Damit nimmt die Bedeutung von den Attributen von Werten im Default zu Werten im Modell zu Werten in der Instanz immer mehr zu. D.h. wenn z.B. eine Instanz eine bestimmte Farbe haben soll, wird die Farbe bei der entsprechenden Instanz definiert. Damit erhält die Instanz die entsprechende Farbe, unabhängig davon, was in den zugrundeliegenden Modellen definiert worden ist.
Oberhalb der im Dialog definierten Defaults gibt es noch Dialog Manager Defaultwerte, die Werte für einzelne Attribute darstellen, mit denen der Dialog Manager intern arbeiten kann. Auf diese Werte sollte man sich bei der Dialogprogrammierung auf keinen Fall verlassen, denn diese können immer wieder angepasst werden. Zusätzlich gibt es für bestimmte Attribute noch Defaultwerte im Fenstersystem, die dann zum Tragen kommen, wenn weder bei der Instanz, noch beim Modell oder dem Default ein Wert für das Attribut gesetzt worden ist. Dieses ist vor allem bei Layoutattributen wie der Hintergrundfarbe oder dem Zeichensatz sinnvoll, da hierdurch der Benutzer des Systems durch Systemeinstellungen die entsprechenden Werte verändern kann. Im nachfolgenden Schaubild wird die Hierarchie dieser Attributwerte dargestellt.
Wenn nun eine Instanz auf dem Bildschirm sichtbar gemacht wird, wird ein Objekt gebildet, das die Attribute der Instanz und der zugrundeliegenden Modelle beinhaltet. Dazu wird die Hierarchie immer so weit durchsucht, wie es unbedingt notwendig ist. Sobald für ein Attribut ein Wert definiert ist, wird die Suche für dieses Attribut abgebrochen und der gefundene Wert übernommen. In der nachfolgenden Tabelle sollen die Spalten die einzelnen Attribute darstellen, in den Zeilen werden die Werte der verwendeten Defaults, Modelle und Instanzen angezeigt. In der letzten Zeile werden die Attributwerte des angezeigten Objektes dargestellt.
Tabelle 19-2: Berechnung der Attributwerte
Attribut 1 |
Attribut 2 |
Attribut 3 |
Attribut 4 |
Attribut 5 |
|
---|---|---|---|---|---|
Fenstersystem |
FS |
FS |
|
|
FS |
interner Default |
|
|
ID |
ID |
ID |
Modell 1 |
M1 |
|
|
|
|
Modell 2 |
|
|
M2 |
|
|
Modell 3 |
|
|
|
|
M3 |
Instanz |
|
|
|
I |
|
angezeigter Wert |
M1 |
FS |
M2 |
I |
M3 |