summaryrefslogtreecommitdiff
path: root/app/gs.dialog/1.2/doc/gs-dialog-5
blob: f2b17cfc35963f327fe0acf7474c370bf7892064 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
#limit (11.0)##pagelength (16.5)##block# 
#start (2.0,0.0)# 
#page (49)# 
#headodd# 
#center#gs-DIALOG#right#% 
 
#end# 
#headeven# 
%#center#gs-DIALOG 
 
#end# 
#center#5 
 
#center#Informationen für Lehrer/Programmierer 
 
 
5.1  "Verschlüsselung" der Dateien auf der Diskette 
 
   Wenn Sie sich die Inhalte der Dateien angesehen haben,
in denen die Programme für #on("b")#gs-DIALOG#off("b")# enthalten sind,
werden Sie festgestellt haben, daß der Code dicht gepackt
ist. Das war notwendig, um die gesamten Programme auf
einer Diskette unterzubringen. 
   Allerdings ist der Code #on("u")#nicht#off("u")# verschlüsselt - nur
dichter gepackt. Auf der gelieferten Diskette befindet
sich eine Datei mit Namen "gs-DIALOG decompress". In die­
ser Datei ist das (einfache) Komprimier- und Dekompri­
mierprogramm enthalten. Insertieren Sie dieses Programm
in einer Task. Anschließend stehen Ihnen zwei Befehle zur
Verfügung: 
 
PROC komprimiere (TEXT CONST dateiname): 
  Die angegebene Datei wird komprimiert; die Datei steht
  anschließend unter gleichem Namen zur Verfügung. 
 
PROC dekomprimiere (TEXT CONST dateiname): 
  Eine zuvor mit 'komprimiere' bearbeitete Datei wird -
  bis auf die Leerzeilen - in den Ursprungszustand über­
  führt. Die Datei steht anschließend wieder unter glei­
  chem Namen zur Verfügung. 
 
   Dieser 'Service' ist vornehmlich für Lehrer gedacht.
So können Programmteile im Unterricht Gegenstand von
Betrachtungen sein; Schüler können nach optimaleren
Algorithmen für Teillösungen suchen - ggf. Anregungen
geben. Sinnvoll ist es, das eigentliche Programm nicht zu
verändern, um die Lauffähigkeit der unter #on("b")#gs-DIALOG#off("b")#
entwickelten Software nicht zu gefährden. 
 
 
5.2  Nutzung der Graphikzeichen auf anderen Rechnern/
Terminals 
 
   Wie schon unter "2.4 Nutzung der 'Semi - Graphik -
Zeichen'" erwähnt, ist #on("b")#gs-DIALOG#off("b")# darauf vorbereitet, für
'IBM - kompatible Rechner' und für Terminals 'Beehive
FT20' die Umrahmungen der Kästen als durchgezogene Li­
nien auszugeben - dadurch gewinnt die Bildschirmdar­
stellung. 
   #on("b")#gs-DIALOG#off("b")# ist aber hinsichtlich der Graphikzeichen
nur für diese Endgeräte vorbereitet und benutzt in allen
anderen Fällen Zeichen des normalen Zeichensatzes. 
   Sie können sich aber, sofern Ihr Rechner/Terminal
über solche Semi - Graphikzeichen verfügt, leicht selbst
eine Anpassung dafür erstellen. Auch darauf ist
#on("b")#gs-DIALOG#off("b")# schon vorbereitet. Keine Angst, versuchen Sie
es ruhig einmal. Sie können nichts falsch machen; denn
sollte es Ihnen nicht gelingen, so können Sie jederzeit
mit dem Befehl 'std graphic char' und einem anschließen­
den <RETURN> die Standardeinstellung wieder vornehmen. 
   Informieren Sie sich in Ihrer Terminal-/Rechner­
beschreibung, welche Codes ausgegeben werden müssen, um
die Grahpikzeichen darzustellen. Folgende Zeichen werden
benötigt: 
 
  Ecke oben links    :          ω         (f) 
  Ecke oben rechts   :          �         (g) 
  Ecke unten links   :          �         (e) 
  Ecke unten rechts  :          �         (h) 
 
  Balken oben        :          �         (n) 
  Balken unten       :          ̂         (o) 
  Balken links       :          ̄         (m) 
  Balken rechts      :          ̃         (l) 
  Kreuz              :          ̗         (i) 
 
  waagerechte Linie  :          ̇         (k) 
  senkrechte  Linie  :          �         (j) 
 
  --------------------------------------------- 
 
  ( Cursor sichtbar        :     ( ESC . 1 )  ) 
  ( Cursor unsichtbar      :     ( ESC . 0 )  ) 
 
 
   #on("b")#gs-DIALOG#off("b")# müssen nun die speziellen Codes Ihres Rech­
