•  Back 
  •  Die Objekt-Struktur 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File8.2.4.4  Objektstati des AES                                       TOS

Vom Objektstatus hängt es ab, wie ein Objekt später auf dem Bildschirm 
dargestellt wird. Ein Objektstatus kann von folgendem Typ sein:

 Status              Bedeutung



 NORMAL (0x0000)     Normale Darstellung.

 SELECTED (0x0001)   Inverse Darstellung, dh. das Objekt ist 
                     selektiert.

 CROSSED (0x0002)    Falls die Objektart BOX ist, wird das Objekt mit 
                     durchgestrichen gezeichnet.

 CHECKED (0x0004)    Am linken Objektrand befindet sich ein Häkchen.

 DISABLED (0x0008)   Das Objekt wird grau dargestellt und ist nicht 
                     mehr selektierbar.

 OUTLINED (0x0010)   Das Objekt bekommt einen Rahmen.

 SHADOWED (0x0020)   Ein Schatten wird unter das Objekt gezeichnet.

 WHITEBAK (0x0040)   Auf PC-GEM bewirkt dies, daß die Icon-Maske nicht 
                     mitgezeichnet wird, was u.U. die Ausgabe 
                     beschleunigen kann.
                     Ab MagiC-3 wird hiermit das Unterstreichen von 
                     Zeichenketten gesteuert. Dieses Feature kann über 
                     appl_getinfo (Opcode 13) ermittelt werden.

 DRAW3D (0x0080)     Ein Objekt soll mit 3D-Effekt gezeichnet werden. 
                     Dieses Flag ist nur für PC-GEM interessant, und 
                     wird vom Atari-AES (so z.B. auch in MagiC) 
                     ignoriert.

 HIGHLIGHTED (0x0100) Ein Objekt mit diesem State wird mit einer 
                     gestrichelten Line, die mit MD_XOR gezeichnet 
                     wird, umrandet. Dieser State wurde mit ViewMAX 
                     beta eingeführt.

 UNHIGHLIGHTED (0x0200) Bei einem Objekt mit diesem State wird beim 
                     Zeichnen explizit eine durch den State 
                     HIGHLIGHTED gezeichnete Umrandung entfernt. Dazu 
                     muß wie folgt vorgegangen werden: Zuerst muß der 
                     State HIGHLIGHTED gelöscht werden, dann der State 
                     UNHIGHLIGHTED gesetzt werden und anschließend das 
                     Objekt mit der Funktion objc_draw neu gezeichnet 
                     werden. Ein Neuzeichnen des Objekts ohne den 
                     State UNHIGHLIGHTED würde die Umrandung nicht 
                     löschen, da sie außerhalb des Bereichs liegt, den 
                     das Objekt belegt. Nach dem Neuzeichnen sollte 
                     der State UNHIGHLIGHTED wieder gelöscht werden. 
                     Dieser State wurde mit ViewMAX beta eingeführt.

 UNDERLINE (0x0f00)  Dieser Opcode steht unter MagiC ab Version 2.0 
                     zur Verfügung, und legt die Position und Größe 
                     des Unterstriches bei Objekten vom Typ G_STRING, 
                     G_TITLE und G_BUTTON fest.

 XSTATE (0xf000)     Dieser Opcode steht unter MagiC ab Versio 2.0 zur 
                     Verfügung, und sorgt für das Umschalten bei den 
                     verschiedenen Button-Typen (G_STRING, G_TITLE und 
                     G_BUTTON).

In GEM/5, CROSSED makes the object draw in 3D:

   ∙ If an object is both CROSSED and SELECTABLE, then it is drawn as 
     a checkbox.
   ∙ If it is CROSSED, SELECTABLE and an RBUTTON, it is drawn as a 
     radio button.
   ∙ If it is a button or a box and it is CROSSED, then it is drawn as 
     a raised 3D shape, similar to Motif.
   ∙ If a button is CROSSED and DEFAULT, a "Return key" symbol appears 
     on it (rather like NEXTSTEP).
   ∙ Boxes and text fields that are CROSSED and CHECKED appear sunken.

GEM/5 can be detected by calling vqt_name for font 1. If nothing is 
returned, GEM/5 is running.

Recent FreeGEM builds contain a system based on the GEM/5 one, but 
extended and backwards-compatible. The DRAW3D state is used instead of 
CROSSED:

   ∙ If an object is both DRAW3D and SELECTABLE, then it is drawn as a 
     checkbox.
   ∙ If it is DRAW3D, SELECTABLE and an RBUTTON, it is drawn as a 
     radio button.
   ∙ If a button is DRAW3D and DEFAULT, a "Return key" symbol will be 
     on it.
   ∙ If an object with a 3D border has the WHITEBAK state, then the 3D 
     border will not have a black edge.
   ∙ If a radio button or checkbox has the WHITEBAK state, then it 
     will be drawn with a white background rather than in the colour 
     used by 3D objects.

To check for these abilities, use appl_init and check that bit 3 of 
xbuf.abilities is set.

Querverweis: Objektstruktur im AES   Objektarten des AES