Vernderungen in Frank Wbbeling's Amiga-Portierung von `FIG'
-------------------------------------------------------------

- Das   Programm  ist  gegenber  der  Erstversion  wesentlich  krzer
  geworden.

- Zur  bersetzung  habe  ich  den SAS/C Compiler 5.10a benutzt und so
  nebenbei  einen  Haufen  von  Inkonsistenzen  beseitigt.   Da  waren
  Variablen  mehrfach  definiert,  beim  Anfordern von Resourcen wurde
  nicht  darauf  geachtet,  ob  die  Anforderung  erfolgreich war, etc.
     Da die Libraries des SAS/C Compilers teilweise nicht die Features
  untersttzen,  wie sie der Aztec `C' Compiler bietet, mute ich eine
  Handvoll   Funktionen  umschreiben,  bzw.   komplett  neu  schreiben
  (welcher  der beiden Compiler hlt sich denn jetzt eigentlich an den
  ANSI- und welcher an den Unix-Standard?).
     Da  mir beim hrteren Testen mit `MungWall' mehrfach auffiel, da
  das  Programm  seinen  angeforderten  Speicher  teilweise  ber  die
  angegebenen  Grenzen  hinaus  berschrieb, habe ich die Routinen zur
  Speicherverwaltung    neu    geschrieben.     Jedem    angeforderten
  Speicherblock wird zustzlich noch ein kleines bichen mehr Speicher
  angehngt, als angefordert war.

- Um  das Risiko von sporadischen Systemabstrzen zu reduzieren, wurde
  das  Programm  mit  dem  Startup-Code  `catch.o'  gelinkt.

- Die exception-gesteuerte Fensterabfrage und das `EasyWindows'-System
  sind  nicht  mehr vorhanden.  Ich habe alle verwendeten Routinen neu
  geschrieben und dem bestehenden Amiga-Standard angepat.

- Der   Bildschirm   wird   nicht  mehr  von  einem  einzigen  Fenster
  `bevlkert',  sondern  von zweien, soda die hlichen Nebeneffekte,
  wie  das unabsichtliche  Lschen der Bedienfelder, der Vergangenheit
  angehren.

- Die  Bedienelemente  werden  korrekt  selektiert,  es ist nicht mehr
  mglich  durch  doppeltes  Selektieren  den  aktuellen  Zeichenmodus
  `verschwinden' zu lassen.

- Beim    Anklicken    eines   Bedienelementes,   das   die   aktuelle
  Zeichenfunktion   verndert,   wird   die  Bearbeitung  der  letzten
  Zeichenfunktion  sofort  beendet.  Dies verhindert das Entstehen von
  `Vektorleichen', die nie wieder vom Bildschirm zu lschen sind.

- Die  Position  des  Mauszeigers  wird permanent angezeigt, sowohl in
  Punkten  als  auch  in Zentimetern.  Die Koordinatenanzeige wird wie
  auch  das  Zoom-Fenster  bei  jeder  vierten  Mausbewegung  auf  den
  neuesten  Stand  gebracht.   Dies spart Rechenzeit und lt die Maus
  nicht ganz so trge ber den Bildschirm `torkeln'.  Wer trotzdem bei
  jeder  Mausbewegung genau wissen/sehen will, wo sich die Maus gerade
  befindet, der sollte eine der Shift-Tasten gedrckt halten.

- Ich  habe die intern verwendete Konstante zur Umrechnung von Punkten
  in  Inches  verndert.  Sie sollte jetzt der Bildschirmauflsung des
  Amigas  nher  kommen  (67  Punkte statt 80 Punkte sollen einem Inch
  entsprechen).   Zustzlich  wird  das bei Bedarf zuschaltbare Raster
  nicht  mehr in halben Inches bzw.  Viertel-Inches angezeigt, sondern
  in Zentimetern (ein halber Zentimeter, bzw.  ein Zentimeter).