ners/Terminals mitgeteilt werden. Dafür stehen die fol­
genden Prozeduren zur Verfügung: 
 
PROC ecke oben links    (TEXT CONST zeichenkette); 
PROC ecke oben rechts   (TEXT CONST zeichenkette); 
PROC ecke unten links   (TEXT CONST zeichenkette); 
PROC ecke unten rechts  (TEXT CONST zeichenkette); 
PROC balken oben        (TEXT CONST zeichenkette); 
PROC balken unten       (TEXT CONST zeichenkette); 
PROC balken links       (TEXT CONST zeichenkette); 
PROC balken rechts      (TEXT CONST zeichenkette); 
PROC waagerecht         (TEXT CONST zeichenkette); 
PROC senkrecht          (TEXT CONST zeichenkette); 
PROC kreuz              (TEXT CONST zeichenkette); 
 
PROC cursor on          (TEXT CONST zeichenkette); 
PROC cursor off         (TEXT CONST zeichenkette); 
 
   Sofern möglich, kann auch noch ein Code eingegeben
werden, damit der Cursor auf dem Bildschirm sichtbar bzw.
unsichtbar ist. 
   Wie man sich selbst eine Anpassung schreiben kann,
wollen wir hier an einem Beispiel aufzeigen. Wir schrei­
ben dazu eine Anpassung für das Terminal 'Ampex 210+'. 
   In der Terminalbeschreibung ist angegeben, wie das
Terminal konfiguriert sein muß - diese Konfiguartion
haben wir eingestellt. Weiterhin ist angegeben, daß auf
die Grapikzeichen durch die Zeichenfolge 'ESC $' umge­
schaltet und durch die Zeichenfolge 'ESC %' auf den nor­
malen Zeichensatz zurückgeschaltet wird. Für die jeweils
speziellen Graphikzeichen sind bestimmte Buchstaben an­
zugeben (z.B. für die 'Ecke oben links' der Buchstabe 'f').
Die Zeichen für dieses Terminal sind oben hinter den Gra­
phikzeichen in Klammern angegeben. Für 'ESC' muß der Code
'27' ausgegeben werden. 
 
PACKET eigene graphikanpassung DEFINES 
 
       private graphic char: 
 
PROC private graphic char: 
  ecke oben links    (""27"$f"27"%"); 
  ecke oben rechts   (""27"$g"27"%"); 
  ecke unten links   (""27"$e"27"%"); 
  ecke unten rechts  (""27"$h"27"%"); 
  balken oben        (""27"$n"27"%"); 
  balken rechts      (""27"$l"27"%"); 
  balken links       (""27"$m"27"%"); 
  balken unten       (""27"$o"27"%"); 
  waagerecht         (""27"$k"27"%"); 
  senkrecht          (""27"$j"27"%"); 
  kreuz              (""27"$i"27"%"); 
  cursor on          (""27".1"); 
  cursor off         (""27".0"); 
END PROC private graphic char; 
 
END PACKET eigene graphikanpassung; 
 
   Nachdem das Programm insertiert und der Befehl
'private graphic char' gegeben ist, steht in dieser Task
und allen Söhnen davon die Graphikanpassung für das
Terminal 'Ampex 210+' zur Verfügung. 
 
 
5.3  Fehlerbehandlung 
 
   Haben Sie z.B. das Menu durch Tippen der <SV>-Taste
verlassen, so kann es vorkommen, daß anschließend das
Menu auf dem Bildschirm nicht ordnungsgemäß aufgebaut
wird. Verlassen Sie dann die Menuebene durch die Tasten­
folge <ESC><q>. 
 
Wenn 'gib kommando:' erscheint, geben Sie den Befehl 
 
   reset dialog <RETURN> 
 
   Dadurch wird das Menusystem in den Anfangszustand
gesetzt. Anschließend können Sie das von Ihnen ge­
wünschte Programm (wieder) aufrufen.