Neue AES-Objekttypen von MagiC 3
--------------------------------

Andreas Kromke
25.5.95

- Unterstriche fr G_STRING und G_TITLE. Es wird ein Buchstabe
  unterstrichen, das Objekt ist per Alt-Taste tastaturbedienbar.
  Das klappt auch mit Ziffern.

  WHITEBAK in ob_state setzen
  (ob_state >> 8) & 0xf bestimmt die Position des Unterstrichs
  (ob_state >> 8) & 0xf0 ist 0

- berschrift (komplett unterstrichener G_STRING).
  Es wird empfohlen, die Objekthhe um zwei bis drei Pixel zu vergrern

  WHITEBAK in ob_state setzen
  (ob_state >> 8) == 0xff

- Unterstrich fr G_BUTTON. Es wird ein Buchstabe
  unterstrichen, das Objekt ist per Alt-Taste tastaturbedienbar.
  Das klappt auch mit Ziffern.
  Es wird empfohlen, die Objekthhe um einen Pixel zu vergrern

  WHITEBAK in ob_state setzen
  (ob_state >> 8) & 0xf bestimmt die Position des Unterstrichs
  (ob_state >> 8) & 0xf0 ist 0

- Gruppenrahmen

  ob_type = G_BUTTON
  WHITEBAK in ob_state setzen
  (ob_state >> 8) == 0xfe

- Kreuzchen-Button

  ob_type = G_BUTTON
  bei ob_flags  RADIOBUTTON _deaktivieren_
  WHITEBAK in ob_state setzen
  (ob_state >> 8) == 0xff

- Kreuzchen-Button, mit Unterstrich tastaturbedienbar

  ob_type = G_BUTTON
  bei ob_flags  RADIOBUTTON _deaktivieren_
  WHITEBAK in ob_state setzen
  (ob_state >> 8) & 0xf bestimmt die Position des Unterstrichs
  (ob_state >> 8) & 0xf0 == 0x80

- runder Radio-Button

  ob_type = G_BUTTON
  bei ob_flags  RADIOBUTTON _aktivieren_
  WHITEBAK in ob_state setzen
  (ob_state >> 8) == 0xff

- runder Radio-Button, mit Unterstrich tastaturbedienbar

  ob_type = G_BUTTON
  bei ob_flags  RADIOBUTTON _aktivieren_
  WHITEBAK in ob_state setzen
  (ob_state >> 8) & 0xf bestimmt die Position des Unterstrichs
  (ob_state >> 8) & 0xf0 == 0x80

- 3D-Eingabefeld

  ob_type = G_FTEXT
  3D-Flags BACKGROUND
  Rand: auen 2 Pixel

- generelles Verhalten der 3D-Flags

  1. G_BOXTEXT DECKEND 3D wird in G_BOXTEXT TRANSPARENT 3D gewandelt
  2. G_TEXT DECKEND 3D wird ebenfalls in G_BOXTEXT TRANSPARENT 3D gewandelt

- Verhalten des Flags BACKGROUND

  Beim Selektieren wird das Objekt per XOR-Maske modifiziert.
  objc_change() zeichnet ebenfalls immer eine XOR-Maske.

- Verhalten des Flags ACTIVATOR

  Beim Selektieren wird ein evtl. vorhandener Rahmen "umgedreht", ein
  eventuell vorhandener Text um 1 Pixel nach rechts unten verschoben.
  objc_change() zeichnet das Objekt immer neu.

- Verhalten des Flags INDICATOR

  Beim Selektieren wird die Boxfarbe von hellgrau nach dunkelgrau
  gewandelt. Ferner wird eine evtl. vorhandener Text in einer anderen
  Farbe gezeichnet.
  Unter MultiTOS funktioniert das folgendermaen:

     0    <=>  1
     2    <=>  13
     3    <=>  15
     4    <=>  14
     5    <=>  10
     6    <=>  12
     7    <=>  11
     8    <=>  9

  Das funktioniert NICHT bei G_BUTTON, G_TITLE und G_STRING !!!!
  Eine Systematik ist darin nicht zu erkennen, auer da hellgrau und
  dunkelgrau und schwarz und wei vertauscht werden.

  MagiC hat daher folgende Umsetzung:

     0    <=>  1
     8    <=>  9
     sonst: Bit 3 toggeln, d.h. Farbe abdunkeln/aufhellen

  In MagiC funktioniert das AUCH bei G_BUTTON, G_TITLE und G_STRING !!!!
  objc_change() zeichnet das Objekt immer neu.
