,--------------------------------------------------------------------.
|                                                        24.6.1995   |
| CHANGES.TXT                                                        |
| Dokumentation zu nderungen des no|Desktop V3.04                   |
|                                                                    |
| Autoren:                                                           |
|    Ralph Mertens                                                   |
|    Andreas Fahrig                                                  |
|    Christian Stamm                                                 |
|                                                                    |
`--------------------------------------------------------------------'

in Arbeit:
- Vektorfont-Untersttzung
- Kurznotiz auf den Desktop ablegen
- Bilder in den Desktophintergrund legen

in Diskussion:
- Singletaskmodus unter MagiC


----------------------------------------------------------------------
V 3.04:
- Behandlung des Closer-PopUp leicht modifiziert

- Probleme bei Textprogrammen unter MagiC behoben


----------------------------------------------------------------------
V 3.03:

- Mglichkeit der Verwendung von GEM-Fenstern, wenn diese den Minimal-
  anforderungen des no|Systems entsprechen. Genaueres hierzu ist in
  der no|System-Dokumentation nachzulesen.
  Fr Alle, die es eilig haben:
  NOCONFIG.PRG starten, das erweiterte Men aktivieren und unter dem
  Menpunkt 'Fenster...Allgemeines' den Button 'Gem-Fenster (wenn mglich)'
  anwhlen. Dann Einstellung sichern und den no|Desktop neu starten.
  Wenn no|Desktop GEM-Fenster verwendet, so erfolgt die Aktivierung des
  Fenster-PopUps ber einen Mausklick auf die Info-Zeile des Fensters.
  Als Konsequenz bedeutet das natrlich, da in diesem Falle nun alle
  no|Desktop-Fenster eine Info-Zeile besitzen.


- erweiterte Behandlung des Schlie-Knopfs bei no|Fenstern:
  - Ein Doppelklick schliet in jedem Fall das Fenster.
  - wird bei LS- und Archiv-Fenstern der Schlie-Knopf gedrckt
    gehalten, so erscheint, wenn sinnvoll, ein PopUp aller Vater-
    verzeichnisse. Wird einer dieser ausgewhlt, so erfolgt ein
    'cd' in diesen Pfad.


- Ein-/Ausgabeumlenkung von Textprogrammen in eigene Fenster
  unter MagiC.


- Umstrukturierung des Variablen-Systems:
  Alle Variablen-Indizierungen beginnen nun mit 0 ! Beispiel:
    > set i = ( a b c d )
    > echo %i[1]
    b

  WICHTIG!! - Falls jemand in eigenen Scripten oder einer eigenen
              Objektdefinitionsdatei indizierte Variablen verwendet hat,
              mssen diese Stellen AUF JEDEN FALL an die neue
              Indizierung angepat werden!


- neues Kommando shift
    shift <Variablenname>

    Das shift-Kommando verschiebt die Argumente einer indizierten Variablen
    um eine Stelle nach links und entfernt das erste Argument.
    Es entspricht der Zeile
      set <Variablenname> = ( $<Variablenname>[1-] )
    Beispiel:
      set i = ( 1 2 3 4 5 )
      shift i
      echo $i -> liefert '( 2 3 4 5 )'

    'shift i' entspricht hier 'set i = ( $i[1-] )'

    Achtung!
    Wird das shift-Kommando in Skripten mit der Variablen '$argv',
    welche die dem Skript bergebenen Parameter enthlt, verwendet,
    so mu man sich im klaren sein, da nach dem ersten 'shift argv',
    das erste Argument '$argv[0]' berschrieben wird! Im ersten
    Argument steht der Name der Skriptdatei.


- Kommando-Expansion
    Prinzip:
    Wird einer Variablen ein Ausdruck bergeben, der durch
    geschweifte Klammern eingeschlossen ist, so wird bei der
    Variablenexpansion der Ausdruck implizit Kommando-expandiert.
    Beispiel:
      set i = ( { DATE.TTP } )  <-- Variable i erhlt als Inhalt
                                    die Ausgabe von DATE.TTP:
                                    z.B.: ( Fri Jun 2 15:59:18 1995 )
      echo "$i[3]"              <-- gibt die Uhrzeit aus
      echo "$i[2] $i[1] $i[4]"  <-- gibt das Datum aus: 2 Jun 1995

    Achtung!
    Die internen Puffer fr die Expansion sind begrenzt! Deshalb
    kann es bei der Evaluierung recht schnell zu der Fehlermeldung
    'Ausdruck ist zu komplex' kommen. 


- Umstrukturierung des WCON-Systems:
  Es existiert nun eine feste Zuordnung zwischen den einzelnen WCON-
  Fenstern und den entsprechenden Spezial-Features:
    WCON0 - WSH
    WCON1 - WAUX
    WCON2 - WTALK
  Dadurch bedingt haben sich die Wcon-Kontroll-Variablen ebenso
  gendert:
  - wauxwin und wtalkwin gibt es nicht mehr.
  - Hinzugekommen sind dafr die Schaltervariablen wconsh, wconaux und
    wcontalk, welche durch ihren Zustand angeben, ob das entsprechende
    Feature aktiv ist oder nicht. 
  - Tastatureingaben werden nun zuerst an den entsprechenden Objekt-
    typen weitergereicht. Erst wenn sich dort keine Zuordnung finden
    lie, erfolgt die 'normale' Behandlung. Dadurch bedingt haben die
    ersten drei WCON-Fenster nun eigene Objekttypen (WSH, WAUX und
    WTALK) erhalten.
  - nderungen in der Konfiguration:
    Das Umschalten zwischen den entsprechenden Modi erfolgt in der
    aktuellen Konfiguration mittels <Shift>-<Esc>.


- Draggen von Dateien und Ordnern auf das WSH-Fenster mglich


- neues Kommando autoedit :
    autoedit [-d] <Text>
  Mit diesem Kommando ist es mglich, dem Zeileneditor Text zu
  bergeben. Verwendet wird dieses Kommando beim Draggen in das
  WSH-Fenster. Der Parameter '-d' bewirkt ein vorheriges Lschen der
  Eingabezeile.


- neues Kommando poptree :
    poptree <Suchtiefe> <Pfad>
  Mit diesem Kommando ffnet man ein PopUp in dem alle Ordner ab
  <Pfad> bis zur Tiefe <Suchtiefe> enthalten sind. Nach der Auswahl
  eines Ordners erhlt man in der Variablen $LINE den vollstndigen
  Pfad dieses Ordners. Mit diesem Kommando ist es nun z.B. mglich,
  direkt in einen bestimmten Unterordner zu springen:
     Auszug aus NODESK.NDQ:

     poptree 99 &N; wls_cd $LINE

  In unserer Konfiguration wird dieses Kommando bei der Tastenkombination
  [Control][D] (PopUp-Eintrag 'Gehe zu ...') aufgerufen.


- Neue Variable zur Definition der Maximalanzahl von Masken-Knpfen
  in der Info-Zeile von LS- und Archiv-Fenstern:
    maxmaskbuts
  Diese Variable darf Werte zwischen 0 und 16 annehmen.


- Neue Variablen zur Definition der Kopf- und Info-Zeile in LS- und
  Archiv-Fenstern:
    wlshead  / warchead      Definition der Kopfzeile
    wlsinfo0 / warcinfo0     Infozeile, wenn nichts selektiert
    wlsinfo1 / warcinfo1     Infozeile, wenn genau eine Datei selektiert
    wlsinfon / warcinfon     Infozeile, wenn Dateien selektiert

  Als Wert wird einer der Variablen ein maximal 60 Zeichen langer Text
  bergeben. Zur Ausgabe der variablen Informationen stehen folgende
  Krzel zur Verfgung:
    %%     ein Prozentzeichen
    %D     das Laufwerk, indem sich der angezeigte Ordner, bzw. das
           Archiv befindet
    %N     WLS:  der geffnete Ordnername
           WARC: der Name des Archivs
    %P     WLS:  der geffnete Pfad
           WARC: der Name des Archivs inkl. Pfad
    %O     WLS:  der geffnete Pfad ohne Laufwerk
           WARC: der Unterordner innerhalb des Archivs
    %\     ein '\', welches jedoch nur ausgegeben wird, wenn das
           zuletzt ausgegeben kein '\' war
    %S     die aktuelle Sortierung
    %X     die aktuell gewhlte Datei-Maske (z.B. *.TXT)
    %C     Anzahl der gezeigten Dateien und Ordner
    %c     Anzahl der ausgewhlten Dateien und Ordner
    %Z     Speicherverbrauch der gezeigten Dateien und Ordner
    %z     Speicherverbrauch der ausgewhlten Dateien und Ordner
  nur fr Archivfenster:
    %Z     gepackter Speicherverbrauch der gezeigten Dateien und Ordner
    %z     gepackter Speicherverbrauch der ausgewhlten Dateien und
           Ordner
  nur sinnvoll fr wlsinfo1 und warcinfo1:
    %n     Name der selektierten Datei
    %d     Datum der selektierten Datei (z.B. 25.10.95)
    %t     Zeit der selektierten Datei (z.B. 12:03:44)
    %a     Attribute der selektierten Datei.

   
- Neue LS- und Archiv-Fenster-Option -h<Kopfzeile>
    Mittels dieser Option kann man einem bestimmten LS- oder Archiv-
    Fenster eine eigene Kopfzeile geben. Das Format ist identisch mit
    den Werten fr die Variablen wlshead bzw. warchead.


- Datei-Cursor-Fehler bei Darstellungswechsel behoben


- diverse interne BUGs behoben


----------------------------------------------------------------------
V 3.02:

- Button fr Blitter auf Falcon nicht mehr disabled (bei NVDI)

- AV_START wurde in VA_START umbenannt.

- neues Kommando get_cookie :
    get_cookie [-X|-D] <Cookie>
  Mittels dieses Kommandos kann man den Wert eines Cookies ermitteln. Der
  Wert wird, wenn der Cookie existiert, in der Variablen $LINE abgelegt.
  Der Wert kann in zwei verschiedenen Formaten erstellt werden:
    -D (default)   Der Wert ist eine Dezimalzahl
    -X             Der Wert ist eine Hexadezimalzahl (immer 8 Ziffern)
  Wenn der angegebene Cookie nicht existert, gibt 'get_cookie' eine 1
  zurck, ansonsten 0.

- '-c' - Expression:
  Es ist nun mglich, mittels der Expression '-c COOKIE-ID' zu ermitteln,
  ob ein bestimmter Cookie existiert. Beispiel:

    if (-c 'MagC') then
      set PATH = 'C:\MAGC\;'$PATH
    endif

- '-p' - Expression:
  Es ist nun mglich, mittels der Expression '-p APP_NAME' zu ermitteln,
  ob sich ein bestimmter Prozess im Rechner befindet. Beispiel:

  EDIT.NDS:

    if (-p "EVEREST") then
      sendmsg -A"EVEREST" -MVA_START "T$1"
    else
      C:\BIN\EVEREST.APP@S $1
    endif

  Hinweis:
    Diese VA_START - Variante ist fr all die Applikationen sinnvoll, die
    zwar die VA_START-Message verstehen, sich aber nicht korrekt bei dem
    Desktop mit dieser Fhigkeit anmelden.

- Absturz in LS-Fenstern bei 'Anzeige nur mit Attributen' behoben

- Starten von Programmen unter MagiC verndert

- Starten von Programmen unter Falcon verndert

- Ausgabegeschwindigkeit in WCON-Fenstern deutlich erhht

- neue Variable 'wconscroll':
  Mittels dieser Variablen ist es nun mglich, anzugeben, um wieviele
  Zeilen ein WCON-Fenster auf einmal Scrollen soll. Wenn die Variable
  nicht gesetzt ist, so entspricht dies dem Gleichen, wie
    set wconscroll = 1
  Ist 'wconscroll' = 0, dann wird um jeweils die halbe Fensterhhe
  gescrollt. So lt sich die Textausgabegeschwindigkeit um ein
  Vielfaches erhhen.
  Der Inhalt dieser Variablen kann im Optionen-Dialog fr Textfenster
  (Men 'Optionen ... Standards setzen fr ... Text-Ausgaben)
  eingestellt werden.

- Neue Steuerbefehle fr *.NDQ-Files:
  Um die bersichtlichkeit der NDQ-Dateien zu verbessern, existiert nun
  die Mglichkeit, eine NDQ aufzusplitten. In der eigentlichen NDQ-Datei
  kann man jetzt auerhalb der Objekte die Anweisung
    !i <Include-Datei>          z.B. !i INC\*.NQI
  angeben. Diese Anweisung ist NICHT verschachtelt zu verwenden. Es ist
  auch mglich, als Include-Datei eine Maske anzugeben (z.B. *.NQI),
  wodurch alle Dateien, auf die die Maske passt, eingebunden werden.
  Um in Include-Dateien die Mglichkeit zu haben, spezielle
  Drag-Kommandos fr andere Objekte vorzudefinieren, gibt es nun den
  Steuerbefehl
    !d <Objektname>
     <Drag-Definitionen>
    !.
  Die so definierten Kommandos werden VOR den im Objekt stehenden
  Drag-Definitionen in das Objekt eingebunden.

- neue Archiv-treiber fr *.LZH, *.ARC und *.ZIP

- automatisches VA_START bei sich richtig anmeldenden Prozessen
  funktioniert jetzt

- diverse Fehler aus der Doku entfernt

- neues Kommando wls_find (warc_find) :
    wls_find [-N<Name>|-W<FensterNummer>] [A|D|F][N|K]
  Mittels dieses Kommandos erhlt man eine Auswahlbox der Ordner/Dateien
  eines LS-Fensters, indem man mittels inkrementeller Suche arbeiten kann.
  Bei erfolgreicher Auswahl erhlt man in der Variablen $LINE den ausge-
  whlten Namen bzw. seine Position im Fenster. Die genaue Beschreibung
  der Parameter steht in COMMANDS.TXT.

- neue Parameter fr w_act:
  Es ist nun mglich, bei einigen Parametern die Position, auf die sich
  die Aktion beziehen soll, mit anzugeben. Desweiteren sind die Parameter
  'E[-+^*]' und 'K<pos>' hinzugekommen. Die genaue Beschreibung der
  Parameter steht in COMMANDS.TXT.

- Dialogfhrung fr KOBOLD-Aufruf als Programm gendert

- die interne Variable 'cpsmallmem' wird nicht mehr beim
  'Desktop speichern' gesichert

- Neuer Parameter -f fr addic:
  Bei Angabe dieses Parameters ist ein Verschieben des Icons nicht
  mehr mglich.

- lokale Iconzuordnungen:
  Es ist nun mglich, Iconzuordnungen lokal (z.B. fr DESK oder
  WLS) zu definieren. So kann man nun, je nach Umgebung, unterschiedliche
  Icons fr eine Datei bzw. einen Ordner bestimmen.

- neuer Parameter -q fr Kommando 'addalldrv':
  Bei Angabe dieses Parameters erfolgt keine Abfrage bzgl. des Lschens
  nicht existierender Laufwerke

- Das Problem der 'springenden Fenster' ist behoben

- Noteinstieg fr no|Desktop:
  Wenn man whrend der Startphase die Tasten <ALT> und <CTRL> drckt,
  wird nicht DESK.NDS ausgefhrt, sondern man erhlt einen Fileselektor,
  in dem man die Desktop-Datei auswhlen kann. Bricht man diesen Dialog
  ab, so wird man nach der Icondefinitions- und Objektdefinitions-Datei
  gefragt. Nach der Angabe dieser beiden Dateien wird folgendes Pseudo-
  Init-Script ausgefhrt:
    newdesk 20 <IconFile> <ObjDefFile> DFLT STD
    addalldrv -q

- Kommando sleep versteht jetzt auch 1/10 Sekunden:
  Es ist nun mglich, sleep mit einem Dezimalwert mit einer Nachkomma-
  stelle aufzurufen, z.B:
    sleep .5      wartet 0.5 Sekunden
    sleep 1.6     wartet 1.6 Sekunden

- neue Modifier:
    :U            Klein- -> Grobuchstaben
    :L            Gro-  -> Kleinbuchstaben
    :/            \      -> /  ACHTUNG: dieser Modifier sollte immer
                               als letzter verwendet werden:
                               "ab\cd\ef.gh:h:/"  -> "ab/cd"
                               "ab\cd\ef.gh:/:h"  -> ""

- neues Kommando reinit_drv:
    reinit_drv [{Laufwerk}]
  Mittels dieses Kommandos ist es mglich, dem no|Desktop mitzuteilen,
  da sich die Informationen eines Laufwerks verndert haben.

- neue Variable 'multitask':
  Ist diese Variable vorhanden, so befindet man sich unter einem
  preemptiven Multitasking-Betriebssystem.


nderungen in den Konfigurationsdateien
=======================================

- Es gibt einen neuen Konfigbereich (Ordner CNF.SML\)
  Diese Konfiguration ist dazu gedacht, mglichst wenig Speicher zu
  verbrauchen und verwendet deshalb auch keine Farbicons und keine
  eigene Menleiste. Desweiteren existiert nur ein WCON-Fenster,
  nmlich das wsh-Fenster, in dem auch der CLI luft.
  Insgesamt verbraucht diese Konfiguration ber 200 KByte weniger als
  die Konfiguration im Ordner CNF.NO2\.

- Es existiert nur noch eine Objekt-Definition fr beide
  Standard-Konfigurationen (CNF\ und CNF.NO2\). Die Quell-Dateien
  (NODESK.NDQ und *.NQI) zu den NODESK.NDD Dateien befinden sich im
  Ordner 'SRC\NDQ\' bzw. 'SRC\NDQ\NDQ.INC'.
  Alle Objketdefinitionen, die sich mit den von unseren Archivtreibern
  untersttzen Archivtypen befassen (LHARC, ZIP und ARC), befinden sich
  nun in eigenen Dateien, die ber das neue Feature der Include-Dateien
  fr *.NDQ-Dateien hinzugebunden werden. So befinden sich jetzt nur
  noch die 'Standard-Objekttypen' in der NODESK.NDQ.

- Es gibt ein paar neue aliase fr die Standardanwendungen (ber
  ALED.UTP bzw. den entsprechenden Menpunkt fr die Konfiguration
  der Standard-Applikationen nderbar), die in der NODESK.NDQ verwendet
  werden:
  Aliasname     Bedeutung
  --------------------------------------------------------------------
  wordplus      Wordplus-Textverarbeitung (wird fr *.DOC verwendet)
  lzh_prg       Das LHARC-Archivierprogramm
  zip_prg       Das ZIP-Archivierprogramm
  arc_prg       Das ZIP-Archivierprogramm
  packerlzh     Dieses Alias wird in der Objektdefinitionsdatei fr
                LHARC-Archive bei manipulativen Operationen auf
                *.LZH-Dateien verwendet. packerlzh beinhaltet in
                unserer Vorbelegung den Aufruf des lzh_prg-Aliases
                im WCON1-Fenster mit Schlieen desselben nach
                Ausfhrung der Operation.
  packerzip     analog zu packerlzh
  packerarc     analog zu packerlzh

- Die Icon-Resourcedatei im CNF.NO2\ Ordner wurde an die standard-
  Farbpalette des COLORS.CPX angepat, so da es nun nicht mehr
  ntig ist, die Farbbelegung mittels der setcolors-Kommandos in der
  INIT.NDS Scriptdatei zu ndern.


----------------------------------------------------------------------
V 3.01:
- Absturz bei nicht-'schneller Anzeige' in LS-Fenstern behoben