- Es   gibt  eine  Funktion  zum  Vergrern  der  40  Punkte  um  den
  Mauszeiger.   Diese  Funktion  ist  nur  unter  Kickstart  2.0  oder
  Nachfolgeversionen  verfgbar,  da ich es doch nicht geschafft habe,
  mir eine halbwegs schnelle Vergrerungsroutine auszudenken :-(
     Die Gre des Fensters bestimmt wie weit der Ausschnitt unter der
  Maus  vergrert wird.  Das Kreuz im Fenster bezeichnet die aktuelle
  Position  des  Mauszeigers.   Leider ergeben sich Rundungsfehler bei
  der  Umrechnung und Vergrerung, soda die Mausposition nicht immer
  korrekt  durch  den  Schnittpunkt  des  Kreuzes  angezeigt wird:  je
  grer  das  Fenster gemacht wird, desto korrekter wird die Position
  angezeigt.

- Die  Text-Funktion  bernimmt jetzt auch den erweiterten Zeichensatz
  des  Amiga  (`ECMA  94  Latin  1',  wird  auch von DEC, NeXT und Sun
  untersttzt).   TeX,  bzw.  LaTeX werden damit Probleme bekommen, es
  sei  denn  man  hat  seine Formatfiles dahingehend gendert, da die
  Zeichen  in ein fr TeX lesbares Format gewandelt werden (z.B.  ber
  `ecma_94_latin_1.sty').

- Statt  weiterhin  eine  Maus mit drei Tasten zu `emulieren' habe ich
  die einzige Funktion, die eine dritte Maustaste erfordert htte (das
  Pop-Up-Men)  durch  ndern  des  Pop-Up-Mens in ein Pull-Down-Men
  berflssig  gemacht.   Hiermit  entspricht die `mittlere' Maustaste
  der   rechten   Maustaste.    Das  Pull-Down-Men  wird  immer  dann
  angezeigt,  wenn  sich  der Mauszeiger auerhalb des Zeichenfensters
  befindet   (z.B.    im   Bedienfeld   oder  ber  dem  Drag-Bar  des
  Bildschirms).

- Alle   im   Men   angezeigten   Funktionen   werden  auch  wirklich
  untersttzt.

- Der   Menpunkt   `Save   as   BITMAP'   speichert  den  Inhalt  des
  Zeichenfensters als IFF-ILBM-Datei anstatt im Sun-Rasterformat.

- Wo  immer es mir sinnvoll erschien habe ich die Funktionen von Bruce
  Dawson's und Colin Fox' req.library verwendet.

- Fast alle Menpunkte wurden mit Kurzkommandos (`Shortcuts' versehen.
  Hiermit  tut  sich  ein  neues  Problem  auf:   da  `Fig' die rechte
  Maustaste  bei  der  Benutzung  der Zeichenfunktionen selbst belegt,
  knnen  auch  die  Menpunkte  nicht  mehr  ber Amiga-Taste+<Taste>
  ausgelst  werden  (ein  unangenehmer Seiteneffekt).  Um dennoch mit
  den  Kurzkommandos  arbeiten  zu knnen, lassen sie sich jedoch auch
  ohne  Bettigung der Amiga-Taste auslsen (jedoch nicht, whrend der
  Textmodus aktiv ist).

- Luft   das  Programm  unter  Kickstart  2.x,  so  ergibt  sich  die
  Mglichkeit,  die  Auflsung  des  Bildschirms zu verndern.  Hierzu
  existiert   ein   Menpunkt,   ber   dessen   Anwahl   man  in  die
  Auflsungsauswahl gelangt.  Durch Anklicken eines Auswahlfeldes kann
  die  Auflsung  bestimmt  werden,  in  der Bildschirm von `Fig' BEIM
  NCHSTEN  Start des Programmes geffnet wird.  Die Auflsung wird in
  Environment-Variablen gespeichert.

- Der   auf  dem  Bildschirm  zu  verwendende  Font  kann  nicht  mehr
  ausgewhlt werden.

- Die Breite des Zeichenfensters ist nicht mehr von Hand zu setzen.

- Ich habe den `Magnet Mode' wieder aktiviert.


                                Autor:
                                ------

                         Olaf `Olsen' Barthel
                           Brabeckstrae 35
                          D-3000 Hannover 71

                      Bundesrepublik Deutschland

                      Z-Net: O.BARTHEL@A-Link-H
                      Sub:   o.barthel@a-link-h.zer.sub.org
