home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / utility / system / winx21 / winx21.ger < prev    next >
Text File  |  1993-09-09  |  25KB  |  456 lines

  1. PROGRAMM
  2.      WINX 2.1 [9.9.1993] - 
  3.      Patchprogramm für die GEM-Fensterverwaltung
  4.  
  5. BESCHREIBUNG
  6.      WINX erweitert das GEM der TOS Versionen bis 4.04 um einige Eigen-
  7.      schaften, die auch unter MultiTOS zur Verfügung stehen. Aus der
  8.      Sicht des Anwenders gehören dazu z.B. mehr Fenster, Kontroll-
  9.      elemente an den hinteren Fenstern und eine erweiterte Benutzer-
  10.      schnittstelle (betrifft die Bedienung der Kontrollelemente).
  11.      Außerdem werden einige Fehler und Unzulänglichkeiten in den ver-
  12.      schiedenen GEM Versionen behoben, wodurch die Benutzung des
  13.      GEM wesentlich sicherer wird. Für den Entwickler ist zusätzlich
  14.      die Möglichkeit interessant sich fehlerhafte Aufrufe der Fenster-
  15.      funktionen anzeigen zu lassen.
  16.  
  17.      Theoretisch sollten alle 'sauberen' GEM-Programme mit fast allen
  18.      Änderungen der Fensterverwaltung zurechtkommen, die Praxis sieht
  19.      allerdings anders aus. So mußte z.B. auch das GEM-Desktop in
  20.      einigen Punkten überarbeitet werden. Denken Sie daran, wenn eines
  21.      ihrer Programme unter WINX fehlerhaft arbeitet, wird dies mit
  22.      ziemlicher Sicherheit auch unter MultiTOS der Fall sein. Fordern
  23.      Sie die Autoren auf ihre Programme anzupassen.
  24.  
  25.      Die erweiterte Benutzerschnittstelle integriert WINX ab TOS 2.xx
  26.      ins GEM. Von nun an haben beide Maustasten beim Klick auf ein
  27.      Kontrollelement des Fensterrahmens eine Funktion. Mit der rechten
  28.      Taste kann man Aktionen auslösen, die erst beim Loslassen der
  29.      Maustaste ausgeführt werden. Benutzt man die linke Taste, werden
  30.      die Aktionen sofort und solange ausgeführt, wie man die Taste
  31.      gedrückt hält. Erkennen kann man diesen Zustand daran, daß der
  32.      Pfeil, der die Mausposition auf dem Bildschirm darstellt, seinen
  33.      'Schaft' verliert. Am Beispiel des Verschiebens eines Fensters
  34.      soll dies deutlich werden. Nimmt man das Fenster am Bewegungs-
  35.      element mit der rechten Taste auf, dann wird zunächst nur ein
  36.      Rahmen gezeichnet, den man über den Bildschirm bewegen kann. Erst
  37.      beim Loslassen wird das Fenster an der neuen Position dargestellt.
  38.      Nimmt man hingegen die linke Taste, dann wird noch während des
  39.      Bewegens die Fensterposition aktualisiert. Entsprechendes gilt
  40.      für die Änderung der Fenstergröße, das Bewegen der Scrollbalken
  41.      und das Benutzen von Schließ- und Maximalgröße-Element. 
  42.      
  43.      Die Aktionen, die beim Klick mit der linken Maustaste auf die
  44.      Scrollpfeile bzw. in die Scrollbereiche ausgelöst werden, haben
  45.      sich nicht verändert. Sie führten ja auch bisher schon zu direkten
  46.      Reaktionen des Anwendungsprogramms. Zusätzlich kann man durch
  47.      einen Klick mit der rechten Maustaste auf die Scrollpfeile den
  48.      Scrollbalken an den Anfang bzw. das Ende seines Scrollbereichs
  49.      setzen. Klickt man in einen Scrollbereich, dann wird der Scroll-
  50.      balken direkt auf die entsprechende Position gesetzt. 
  51.      
  52.      Neue Kontrollelemente auf dem Fensterrahmen sind die Scrollboxen.
  53.      Sie befinden sich am Ende jedes Scrollpfeils und ermöglichen das
  54.      Scrollen mit Richtungswechsel und variabler Geschwindigkeit
  55.      (falls Programme dies unterstützen). Nach dem Klicken auf eine
  56.      Scrollbox (bzw. den zugehörigen Scrollpfeil) bestimmt die Aus-
  57.      lenkung und die Entfernung des Mauspfeils von der Scrollbox
  58.      die Scrollrichtung und -geschwindigkeit. Befindet sich der Maus-
  59.      pfeil direkt über der Scrollbox wird nicht gescrollt. Solange
  60.      die Maustaste gedrückt ist, kann man durch Verschieben der Maus 
  61.      die Scrollrichtung und -geschwindigkeit ändern.
  62.      
  63.      Eine weitere neue Möglichkeit hat man beim Klick auf den Fenster-
  64.      titel. Konnte man damit bisher nur hintere Fenster nach vorne 
  65.      holen, ist es jetzt auch möglich das vorderste Fenster nach hinten
  66.      zu stellen, falls das Programm bereits die entsprechende Meldung
  67.      versteht.
  68.      
  69.      Die CONTROL-Taste dient als Modifizierer von Aktionen, die man
  70.      durch einen Klick auf ein Kontrollelement des Fensterrahmens
  71.      auslöst. Ist die CONTROL-Taste in dem Augenblick gedrückt in dem
  72.      man mit der Maus klickt, dann wird die normale Bedeutung der
  73.      Kontrollelemente ignoriert. Stattdessen wird das Fenster entweder
  74.      nach vorne geholt bzw. nach hinten gestellt. Praktisch ist dies,
  75.      wenn ein Fenster nur teilweise sichtbar ist.
  76.      
  77.      Ist die CONTROL-Taste gedrückt, während man die rechte Maustaste
  78.      losläßt, dann wird die anstehende Aktion ignoriert (z.B. wenn man
  79.      das Verschieben eines Fensters eingeleitet hat und es dann doch
  80.      lieber an der alten Position hätte).
  81.  
  82.      Im folgenden sind die Änderungen, die WINX am GEM vornimmt, im
  83.      einzelnen beschrieben, dabei steht '*' für 'neu in dieser Version'
  84.      und '[G..]' bzw. '[L..]' für 'diese Änderung kann abgeschaltet
  85.      werden' (-> KONFIGURATION). Leider ist dieser Teil teilweise sehr
  86.      technisch. Trotzdem sollte man ihn sich mindestens einmal durch-
  87.      lesen, da einem sonst einige Möglichkeiten verborgen bleiben.
  88.  
  89.      GEM-SCRENMGR:
  90.      (Teil des GEM, der Klicks auf den Fensterrahmen verarbeitet)
  91.      - [L1] Bedienung von Kontrollelementen an hinteren Fenstern
  92.      * [G10] BackDrop-Erweiterung: Beim Klick auf die Titelzeile des
  93.        vordersten Fensters wird es nach hinten gestellt (deaktiviert),
  94.        falls die Applikation, der das Fenster gehört, diese neue
  95.        Fähigkeit bereits unterstützt bzw. nur ein Fenster offen hat.
  96.      * [G9] Hält man die CONTROL-Taste beim Klick auf ein Kontroll-
  97.        elemente gedrückt, wird dessen Bedeutung aufgehoben. Stattdessen
  98.        werden hintere Fenster aktiviert bzw. das vordere nach hinten
  99.        gestellt (falls BackDrop eingeschaltet ist)
  100.      * Repeatfunktion für Scrollpfeile unter TOS 1.00
  101.      * Probleme mit WM_ARROWED-Nachrichten beseitigt (ARROWFIX-Patches)
  102.        TOS >= 1.04: Doppelnachricht
  103.        TOS 2.06/3.06: Doppelnachricht, verzögerte Nachricht, Überlänge
  104.        TOS 4.01-4.04: Doppelnachricht, verzögerte Nachricht, Überlänge
  105.        ARROWFIX.GER aus dem ARROWFIX-Paket erläutert Einzelheiten.
  106.      - Optische Rückmeldung bei der Bedienung von Kontrollelementen
  107.        [G4] Selektion der Scrollpfeile
  108.        [G5] Selektion der Scrollbalken
  109.        [G6] Selektion des Bewegungselements
  110.        [G7] Selektion des Größenelements
  111.      * [G2] Rechtsklick auf Fensterrahmen an SCRENMGR (sonst an 
  112.        Applikation)
  113.      * [G3] Einfacher Linksklick aktiviert Echtzeitfunktionen (sonst
  114.        Rechtsklick, falls [G2] eingeschaltet ist, sonst Doppelklick)
  115.      * [L11] Fenster auch links aus Bildschirm schiebbar (sonst nur
  116.        rechts)
  117.  
  118.      GEM-DESKTOP
  119.      - Bearbeitung hinterer Desktopfenster (Schließen, Scrollen, ...)
  120.      * BackDrop Integration
  121.      * Aktivieren und Deaktivieren von Fenstern deselektiert im
  122.        2.x/3.x Desktop nicht mehr die Dateien
  123.      - Das TOS 2.x/3.x Desktop bietet jetzt 8 statt 7 Fenstern, das
  124.        von TOS 1.x wie bisher 4.
  125.      * Beim Scrollen in hinteren Fenster wird jetzt versucht soviel
  126.        wie möglich zu kopieren und nur noch den Rest neu auszugeben.
  127.      * Einfache Implementierung der Reaktion auf die erweiterten
  128.        WM_ARROWED-Nachrichten zum Scrollen.
  129.      
  130.      Fensterverwaltung:
  131.      - [G1] Verwaltung von bis zu 40 Fenstern (statt bisher 8)
  132.      - [L1] Kontrollelemente am Fensterrahmen hinterer Fenster
  133.      - [L2] Minimierung der Anzahl der Elemente eines Fensterrahmens
  134.        (bisher hatte ein Fensterrahmen mit einem Größenelement immer
  135.        sowohl einen horizontalen als auch einen vertikalen Balken)
  136.      - [G8] Breiterer Rahmen für die Sliderelemente auf dem Fensterrahmen
  137.        (sehr umstrittene Option :-)
  138.      * Fensterfarben für TOS 1.x mit WINCOLOR.CPX. Dieses CPX ist aber
  139.        auch für TOS 2.x/3.x dem Original WCOLORS.CPX vorzuziehen (nach
  140.        der unmaßgeblichen Meinung des Autors).
  141.      * Verbessertes Redraw von Fenstern (Neuausgabe von Rahmen und Inhalt)
  142.      * Aktivieren (und Deaktivieren) verändert nicht mehr das
  143.        WF_PREVXYWH-Rechteck eines Fensters. In diesem Rechteck wird
  144.        bei einer Veränderung des Fensters die letzte Position bzw.
  145.        Größe gespeichert.
  146.      * [L3] Aktivieren und Öffnen eines Fenster versenden WM_UNTOPPED, 
  147.        Deaktivieren und Schließen eine WM_ONTOP-Nachricht.
  148.      * Es wird nur noch ein Objektbaum zur Darstellung des Hintergrunds
  149.        benutzt
  150.      * wind_set-Modifikationen (optimierte WF_SLIDE Routine; WF_BOTTOM;
  151.        WF_BEVENT)
  152.      * wind_get-Modifikationen (WF_NEWDESK; WF_BEVENT; WF_BOTTOM;
  153.        WF_OWNER; WF_TOP; WF_COLOR; WF_DCOLOR)
  154.      - Anpassung von wind_calc an den veränderten Rahmenaufbau
  155.      * Komplett neues Modul zur Berechnung der Rechtecklisten.
  156.        Optimiert die Berechnungszeit und die Anzahl der Rechtecke.
  157.      * [L4] Optimiertes Redraw beim Aktivieren eines Fensters:
  158.        Beim Aktivieren bzw. Schließen eines Fensters werden möglichst
  159.        nur noch die vorher verdeckten Teile des neuen obersten Fensters
  160.        ausgegeben. Leider führt dies in einigen Programmen zu unvoll-
  161.        ständigen Ausgaben.
  162.      * [L5] Optimiertes Redraw beim Verschieben eines Fensters:
  163.        Ist diese Schalter eingeschaltet werden alle sichtbaren Teilen
  164.        des Fensters kopiert und nur für den Rest Redraw-Nachrichten
  165.        versandt (eventuell müssen die Nachrichten jedoch Verschmolzen
  166.        werden, dadurch werden auch kopierte Bereiche neu ausgegeben)
  167.      * [L6] Optimiertes Redraw beim Vergrößern eines Fensters:
  168.        Es werden nur noch Redraws für die vorher unsichtbaren Bereiche
  169.        des Fensters versandt
  170.      * [L7] Optimiertes Verschmelzen von Redraw-Nachrichten:
  171.        Die bisherigen TOS-Versionen speicherten max. eine Redraw-
  172.        Nachricht pro Fenster im Nachrichtenpuffer der Applikation.
  173.        Mußte ein zweite gespeichert werden, wurde das Redraw-Rechteck
  174.        der ersten durch das umfassende Rechteck beider Nachrichten
  175.        ersetzt. MultiTOS 1.0 verschmilzt hingegen Redraw-Nachrichten
  176.        nicht mehr. Beide Lösungen haben Nachteile. Unter WINX ist
  177.        ein Kompromiß möglich. Redraws werden nur noch verschmolzen,
  178.        wenn die Gesamtfläche des umfassenden Rechtecks nicht größer
  179.        als 25% der Summe der Einzelflächen ist. Maximal können zwei
  180.        Redraws pro Fenster im Nachrichtenpuffer sein.
  181.        (nur für TOS Versionen > 1.x)
  182.      * [L9] Die Scrollpfeile eines Fensters können getrennt oder
  183.        zusammengefaßt in der rechten unteren Ecke des Fensterrahmens
  184.        dargestellt werden
  185.      * Es ist jetzt möglich die wind_update()-Kontrolle nur noch zu
  186.        übernehmen, falls kein anderes Programm die Kontrolle besitzt.
  187.        Außerdem wird wind_update() auf Unterlauf geprüft.
  188.      * [G11] Fensterrahmen im 3D-Look (ab GEM 3.31)
  189.      * [L10] Scrollboxen als Ergänzung der Scrollpfeile
  190.      * [L12] Fehlerhafte Fensterposition und -groesse korrigieren
  191.      - Anpassung der anderen Routinen an die größeren Fensterstrukturen
  192.  
  193.      Sonstiges:
  194.      - Vergrößerung des Nachrichtenpuffers einer Applikation von
  195.        8 auf 40 Standard-Nachrichten (damit können Verklemmungen
  196.        des GEM vermieden werden)
  197.      - Die Mausklickwartezeit wurde fest auf Doppelklick eingestellt.
  198.        In den bisherigen GEM-Versionen ist die Zeitspanne zwischen dem
  199.        Mausklick des Anwenders und der Verarbeitung durch den SCRENMGR
  200.        nicht einheitlich. Konkret hängt die Zeitspanne davon ab, ob
  201.        mindestens eine Applikation bzw. ein Accessory auf einen Doppel-
  202.        klick wartet oder nicht. Die Einstellung auf Doppelklick ist
  203.        notwendig, da sonst, beim Klick auf das Titelelement eines
  204.        hinteren Fensters, nicht immer zwischen Verschieben und
  205.        Aktivieren unterschieden werden kann.
  206.      * Bei der Benutzung des Timers meldet evnt_multi() kein Mausknopf-
  207.        bzw. Rechteckereignis mehr, solange ein anderes Programm oder der
  208.        SCRENMGR die Mauskontrolle hat (dies konnte z.B. passieren,
  209.        während man ein Fenster verschob).
  210.      * Unterstützung des WF_BEVENT Flags bei der Zuordnung der Button-
  211.        ereignisse an die Applikationen
  212.      * TOS 1.x: Die dynamisch angeforderten Strukturen zur Verwaltung
  213.        von Accessories werden jetzt (wie in den neueren TOS Versionen)
  214.        explizit gelöscht. Damit wird verhindert, daß es zu Problemen
  215.        mit AUTO-Ordner Programmen kommt, die den selben Speicher vorher
  216.        bereits einmal belegt hatten.
  217.      * [G12] Der Musterbezugspunkt von GEM-Objekten wurde auf die
  218.        linke obere Ecke des Objekts gesetzt.
  219.      * Der Name der aktiven Applikation wird jetzt auch in TOS 1.00
  220.        und 1.02 vor jedem Aufruf des integrierten Desktops zurückgesetzt.
  221.      * [L8] Schaltet man diesen Schalter an, meldet WINX Aufrufe von
  222.        Fensterfunktion mit fehlerhaften Parametern über ein Alert.
  223.        Diese Option ist vorallem für Entwickler gedacht.
  224.      * [G13] Beim Starten eines Programms B aus dem laufenden Programm
  225.        A wird der Name, den GEM der aktiven Applikation zuordnet, auf
  226.        B gesetzt. Terminiert B wird der Name auf A zurückgesetzt.
  227.        Damit arbeitet appl_find() jetzt auch im obigen Fall korrekt.
  228.        (bisher wurde A statt B gefunden).
  229.      * wind_new ordnet Mausklicks jetzt der Hauptapplikation zu
  230.        (statt dem SCRENMGR) (TOS >= 2.x/3.x). Damit wird verhindert,
  231.        daß nach Beendigung eines Programms der erste Klick auf ein
  232.        Objekt des Desktops verloren geht.
  233.      * In den Code von wind_new() wurde ein wind_update( BEG_UPDATE)
  234.        eingefügt. wind_new() wird vom Desktop benutzt um nach der
  235.        Beendigung von Programmen den Bildschirm aufzuräumen. Durch das
  236.        Einfügen von wind_update() sind ACCs jetzt besser davor ge-
  237.        schützt, daß der Aufräumvorgang zu einem ungünstigen Zeitpunkt
  238.        stattfindet.
  239.      * Ein Fehler des Taskumschalters von GEM 3.xx wurde gefixt, damit
  240.        sollte jetzt, während das Alert des CEH (Critical Error Handler)
  241.        sichtbar ist, kein Taskwechsel mehr stattfinden.
  242.      * appl_getinfo()
  243.  
  244. INSTALLATION     
  245.      Um all diese Änderungen vornehmen zu können, muß WINX tief in den
  246.      Programmcode des GEM eingreifen. Der Eingriff kann auf dreierlei
  247.      Weise erfolgen:
  248.  
  249.      a) Patchen einer Kopie des GEM im RAM
  250.           Man installiert beim Booten des Rechners eine Kopie des GEM
  251.           im RAM, die dann vor dem Start des GEM durch WINX modifiziert
  252.           wird. Dies ist mit einem der folgenden Programme möglich:
  253.  
  254.           ROMRAM    TOS Beschleuniger für TTs;
  255.                     Mailbox Maus HH2 (Freeware);
  256.                     Alexander Herzlinger; >256 KB; PTOS
  257.           VRAM030   Virtuelle Speicherverwaltung für TT und FALCON030;
  258.                     OverScan, D-12277 Berlin;
  259.                     Alexander Herzlinger; >256 KB; VRAM
  260.           ROMSPEED  TOS Beschleuniger für TTs (Bestandteil von OUTSIDE
  261.                     einer virtuelle Speicherverwaltung für TTs);
  262.                     MAXON Verlag; D-65734 Eschborn;
  263.                     Uwe Seimet; >256 KB; USRS
  264.           GEMRAM    GEM im RAM installieren (ST,TT,FALCON);
  265.                     Mailbox Maus MTK (Freeware);
  266.                     Martin Osieka; 80-200 KB; MOGR
  267.           (Beschreibung; Bezugsquelle; Autor; Speicherbedarf; Cookie)
  268.  
  269.           WINX gehört in diesem Fall nach diesen Programmen in den
  270.           Ordner \AUTO auf dem Bootlaufwerk und wird somit beim Booten
  271.           automatisch gestartet.
  272.           Die Programme werden nur erkannt, wenn sie das entsprechende
  273.           Cookie im Cookiejar eingetragen haben.
  274.  
  275.      b) Patchen einer TOS-Datei
  276.           Man benutzt WINX um sich eine modifizierte Kopie des TOS zu 
  277.           erstellen, die anschließend auf Eproms gebrannt und in den
  278.           Rechner eingesetzt wird. Hierzu ruft man WINX vom Desktop
  279.           auf und erhält dann die Möglichkeit, das TOS aus den ROMs 
  280.           oder einer bereits bestehenden TOS-Datei zu laden. Nachdem
  281.           WINX das TOS modifiziert hat, kann es abgespeichert werden.
  282.  
  283.      c) Patchen einzelner GEM-Routinen      
  284.           Auf Rechnern mit Original-TOS 1.00, 1.02 bzw. 1.04 kann man
  285.           WINX ohne RAM-Kopie des GEM benutzen. Auch in diesem Fall
  286.           gehört WINX in den AUTO-Ordner. Beim Start des GEM werden
  287.           dann nur die von WINX modifizierten Routinen ins RAM kopiert.
  288.           Diese Methode ist bei späteren TOS-Versionen nicht möglich.
  289.           Die kopierten GEM-Routinen belegen ca. 16 KByte.
  290.  
  291.           Auf Rechnern mit Original-TOS 1.00, 1.02 bzw. 1.04 kann man
  292.           WINX ohne RAM-Kopie des GEM benutzen. Auch in diesem Fall
  293.           gehört WINX in den AUTO-Ordner. Beim Start von WINX werden
  294.           dann nur die Funktionen des GEM ins RAM kopiert, die von WINX
  295.           modifiziert werden. Diese Methode ist in den neueren TOS-
  296.           Versionen nicht anwendbar. Die kopierten GEM-Routinen belegen
  297.           ca. 16 KByte.
  298.  
  299.      Zusätzlich zum Speicher für eine Kopie des GEM bzw. der kopierten
  300.      GEM-Funktionen fordert WINX beim Start des GEM weiteren Speicher
  301.      für die Fensterstrukturen an (ca. 24 KByte).
  302.  
  303.      WINX wurde an die folgenden offiziellen GEM Versionen angepasst:
  304.      
  305.         GEM(AES)   TOS
  306.           1.20     GER 1.00/1.02
  307.           1.40     GER 1.04/1.06/1.62
  308.           3.00     GER 3.01
  309.           3.10     GER/UK 2.05/3.05
  310.           3.20     GER/UK 2.06/3.06
  311.           3.31     4.01
  312.           3.40     4.02-4.04
  313.  
  314.      WINX identifiziert das GEM über die Länge des GEM-TEXT-Segments.
  315.      GEM Versionen anderer Länder werden bei identischer Länge akzeptiert.
  316.  
  317. KONFIGURATION
  318.      Die Änderungen, die WINX am GEM vornimmt, können weitgehend über
  319.      'Schalter' ein- bzw. ausgeschaltet werden. Die Einstellung der
  320.      Schalter erfolgt momentan über die Konfigurationsdatei WINX.INF,
  321.      die sich im AUTO-Ordner befinden muß. Es handelt sich um eine
  322.      Textdatei, die mit einem Editor verändert werden kann.
  323.      
  324.      Ab der WINX-Version 2.1 wird zwischen globalen und lokalen
  325.      Schaltern unterschieden, wobei die globalen Schalter für alle
  326.      Applikationen gelten und die lokalen für jede Applikation
  327.      individuell eingestellt werden können. Alles weitere kann man
  328.      WINX.INF entnehmen.
  329.      
  330.      In Zukunft soll WINX.INF über WINX.CPX manipuliert werden können.
  331.      Momentan fehlt noch der zündende Funke, wie man das für den
  332.      Anwender am praktikabelsten aufzieht.
  333.      
  334.      Die Wiederholraten von Schließelement, Maximalgröße-Element
  335.      und Scrollpfeilen können über WINX.CPX eingestellt werden.
  336.  
  337.      Benutzt man WINX-modifizierte ROMs, dann braucht man WINXCOOK.PRG
  338.      im Autoordner um Programme individuell konfigurieren zu können.
  339.      WINXCOOK lädt beim Start die Konfigurationsdatei WINX.INF, trägt
  340.      den WINX-Cookie in den Cookie Jar ein und stellt über diesen eine
  341.      Zugriffsfunktion auf die Konfigurationswerte bereit. Verzichtet
  342.      man auf WINXCOOK, dann benutzt WINX Defaultwerte.
  343.                
  344. TERMINATE AND KEEP RESIDENT
  345.      WINX ist ein TKR-Programm und besteht aus einem TKR-Lader in den
  346.      das TKR-Modul 'WINX.TKR' eingefügt ist. Das TKR-Konzept sieht
  347.      vor, daß Programme (TKR-Module), die residenten Speicher benötigen,
  348.      diesen von einem anderen Programm (dem TKR-Lader) bereitgestellt
  349.      bekommen. Dadurch kann sich das TKR-Modul auf seine eigentliche
  350.      Aufgabe konzentrieren und belegt nur minimal Speicher. Der hier
  351.      benutzte TKR-Lader kann beliebig viele TKR-Module und andere
  352.      Programme enthalten. Ist beim Start des TKR-Laders eine SHIFT-
  353.      Taste gedrückt, wird für jedes TKR-Modul nachgefragt, ob es
  354.      gestartet werden soll. Der TKR-Lader gibt bei Programmende die
  355.      Gesamtgröße des resident gehaltenen Speichers aus.
  356.      
  357. BEKANNTE PROBLEME
  358.      - Einige ältere Programme verwenden die Fensterkennung zur
  359.        Indizierung eigener Tabellen, dies führt in der Regel bei
  360.        vielen offenen Fenstern zum Absturz.
  361.      - Einige Programme beschränken ohne zwingenden Grund die Anzahl
  362.        ihrer Fenster (z.B. das Original-Desktop).
  363.      - WINX Versionen vor 2.0 stürzten ab, wenn Programme die fehler-
  364.        hafte Fensterkennung -1 (NOWINDOW) benutzten. Dies wird jetzt
  365.        abgefangen.
  366.      - TOS14FIX darf nur nach WINX aufgerufen werden.
  367.      - TEMPLMON Versionen < 2.0 müssen vor WINX aufgerufen werden.
  368.      - Viele Programme kommen mit der Bearbeitung von hinteren Fenstern
  369.        nicht zurecht, vorallem das Scrollen in teilweise verdeckten
  370.        Fenstern bereitet Probleme.
  371.      - MultiGEM erlaubt nur 10 Fenster pro Applikation.
  372.      - WINX 2.1 wird erst ab MultiGEM 2.00 (Copyrightjahr 1993!)
  373.        unterstützt (zum Update siehe Hinweise im MultiGEM Handbuch)
  374.      - Da MultiGEM in der obigen Version noch die Fensterkennungen
  375.        auf eigene Werte abbildet, liefern einige neue wind_get()-
  376.        Modi falsche Kennungen:
  377.          WF_OWNER, WF_BOTTOM, WF_TOP (für owner und belowwin)
  378.      - BackDrop funktioniert nur vollständig, wenn es von Programmen
  379.        unterstützt wird
  380.      - Einige Graphikkarten (bzw. deren VDI-Treiber) haben offenbar
  381.        Probleme mit userdefined patterns. In diesem Fall sollte man
  382.        den Musterbezugspunktschalter auf 0/0 setzen und den Hersteller
  383.        der Karte bzw. des VDI-Treibers informieren.
  384.      - Ist der Musterbezugspunkschalter ausgeschaltet, werden Objekte
  385.        des Fensterrahmens immer komplett ausgegeben. Außerdem kann es
  386.        dadurch für verschiedene Programme notwendig werden die Redraw-
  387.        optimierungen auszuschalten (z.B. für XCONTROL).
  388.      - Hat ein Programm sehr viele Fenster geöffnet (>20) kann es unter
  389.        Umständen zu Problemen kommen, wenn die Optimierung der Ver-
  390.        schmelzung der Redraw-Nachrichten eingeschaltet ist [L7] und
  391.        der Bildschirm komplett neu ausgegeben wird.
  392.      - Beim Beenden von Applikationen schließt GEM die Fenster von
  393.        Accessories selbständig. In selten Fällen kann es vorkommen,
  394.        daß die Accessories nicht rechtzeitig vom GEM über diesen
  395.        Vorgang informiert werden und sie auf das nicht mehr existente
  396.        Fenster zugreifen. Ist jetzt die Fehlermeldungsanzeige von
  397.        WINX eingeschaltet, wird der fehlerhafte Zugriff gemeldet.
  398.        Dies ist ein konzeptionelles Problem des GEM.
  399.        Abhilfe: Anzeige ausschalten.
  400.      - Das Einstellen der Verzögerungswerte funktioniert erst ab TOS 1.04,
  401.        da das GEM vorher keinen entsprechenden Zähler bereitstellt.
  402.      - Die Fensterverwaltung des GEMs 3.40 initialisiert den Namen und
  403.        die Infozeile des Fensters auf Defaultwerte. WINX tut dies nicht.
  404.      - Durch die Veränderungen im SCRENMGR kann der Anwender Fenster jetzt
  405.        über den sichtbaren Bereich hinaus vergrößern. Programme, die von
  406.        einer maximale Fenstergröße ausgehen und diese nicht überprüfen,
  407.        können daher Probleme bereiten.
  408.  
  409. HINWEISE FÜR ENTWICKLER
  410.      siehe Datei WINXPROG.GER
  411.  
  412. VEKTOREN, COOKIES, ENVIRONMENT, ...
  413.      Im Fall c) wird der LineF-Vektor verbogen (XBRA-Kennung AESF).
  414.  
  415.      WINX (bzw. WINXCOOK, das Zusatzprogramm für ein WINX modifiziertes
  416.      ROM) erzeugt ab der Version 2.1 den Cookiejareintrag 'WINX'.
  417.      Dieser Cookie enthält als Wert eine Zeiger auf einen Funktion
  418.      über die bestimmte Eigenschaften der akt. WINX-Version erfragt
  419.      werden können.
  420.  
  421.      Ist der WINX-Cookie installiert, wird beim Start des GEM der
  422.      GEMDOS-Vektor verbogen (XBRA-Kennung WINX).
  423.  
  424.      GEMRAM bestimmt die Ausgabesprache zunächst aus den OSHEADER,
  425.      dann über den _AKP-Cookie (falls er existiert). Beim Start aus
  426.      dem Desktop wird zusätzlich die Environmentvariable "AE_LANG"
  427.      ausgewertet. Falls als Sprache etwas anderes als Deutsch
  428.      ermittelt wird, benutzt GEMRAM Englisch. Das Datumsformat wird
  429.      aus dem _IDT-Cookie bestimmt, falls dieser nicht existiert über
  430.      die Ausgabesprache.
  431.  
  432. COPYRIGHT
  433.      Autor:      (\/) Martin Osieka
  434.      Anschrift:  Martin Osieka, Erbacherstr. 2, 
  435.                  D-64283 Darmstadt, Bundesrepublik Deutschland
  436.      Internet:   Martin_Osieka@mtk.maus.de
  437.  
  438.      Schriftlichen Anfragen bitte immer einen frankierten und
  439.      adressierten Rückumschlag beilegen.
  440.  
  441.      Das Programm WINX.PRG darf auf beliebige Art und Weise weiter-
  442.      verbreitet werden, solange alle Dateien des Programmpakets
  443.      beiliegen. Zum Paket gehören:
  444.  
  445.      WINX.PRG, WINX.CPX      Patchprogramm und Konfigurationsmodul
  446.      WINXCOOK.PRG            Zusatzprogramm für WINX im ROM
  447.      WINX.INF                Datei mit Konfigurationsinformationen
  448.      WINX.GER, WINXPROG.GER  Dokumentation (deutsch)
  449.      WINX.ENG, WINXPROG.ENG  Dokumentation (englisch)
  450.      WINX.UPL                Upload-Beschreibung (deutsch)
  451.  
  452.      Die Benutzung des Programms erfolgt auf eigene Gefahr.
  453.  
  454. SIEHE AUCH
  455.      Dokumentation von GEMRAM, ARROWFIX und WINCOLOR
  456.