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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
|
#block##pageblock#
#pagenr("%",1)##setcount(1)##count per page#
#headeven#
gs-Menu-Generator
#center#____________________________________________________________
#end#
#headodd#
#right#gs-Menu-Generator
#center#____________________________________________________________
#end#
#bottomeven#
#center#____________________________________________________________
8 - % #right#ERGOS
#end#
#bottomodd#
#center#____________________________________________________________
ERGOS #right# 8 - %
#end#
#ib#8 Kurzbeschreibung der Befehle #ie#
Durch #u#(*)#e# gekennzeichnete Prozeduren stehen (zumindest in der hier dokumentier
ten Form) erst ab gs-DIALOG Version 1.1 zur Verfügung!
#ib#activate#ie#
PROC activate (TEXT CONST punktname):
Zweck: Mit der Prozedur kann ein (deaktivierter) Menupunkt im aktuellen
Pull-Down-Menu aktiviert, d.h. zur Ausführung freigegeben werden. Das
'-'-Zeichen vor der Punktbezeichnung verschwindet auf dem Bildschirm,
statt dessen erscheint das Zeichen, über den die Menufunktion direkt
aktivierbar ist. 'punktname' muß eine Punktbezeichnung sein, die genau
in der angegebenen Schreibweise im aktuellen Pull-Down-Menu vorhan
den ist (über den 2. Parameter der Prozedur 'menufunktion' in die
Menukarte eingetragen wurde) - ansonsten wird diese Anweisung igno
riert. Die Prozedur "zeigt nur dann Wirkung", wenn sie aus einer Verar
beitungsfunktion des aktuell entfalteten Pull-Down-Menus heraus oder
durch die "Startprozedur"/"Leaveprozedur" des aktuellen Pull-Down-
Menus (sehen Sie auch 'oberbegriff') aufgerufen wird.
Die Veränderung wird nicht sofort auf dem Bildschirm angezeigt, sondern
erst, wenn das Pull-Down-Menu das nächste Mal vom System regeneriert
wird; ansonsten muß das Kommando 'refresh submenu' gegeben werden.
PROC activate (INT CONST punktposition):#u#(*)#e#
Zweck: arbeitet wie obiges 'activate', allerdings werden die Menupunkte nicht
über ihre Bezeichnung, sondern über ihre Position im (aktuellen) Pull-
Down-Menu identifiziert. Die Positionen sind von oben nach unten durch
numeriert. Beachten Sie, daß Trennlinien eine Position belegen und
mitgezählt werden. Die Prozedur arbeitet schneller als obige!
#ib#anwendungstext#ie#
TEXT PROC anwendungstext (INT CONST zeilennummer):
Zweck: Mit diesem Befehl können Texte angesprochen (geholt) werden, die in die
Menukarte ausgelagert wurden. Es wird der Text aus der angekoppelten
Menukarte geliefert, der bei der "Einlagerung" in der Zeile 'zeilen
nummer' stand.
Fehler: Kein Text vorhanden! (In der angekoppelten Menukarte ist unter der
'zeilennummer' kein Anwendungstext eingetragen.)
Bitte achten Sie auf folgendes: Wenn Sie eine neue Menukarte generiert
haben, muß diese erst an die aktuelle Task gekoppelt werden, bevor Sie
auf die dort eingetragenen (Anwendungs-)Texte zugreifen können (z.B.
mit 'testinstallation').
#ib#areax#ie#
INT PROC areax (WINDOW VAR w)
Zweck: Liefert den Wert 'x' des Fensters w.
#ib#areaxsize#ie#
INT PROC areaxsize (WINDOW VAR w)
Zweck: Liefert den den Wert 'xsize' des Fensters w.
#ib#areay#ie#
INT PROC areay (WINDOW VAR w)
Zweck: Liefert den den Wert 'y' des Fensters w.
#ib#areaysize#ie#
INT PROC areaysize (WINDOW VAR w)
Zweck: Liefert den den Wert 'ysize' des Fensters w.
#ib#balken links#ie#
TEXT PROC balken links:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als "linker
Balken" (̄) ausgegeben wird.
PROC balken links (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als "linker Balken" ausgegeben werden soll.
#ib#balken oben#ie#
TEXT PROC balken oben:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als "oberer
Balken" (�) ausgegeben wird.
PROC balken oben (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als "oberer Balken" ausgegeben werden soll.
#ib#balken rechts#ie#
TEXT PROC balken rechts:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als "rechter
Balken" (̃) ausgegeben wird.
PROC balken rechts (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als "rechter Balken" ausgegeben werden soll.
#ib#balken unten#ie#
TEXT PROC balken unten:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als "unterer
Balken" (̂) ausgegeben wird.
PROC balken unten (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als "unterer Balken" ausgegeben werden soll.
#ib#boxalternative#ie#
INT PROC boxalternative (WINDOW VAR w,
TEXT CONST infotext,
auswahlliste,
zusatztasten,
INT CONST position,
BOOL CONST mit abbruch):
Zweck: Vergl. 'menualternative'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menualternative' automatisch gesetzt wird. Der 'infotext' muß
den gs-DIALOG-Syntax-Regel gehorchen! Die 'auswahlliste' muß nach
festen Regeln erstellt werden (sehen Sie Kap. 5.7)
#ib#boxanswer#ie#
TEXT PROC boxanswer (WINDOW VAR w,
TEXT CONST infotext,
vorgabe,
INT CONST position):
Zweck: Vergl. 'menuanswer'. Hier wird nur zusätzlich das Fenster festgelegt, das
bei 'menuanswer' automatisch gesetzt wird. Der 'infotext' muß den
gs-DIALOG-Syntax-Regel gehorchen!
#ib#boxanswerone#ie#
TEXT PROC boxanswerone (WINDOW VAR w,
TEXT CONST infotext,
vorgabe,
THESAURUS CONST thes,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Vergl. 'menuanswerone'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuanswerone' automatisch gesetzt wird.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#boxanswersome#ie#
THESAURUS PROC boxanswersome (WINDOW VAR w,
TEXT CONST infotext,
vorgabe,
THESAURUS CONST thes,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Vergl. 'menuanswersome'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuanswersome' automatisch gesetzt wird.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#boxinfo#ie#
PROC boxinfo (WINDOW VAR w, TEXT CONST infotext,
INT CONST position, timelimit):
Zweck: Vergl. 'menuinfo'. Hier wird nur zusätzlich das Fenster festgelegt, das bei
'menuinfo' automatisch gesetzt wird. Der 'infotext' muß den gs-DIALOG-
Syntax-Regel gehorchen!
PROC boxinfo (WINDOW VAR w, TEXT CONST infotext):
wirkt wie: boxinfo (w, infotext, 5, maxint)
#ib#boxno#ie#
BOOL PROC boxno (WINDOW VAR w,
TEXT CONST frage,
INT CONST position):
wirkt wie: NOT boxyes (w, frage, position)
#ib#boxnotice#ie#
PROC boxnotice (WINDOW VAR w,
TEXT CONST infotext,
INT CONST position
INT VAR x, y, xsize, ysize):
Zweck: Mit 'w' wird das aktuelle Fenster festgelegt. In 'infotext' wird der Text
übergeben, der als Notiz ausgegeben werden soll, der Text muß den
gs-DIALOG-Syntax-Regeln entsprechen. Mit 'position' wird die relative
Lage innerhalb des Fensters 'w' bestimmt. Über die letzten vier Parameter
werden die Position/Maße der Box geliefert. Weder Text noch Position
werden vermerkt.
#ib#boxone#ie#
TEXT PROC boxone (WINDOW VAR w,
THESAURUS CONST thes,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Vergl. 'menuone'. Hier wird nur zusätzlich das Fenster festgelegt, das bei
'menuone' automatisch gesetzt wird.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#boxsome#ie#
THESAURUS PROC boxsome (WINDOW VAR w,
THESAURUS CONST thes,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Vergl. 'menusome'. Hier wird nur zusätzlich das Fenster festgelegt, das
bei 'menusome' automatisch gesetzt wird.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#boxyes#ie#
BOOL PROC boxyes (WINDOW VAR w,
TEXT CONST frage,
INT CONST position):
Zweck: Vergl. 'menuyes'. Hier wird nur zusätzlich das Fenster festgelegt, das bei
'menuyes' automatisch gesetzt wird. Die 'frage' muß den gs-DIALOG-
Syntax-Regel gehorchen!
#ib#center#ie#
TEXT PROC center (WINDOW VAR w, TEXT CONST text):
Zweck: Vergl. 'menuwindowcenter'. Hier wird nur zusätzlich das Fenster festge
legt, das bei 'menuwindowcenter' automatisch gesetzt wird.
TEXT PROC center (INT CONST laenge,
TEXT CONST text):
Zweck: "Ummantelt" 'text' mit Leerzeichen, so daß 'text' etwa in der Mitte zu
stehen kommt. Der gelieferte Text hat die Länge 'laenge'.
TEXT PROC center (TEXT CONST text):
wirkt wie: center (79, text)
#ib#clear buffer#ie#
PROC clear buffer
Zweck: Leert den Zeichenpuffer
#ib#clear buffer and count#ie#
INT PROC clear buffer and count (TEXT CONST
zeichen):
Zweck: Leert den Zeichenpuffer und liefert die Häufigkeit des Vorkommens von
'zeichen' im Zeichenpuffer.
#ib#current menuwindow#ie#
WINDOW PROC current menuwindow:
Zweck: liefert das aktuelle Menufenster (die Einzelwerte können dann mit
'areax', 'areay', 'areaxsize' und 'areaysize' erfragt werden).
#ib#cursor#ie#
PROC cursor (WINDOW VAR w, INT CONST spalte,
zeile):
Zweck: Vergl. 'menuwindowcursor'. Hier wird nur zusätzlich das Fenster festge
legt, das bei 'menuwindowcursor' automatisch gesetzt wird.
#ib#cursor off#ie#
PROC cursor off:
Zweck: Sofern die EUMEL-Installation die Möglichkeit bietet, wird der Cursor aus
dem Bildschirm ausgeblendet.
Wenn neue Verarbeitungsfunktionen entwickelt werden, sollte zu Beginn
der Cursor eingeschaltet und nach Abschluß der Cursor wieder ausge
schaltet werden (sehen Sie auch Kap. 5.1).
PROC cursor off (TEXT CONST zeichenkette):
Zweck: Neufestlegung der 'zeichenkette', die ausgegeben werden soll, um bei der
aktuellen EUMEL-Installation den Cursor auf den Befehl 'cursor off' hin
auszuschalten.
#ib#cursor on#ie#
PROC cursor on:
Zweck: Sofern die EUMEL-Installation die Möglichkeit bietet, wird der Cursor auf
dem Bildschirm angezeigt. Wenn neue Verarbeitungsfunktionen entwik
kelt werden, sollte zu Beginn der Cursor eingeschaltet und nach Abschluß
der Cursor wieder ausgeschaltet werden (sehen Sie auch Kap. 5.1).
PROC cursor on (TEXT CONST zeichenkette):
Zweck: Neufestlegung der 'zeichenkette', die ausgegeben werden soll, um bei der
aktuellen EUMEL-Installation den Cursor auf den Befehl 'cursor on' hin
anzuschalten.
#ib#deactivate#ie#
PROC deactivate (TEXT CONST punktname):
Zweck: Vergl. 'activate (TEXT CONST punktname)'.
Im Gegensatz zu der Prozedur wird hier 'punktname' deaktiviert und
beim (nächsten) Erscheinen der Menupunktbezeichnung ein '-'Zeichen
vorangestellt. Es gelten die gleichen Einschränkungen wie bei 'activate'!
PROC deactivate (INT CONST punktposition):#u#(*)#e#
Zweck: arbeitet wie obiges 'deactivate', allerdings werden die Menupunkte nicht
über ihre Bezeichnung, sondern über ihre Position im (aktuellen) Pull-
Down-Menu identifiziert. Die Positionen sind von oben nach unten durch
numeriert. Beachten Sie, daß Trennlinien eine Position belegen und
mitgezählt werden. Die Prozedur arbeitet schneller als obige!
#ib#direktstart#ie#
PROC direktstart (TEXT CONST prozedurname,
BOOL CONST mit loeschen):#u#(*)#e#
Zweck: Macht aus der aktuellen Task eine Manager-Task ('global manager').
Werden neue Sohntasks eingerichtet, so melden sich diese nicht - wie
gewohnt - mit der 'gib kommando:'-Ebene. Statt dessen wird die Prozedur
'prozedurname' ausgeführt. Das Kommando ist dann sinnvoll, wenn sich
die Sohntask gleich mit einem Menu melden soll. In der Prozedur
'prozedurname' muß dann die entsprechende Menukarte angekoppelt
und das gewünschte Menu zur Ausführung gebracht werden. Hat 'mit
loeschen den Wert 'TRUE', so wird nach Verlassen der Menuebene die
Task automatisch gelöscht; bei 'FALSE' wird noch angefragt, ob die Task
gelöscht werden soll. Wird die Frage bejaht, wird gelöscht; sonst wird die
Task abgekoppelt (break) und kann durch 'continue' wieder angekoppelt
werden.
In der Task, in der das Kommando 'direktbefehl' gegeben wurde, sollte
nicht das Kommando 'monitor' gegeben werden, da dadurch auch die
se Task zu einer Task gemacht würde, die sich direkt mit dem Menu
meldet und ggf. bei Verlassen des Menus automatisch gelöscht wird! Die
'gib kommando:'-Ebene ist dadurch unzugänglich!
#ib#ecke oben links#ie#
TEXT PROC ecke oben links:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" links oben in der
Ecke (ω) ausgegeben wird.
PROC ecke oben links (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" links oben in der Ecke ausgegeben werden soll.
#ib#ecke oben rechts#ie#
TEXT PROC ecke oben rechts:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" rechts oben in
der Ecke (�) ausgegeben wird.
PROC ecke oben rechts (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" rechts oben in der Ecke ausgegeben werden soll.
#ib#ecke unten links#ie#
TEXT PROC ecke unten links:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" links unten in
der Ecke (�) ausgegeben wird.
PROC ecke unten links (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" links unten in der Ecke ausgegeben werden soll.
#ib#ecke unten rechts#ie#
TEXT PROC ecke unten rechts:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" rechts unten in
der Ecke (�) ausgegeben wird.
PROC ecke unten rechts (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" rechts unten in der Ecke ausgegeben werden soll.
#ib#edit#ie#
PROC edit (WINDOW VAR w, TEXT CONST dateiname):
Zweck: Vergl. 'menuwindowedit'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowedit' automatisch gesetzt wird.
PROC edit (WINDOW VAR w, FILE VAR f):
Zweck: Vergl. 'menuwindowedit'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowedit' automatisch gesetzt wird.
#ib#editget#ie#
PROC editget (WINDOW VAR w, TEXT VAR text):#u#(*)#e#
Zweck: Eingabe mit Editiermöglichkeit von 'text'. 'text' wird ausgegeben. Die
Eingabe wird mit RETURN beendet. 'text' darf höchstens 79 Zeichen
lang sein! Fehler: Text nicht initialisiert.
PROC editget (WINDOW VAR w, TEXT VAR text,
INT CONST max laenge, scroll,
TEXT CONST sep, res,
TEXT VAR exit char):#u#(*)#e#
Zweck: Wie oben. Über 'max laenge' kann festgelegt werden , wie lang der einzu
gebende Text ('text') maximal sein darf. Über 'scroll' wird die Breite des
Zeilenfensters festgelegt, bevor gerollt wird (jedoch nicht über die rech
te Fenstergrenze hinaus). Über 'sep' können Zeichen bestimmt werden,
bei denen die Eingabe (zusätzlich zu RETURN) beendet werden soll. Über
'res' können reservierte Tasten angegeben werden. Wird eine dieser
Tasten mit ESC betätigt, wird die Eingabe beendet. In 'exit char' steht
dann ESC und das Zeichen, mit dem der Editor verlassen wurde.
Fehler: Text nicht initialisiert.
#ib#erase#ie#
PROC erase (WINDOW VAR fenster):
Zweck: Der durch 'fenster' beschrieben Bildschirmbereich wird gelöscht - ein
schließlich des Rahmens, der den Fensterbereich umgibt (vergl. Sie auch
'page')!
#ib#erase footnote#ie#
PROC erase footnote (WINDOW VAR fenster):
Zweck: Die letzten beiden Zeilen in 'fenster' (in der die Fußnote nebst Trennlinie
eingetragen sind) werden gelöscht (vergl. Sie auch 'out footnote')!
#ib#erase menunotice#ie#
PROC erase menunotice:
Zweck: Sofern zuvor mit 'write menunotice' (sehen Sie auch dort) eine Menunotiz
gesetzt wurde, wird diese gelöscht, ansonsten hat die Prozedur keine
Wirkung.
#ib#get#ie#
PROC get (WINDOW VAR w, TEXT CONST eingabe):
Zweck: Vergl. 'menuwindowget'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowget' automatisch gesetzt wird.
PROC get (WINDOW VAR w, INT CONST wert):
Zweck: Vergl. 'get (WINDOW VAR w, TEXT CONST eingabe)'. Der eingelesene Wert
wird anschließend entsprechend konvertiert.
PROC get (WINDOW VAR w, REAL CONST wert):
Zweck: Vergl. 'get (WINDOW VAR w, TEXT CONST eingabe)'. Der eingelesene Wert
wird anschließend entsprechend konvertiert.
PROC get (WINDOW VAR w, TEXT CONST eingabe,
INT CONST laenge):
Zweck: Vergl. 'get (WINDOW VAR w, TEXT CONST eingabe)'. Zusätzlich wird die
Eingabe beendet, wenn der eingegebene Text die Länge 'laenge' erreicht
hat.
PROC get (WINDOW VAR w, TEXT CONST eingabe,
TEXT CONST separator):
Zweck: Vergl. 'get (WINDOW VAR w, TEXT CONST eingabe)'. Zusätzlich werden
über 'separtor' die Zeichen festgelegt, die zusätzlich zu den Positionie
rungszeichen die Eingabe beenden.
#ib#get cursor#ie#
PROC get cursor (WINDOW VAR w, INT VAR spalte,
zeile):
Zweck: Vergl. 'get menuwindowcursor'. Hier wird nur zusätzlich das Fenster
festgelegt, das bei 'get menuwindowcursor' automatisch gesetzt wird.
#ib#getline#ie#
PROC getline (WINDOW VAR w, TEXT CONST eingabe):
Zweck: Vergl. 'get (WINDOW VAR w, TEXT CONST eingabe). Nur wird hier die
Eingabe ausschließlich über die Positionierungstasten - nicht aber über
das Leerzeichen beendet.
#ib#get menuwindowcursor#ie#
PROC get menuwindowcursor (INT VAR spalte, zeile):
Zweck: Mit der Prozedur wird die aktuelle Cursorposition innerhalb des Menu
fensters erfragt.
#ib#handle menu#ie#
PROC handle menu (TEXT CONST menuname):
Zweck: Bringt das in der angekoppelten Menukarte enthaltene Menu mit dem
Namen 'menuname' zur Ausführung, d.h. das entsprechende Menu wird
auf dem Bildschirm präsentiert und kann mit den üblichen Tastenfunk
tionen gehandhabt werden.
(Anmerkung: Die Menufunktionen können natürlich nur dann ausge
führt werden, wenn die zugehörigen Programme in der aktuellen Task
zuvor insertiert wurden - ansonsten erscheint auf dem Bildschirm jeweils
der Hinweis 'unbekanntes Kommando'!)
Fehler: Das Menu 'menuname' ist nicht in der angekoppelten Menukarte!
#ib#infix namen#ie#
THESAURUS PROC infix namen (THESAURUS CONST thes,
TEXT CONST infix):
Zweck: Die Prozedur liefert einen Thesaurus, in dem alle Namen enthalten sind,
die in 'thes' übergeben wurden und die den Wortbestandteil 'infix' enthal
ten (gleichgültig an welcher Position).
THESAURUS PROC infix namen (THESAURUS CONST thes,
INT CONST dateityp):
Zweck: Die Prozedur liefert einen Thesaurus, in dem alle Dateinamen enthalten
sind, die in 'thes' übergeben wurden und die den Dateityp 'dateityp'
haben.
THESAURUS PROC infix namen (THESAURUS CONST thes,
TEXT CONST infix,
INT CONST dateityp):
wirkt wie: infix namen (infix namen (thes, infix), dateityp)
#ib#install menu#ie#
PROC install menu (TEXT CONST menukartenname,
BOOL CONST mit emblem):
Zweck: Mit diesem Befehl wird die Menukarte mit dem Namen 'menukarten
name' aus der Task 'gs-MENUKARTEN' in die aktuelle Task kopiert. Die
Menukarte wird als unbenannter Datenraum an die Task gekoppelt. Der
benannte Datenraum wird gelöscht. Der Name der angekoppelten Menu
karte wird vermerkt.
Stimmt der Name der angekoppelten Menukarte mit dem Namen der
angeforderten Menukarte überein, dann wird nicht erneut eine Kopie
angefordert, sondern auf der bereits angekoppelten Menukarte gearbeitet.
Hat 'mit emblem' den Wert 'TRUE', dann wird unser 'Software-Emblem'
während des Ankoppelvorgangs auf dem Bildschirm ausgegeben, bei
'FALSE' nicht.
Fehler: Die Menukarte 'menukartenname' existiert nicht in der Task
'gs-MENUKARTEN'.
PROC install menu (TEXT CONST menukartenname):
wirkt wie: install menu (TEXT CONST menukartenname, TRUE)
#ib#invers#ie#
TEXT PROC invers (TEXT CONST text):
Zweck: Liefert den Text 'text' invers dargestellt. An den Text wird zuvor ein Leer
zeichen angehängt.
#ib#kreuz#ie#
TEXT PROC kreuz:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als "Kreuz" (̗)
ausgegeben wird.
PROC kreuz (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als "Kreuz" ausgegeben werden soll.
#ib#line#ie#
PROC line (WINDOW VAR w, INT CONST anzahl):
Zweck: Vergl. 'menuwindowline'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowline' automatisch gesetzt wird.
PROC line (WINDOW VAR w):
wirkt wie: line (w, 1)
#ib#menualternative#ie#
INT PROC menualternative (TEXT CONST infotext,
auswahlliste,
zusatztasten,
INT CONST position,
BOOL CONST mit abbruch):
Zweck: Mit der Prozedur können dem Benutzer innerhalb des Menubildschirms
mehrere Alternativen zur Entscheidung angeboten werden, von denen er
sich für eine entscheiden kann.
Auf dem Bildschirm wird innerhalb des Menus eine Box ausgegeben.
Boxbreite und -höhe werden vom System automatisch anhand des über
gebenen 'infotext'es (bzw. der 'auswahlliste') festgelegt. Der in 'infotext'
übergebene Text wird innerhalb der Box angezeigt. Der Text muß den
gs-DIALOG-Syntax-Regeln (sehen Sie Kap. 5.13) entsprechen - er dient
ausschließlich der Information des Benutzers.
In der letzten Zeile der Box wird die 'auswahlliste' angeboten. Zwischen
jeder notierten Alternative muß in 'auswahlliste' der code "13" eingetra
gen sein. In der Box werden zwischen den Alternativen je drei Leerzei
chen eingefügt. Es können maximal 10 Alternativen angegeben werden,
die aber incl. der eingefügten Leerzeichen eine Gesamtbreite von 64
Zeichen nicht überschreiten dürfen. Über diese Liste erfolgt durch Posi
tionierung und anschließendem <RETURN> die Entscheidung für eine
Alternative. Die Prozedur liefert dann als Zahlenwert die Position der
gewählten Alternative in der übergebenen Auswahlliste.
Über 'mit abbruch' wird festgelegt, ob die Alternativentscheidung durch
die Tastenfolge <ESC><h> abgebrochen werden kann oder nicht. Ist
das zulässig und geschehen, dann wird der Wert 0 geliefert.
Über 'zusatztasten' kann noch festgelegt werden, ob die Entscheidung
auch durch Tippen bestimmter Tasten angegeben werden kann. Sind hier
Zeichen angegeben und erfolgt die Entscheidung über das Tippen einer
zugelassenen Taste, dann wird die Position der getippten Taste in der
unter 'zusatztasten' übergebenen Zeichenkette ermittelt und der Wert 100
hinzuaddiert (sehen Sie dazu auch Kap. 5.7).
Nach der Entscheidung wird der Menubildschirm automatisch in den
Ausgangszustand versetzt.
#ib#menuanswer#ie#
TEXT PROC menuanswer (TEXT CONST infotext,
vorgabe,
INT CONST position):
Zweck: Die Prozedur ermöglicht den Dialog mit dem Benutzer innerhalb des
Menus. Sie liefert einen vom Benutzer eingegebenen (bzw. modifizierten)
Text/Namen.
Auf dem Bildschirm wird innerhalb des Menus eine Box ausgegeben.
Boxbreite und -höhe werden vom System automatisch anhand des über
gebenen 'infotext'es festgelegt. Der in 'infotext' übergebene Text wird
innerhalb der Box angezeigt. Der Text muß den gs-DIALOG-Syntax-Regeln
(sehen Sie Kap. 5.13) entsprechen.
In der letzten Zeile der ausgegebenen Box erscheint der Text "Eingabe:".
Über 'vorgabe' kann dem Benutzer ein Text zum Editieren angeboten
werden. Mit 'position' wird die relative Lage der Box innerhalb des Menu
bildschirms festgelegt (1, 2, 3, 4, 5: sehen Sie dazu Kap. 5.12).
Die Eingabe kann durch <RETURN> abgeschlossen oder durch
<ESC><h> abgebrochen werden, in letzterem Falle wird niltext ("")
geliefert.
Der gelieferte Wert ist von führenden und folgenden Leerzeichen befreit
(compress). Es ist nicht möglich, den Namen 'break' einzugeben (sehen
Sie dazu Kap.5.1).
#ib#menuanswerone#ie#
TEXT PROC menuanswerone (TEXT CONST infotext,
vorgabe, THESAURUS CONST thesaurus,
TEXT CONST ueberschrift, hinweis,
BOOL CONST mit reinigung):
Zweck: Die Prozedur ist aus den zwei Prozeduren 'menuanswer' und 'menuone'
zusammengesetzt (sehen Sie auch dort). In einer Box innerhalb des
Menus wird der 'infotext' ausgegeben und eine Eingabe erwartet; ggf.
kann ein Text in 'vorgabe' zum Editieren ausgegeben werden. Wird die
Eingabe mit <RETURN> abgeschlossen, wird der eingegebene Text
geliefert. Statt der Eingabe kann der Benutzer sich durch die Tastenfolge
<ESC><z> auch die in 'thesaurus' übergebenen Namen zur Auswahl
anbieten lassen. Wird ein Name angekreuzt, wird dieser geliefert; wird die
Auswahl durch <ESC><h> abgebrochen, wird niltext ("") geliefert.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#menuanswersome#ie#
THESAURUS PROC menuanswersome (TEXT CONST
infotext, vorgabe,
THESAURUS CONST thesaurus,
TEXT CONST ueberschrift, hinweis,
BOOL CONST mit reinigung):
Zweck: Die Prozedur ist aus den zwei Prozeduren 'menuanswer' und 'menusome'
zusammengesetzt (sehen Sie auch dort). In einer Box innerhalb des
Menus wird der 'infotext' ausgegeben und eine Eingabe erwartet; ggf.
kann ein Text in 'vorgabe' zum Editieren ausgegeben werden. Wird die
Eingabe mit <RETURN> abgeschlossen, wird der eingegebene Text in
einem Thesaurus geliefert. Statt der Eingabe kann der Benutzer sich
durch die Tastenfolge <ESC><z> auch die in 'thesaurus' übergebenen
Namen zur Auswahl anbieten lassen. Werden Namen angekreuzt, werden
diese in einem Thesaurus geliefert; wird die Auswahl durch
<ESC><h> abgebrochen, wird ein leerer Thesaurus geliefert.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#menu archiv checken#ie#
PROC menu archiv checken:
Zweck: Über diese Prozedur kann das "Checken" von Dateien auf dem Archiv in
das Archiv-Pull-Down-Menu eingebunden werden. Sehen Sie dazu unbe
dingt Kap. 6.1!
#ib#menu archiv grundeinstellung#ie#
PROC menu archiv grundeinstellung (INT CONST ort):
Zweck: Hierüber wird die Grundeinstellung des Archivpakets vorgenommen: Dazu
wird als Zieltask das Archiv der eigenen Station eingestellt. Dieses wird
auch über eine Menunotiz im Menu angezeigt. Die entsprechenden Menu
punkte werden aktiviert bzw. deaktiviert. Sehen Sie dazu unbedingt Kap.
6.1!
Über 'ort' wird festgelegt, an welcher Stelle innerhalb des Menus die
Menunotiz zur Anzeige der Zieltask (und ggf. des Archivnamens) ausge
geben wird (sehen Sie dazu Kap. 5.12).
#ib#menu archiv holen#ie#
PROC menu archiv holen:
Zweck: Über diese Prozedur kann das Holen von Dateien vom Archiv in das
Archiv-Pull-Down-Menu eingebunden werden. Sehen Sie dazu unbedingt
Kap. 6.1!
#ib#menu archiv initialisieren#ie#
PROC menu archiv initialisieren:
Zweck: Über diese Prozedur kann das Formatieren/ Initialisieren eines Archivs in
das Archiv-Pull-Down-Menu eingebunden werden. Sehen Sie dazu unbe
dingt Kap. 6.1!
#ib#menu archiv loeschen#ie#
PROC menu archiv loeschen:
Zweck: Über diese Prozedur kann das Löschen von Dateien auf dem Archiv in das
Archiv-Pull-Down-Menu eingebunden werden. Sehen Sie dazu unbedingt
Kap. 6.1!
#ib#menu archiv neue diskette#ie#
PROC menu archiv neue diskette:
Zweck: Über diese Prozedur kann das Anmelden einer neuen Diskette bei schon
reserviertem Archiv in das Archiv-Pull-Down-Menu eingebunden werden.
Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv reservieren#ie#
PROC menu archiv reservieren:
Zweck: Über diese Prozedur kann die Archivreservierung in das Archiv-Pull-
Down-Menu eingebunden werden. Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv reservierung aufgeben#ie#
PROC menu archiv reservierung aufgeben:
Zweck: Über diese Prozedur kann eine bestehende Archivreservierung aus dem
Menu heraus aufgegeben werden. Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv schreibcheck#ie#
PROC menu archiv schreibcheck:
Zweck: Über diese Prozedur kann das Schreiben von Dateien auf das Archiv und
das sich automatisch daran anschließende "Checken" der zuvor geschrie
benen Dateien in das Archiv-Pull-Down-Menu eingebunden werden.
Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv schreiben#ie#
PROC menu archiv schreiben:
Zweck: Über diese Prozedur kann das Schreiben von Dateien auf das Archiv in
das Archiv-Pull-Down-Menu eingebunden werden. Sehen Sie dazu unbe
dingt Kap. 6.1!
#ib#menu archiv verzeichnis#ie#
PROC menu archiv verzeichnis:
Zweck: Über diese Prozedur kann die Ausgabe eines Inhaltsverzeichnisses des
Archivs auf dem Bildschirm in das Archiv-Pull-Down-Menu eingebunden
werden. Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv verzeichnis drucken#ie#
PROC menu archiv verzeichnis drucken:
Zweck: Über diese Prozedur kann die Ausgabe eines Inhaltsverzeichnisses des
Archivs über den Drucker in das Archiv-Pull-Down-Menu eingebunden
werden. Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu archiv zieltask einstellen#ie#
PROC menu archiv zieltask einstellen:
Zweck: Über diese Prozedur kann die Festlegung der Zieltask, mit der die Inter
taskkommunikation abgewickelt werden soll, in das Archiv-Pull-Down-
Menu eingebunden werden. Sehen Sie dazu unbedingt Kap. 6.1!
#ib#menu dateien aufraeumen#ie#
PROC menu dateien aufraeumen:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus der Name der
Datei erfragt, die aufgeräumt, d.h. reorganisiert werden soll. Existiert
keine Datei mit dem angegebenen Namen, so erfolgt ein Hinweis darauf.
Statt der Eingabe des Dateinamens kann auch die Tastenfolge
<ESC><z> getippt werden. Daraufhin werden alle Dateinamen der
Task zur Auswahl angeboten. Hier können die gewünschten Dateinamen
angekreuzt werden. Anschließend werden die angekreuzten Dateien
reorganisiert. Der Vorgang wird auf dem Bildschirm protokolliert. Am
Ende des Vorgangs wird der Menubildschirm automatisch regeneriert. Es
können natürlich nur Dateien des Typs 1003 (Textfiles) reorganisiert
werden; sofern andere Dateien ausgewählt werden, erfolgt ein Hinweis
darauf.
#ib#menu dateien drucken#ie#
PROC menu dateien drucken:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus (auch bei
geschachtelten(!)) der Name der Datei erfragt, die gedruckt werden soll.
Anschließend wird die Datei mit dem angegebenen Namen gedruckt.
Existiert keine Datei mit dem angegebenen Namen, so erfolgt ein Hinweis
darauf.
Statt der Eingabe des Dateinamens kann auch die Tastenfolge
<ESC><z> getippt werden. Daraufhin werden alle Dateinamen der
Task zur Auswahl angeboten. Alle angekreuzten Dateien werden an
schließend gedruckt. Der Vorgang wird auf dem Bildschirm protokolliert.
Am Ende wird der Menubildschirm automatisch regeneriert.
#ib#menu dateien kopieren#ie#
PROC menu dateien kopieren:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus der Name der
Datei erfragt, die kopiert werden soll. Existiert keine Datei mit dem
angegebenen Namen, so erfolgt ein Hinweis darauf. Statt der Eingabe des
Dateinamens kann auch die Tastenfolge <ESC><z> getippt werden.
Daraufhin werden alle Dateinamen der Task zur Auswahl angeboten. Hier
kann ein Dateiname angekreuzt werden. Nun wird der Name erfragt, den
die Kopie erhalten soll. Existiert der Name bereits, erfolgt ein Hinweis
darauf, sonst wird die Datei kopiert. Der Menubildschirm wird automa
tisch regeneriert.
#ib#menu dateien loeschen#ie#
PROC menu dateien loeschen:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus der Name der
Datei erfragt, die gelöscht werden soll. Anschließend wird die Datei mit
dem angegebenen Namen gelöscht, sofern die Sicherheitsabfrage zum
Löschen mit 'Ja' beantwortet wurde. Existiert keine Datei mit dem ange
gebenen Namen, so erfolgt ein Hinweis darauf. Statt der Eingabe des
Dateinamens kann auch die Tastenfolge <ESC><z> getippt werden.
Daraufhin werden alle Dateinamen der Task zur Auswahl angeboten. Alle
angekreuzten Dateien werden anschließend (nach jeweiliger Sicherheits
anfrage) gelöscht. Der Vorgang wird auf dem Bildschirm protokolliert. Am
Ende wird der Menubildschirm automatisch regeneriert.
#ib#menu dateien speicherplatz#ie#
PROC menu dateien speicherplatz:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus der Name der
Datei erfragt, deren Speicherplatz ermittelt werden soll. Existiert keine
Datei mit dem angegebenen Namen, so erfolgt ein Hinweis darauf. Statt
der Eingabe des Dateinamens kann auch die Tastenfolge <ESC><z>
getippt werden. Daraufhin werden alle Dateinamen der Task zur Aus
wahl angeboten. Hier können die gewünschten Dateinamen angekreuzt
werden. Anschließend wird der Speicherplatz der angekreuzten Datei(en)
ermittelt und im Menufenster ausgegeben. Im Anschluß an die Anzeige
wird der Menubildschirm automatisch regeneriert.
#ib#menu dateien umbenennen#ie#
PROC menu dateien umbenennen:
Zweck: Durch diese Prozedur wird innerhalb des aktuellen Menus der Name der
Datei erfragt, die umbenannt werden soll. Existiert keine Datei mit dem
angegebenen Namen, so erfolgt ein Hinweis darauf. Statt der Eingabe des
Dateinamens kann auch die Tastenfolge <ESC><z> getippt werden.
Daraufhin werden alle Dateinamen der Task zur Auswahl angeboten. Hier
kann ein Dateiname angekreuzt werden. Nun wird der Name erfragt, den
die Datei anschließend erhalten soll. Existiert der Name bereits, erfolgt ein
Hinweis darauf, sonst wird die Datei umbenannt. Der Menubildschirm
wird automatisch regeneriert.
#ib#menu dateien verzeichnis#ie#
PROC menu dateien verzeichnis
Zweck: Mit der Prozedur kann innerhalb des aktuellen Menus ein Verzeichnis der
Dateien der eigenen Task ausgegeben werden. Nach Verlassen des Ver
zeichnisses durch <ESC><q> wird der Menubildschirm automatisch
regeneriert.
#ib#menufootnote#ie#
PROC menufootnote (TEXT CONST fussnotentext):
Zweck: Mit der Prozedur kann der Text in der "Fußzeile" des aktuellen Menubild
schirms (zumeist Hinweise an den Benutzer) ersetzt werden. Der vorhan
dene Text wird gelöscht und stattdessen 'fussnotentext' notiert. Der Text
bleibt so lange erhalten, bis er durch eine andere selbstgesetzte Fußnote
('menufootnote') oder durch die alte vom System gesetzte Fußnote ('old
menufootnote'; sehen Sie auch dort) überschrieben wird. Sofern
gs-DIALOG-Prozeduren aufgerufen werden, die selbst Ausgaben in der
Fußzeile machen, wird die durch 'menufootnote' gesetzte Fußnote eben
falls überschrieben. Wenn der Text länger als die aktuelle Menubild
schirmbreite ist,wird der Text abgeschnitten. Damit der Text auch in
geschachtelten Menus vollständig ausgegeben werden kann, sollte er nicht
länger als 69 Zeichen sein.
#ib#menufunktion#ie#
PROC menufunktion (TEXT CONST kuerzel,
punktbezeichnung,
prozedurname,
infotext):
Zweck: Der Befehl wird für die Generierung von Menukarten benötigt. Mit diesem
Befehl wird in das aktuell geöffnete Menu unter dem aktuellen Oberbe
griff eine Verarbeitungsfunktion eingetragen. Mit 'kuerzel' wird die Taste
bestimmt, über die die Verarbeitungsfunktion direkt aktiviert werden
kann. 'kuerzel' muß innerhalb eines Pull-Down-Menus eindeutig gewählt
sein! Unter 'punktbezeichnung' wird der Text eingetragen, der im Pull-
Down-Menu ausgegeben werden soll. In 'prozedurname' steht der Name
der Prozedur (als Text(!)), die bei Aktivierung des Menupunktes ausge
führt werden soll. In 'infotext' steht der Text, der als Information zu
diesem Menupunkt bei Tippen der <?>-Taste angezeigt werden soll.
Fehler: Menupunkt-Kürzel ist länger als ein Zeichen.
Menupunktkürzel kommt mehrfach vor.
Menupunktbezeichnung ist zu lang (> 60 Zeichen).
Zu viele Menupunkte in einem Pull-Down-Menu (> 15).
#ib#menuinfo#ie#
PROC menuinfo (TEXT CONST infotext, INT CONST
position, timelimit):
Zweck: Die Prozedur ermöglicht es, innerhalb des Menus einen Hinweis (Infor
mationstext) auszugeben. Im Menubildschirm erscheint der 'infotext' in
einer Box. Boxbreite und -höhe werden vom System automatisch anhand
des übergebenen 'infotext'es festgelegt. 'infotext' muß den gs-DIALOG-
Syntax-Regeln (sehen Sie Kap. 5.13) entsprechen. Mit 'position' wird die
relative Lage der Box innerhalb des Menubildschirms festgelegt (1, 2, 3,
4, 5: sehen Sie dazu Kap. 5.12). Mit 'timelimit' kann die Zeitdauer (in
Zehntelsekunden) festgelegt werden, für die der Hinweis höchstens er
scheint. Die Anzeige kann vom Benutzer durch Tippen einer beliebigen
Taste abgebrochen werden.
PROC menuinfo (TEXT CONST infotext,
INT CONST position):
wirkt wie: menuinfo (infotext, position, maxint)
PROC menuinfo (TEXT CONST infotext):
wirkt wie: menuinfo (infotext, 5)
#ib#menukartenname#ie#
TEXT PROC menukartenname:#u#(*)#e#
Zweck: Liefert den Namen der zur zeit angekoppelten Menukarte. Ist keine
Menukarte angekoppelt, wird niltext ("") geliefert.
#ib#menuno#ie#
BOOL PROC menuno (TEXT CONST frage,
INT CONST position):
wirkt wie: NOT menuyes (frage, position)
#ib#menuone#ie#
TEXT PROC menuone (THESAURUS CONST thesaurus,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Durch die Prozedur werden dem Benutzer innerhalb des Menubild
schirms Namen zur Auswahl angeboten. Nach Ankreuzen eines Namens
wird die Auswahl automatisch verlassen. Der angekreuzte Name wird
geliefert. Wird die Auswahl durch <ESC><h> abgebrochen, so wird
niltext ("") geliefert. In 'thesaurus' wird ein THESAURUS mit den Namen
übergeben, die zur Auswahl angeboten werden sollen (sehen Sie dazu
auch Kap. 5.14). Die beiden Texte 'ueberschrift' und 'hinweis' erscheinen
zur Kennzeichnung im Kopf der Auswahlliste: 'ueberschrift' zentriert und
invers dargestellt, 'hinweis' nur zentriert. Hat 'mit reinigung' den Wert
TRUE, so wird nach der Auswahl der Menubildschirm automatisch wie
deraufgebaut, bei FALSE wird darauf verzichtet.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#menusome#ie#
THESAURUS PROC menusome (THESAURUS CONST
thesaurus,
TEXT CONST ueberschrift,
hinweis,
BOOL CONST mit reinigung):
Zweck: Durch die Prozedur werden dem Benutzer innerhalb des Menubild
schirms Namen zur Auswahl angeboten. Die Auswahl kann durch die
Tastenfolge <ESC><q> verlassen werden. Der/ die angekreuzte(n)
Name(n) wird/werden in einem Thesaurus geliefert. Wird die Auswahl
durch die Tastenfolge <ESC><h> abgebrochen oder wurde kein Name
angekreuzt, dann wird ein leerer Thesaurus geliefert. In 'thesaurus' wird
ein Thesaurus mit den Namen übergeben, die zur Auswahl angeboten
werden sollen (sehen Sie dazu auch Kap. 5.14). Die beiden Texte
'ueberschrift' und 'hinweis' erscheinen zur Kennzeichnung im Kopf der
Auswahlliste: 'ueberschrift' zentriert und invers dargestellt, 'hinweis' nur
zentriert. Hat 'mit reinigung' den Wert TRUE, so wird nach der Auswahl
der Menubildschirm automatisch wiederaufgebaut, bei FALSE wird darauf
verzichtet.
Fehler: Fenster für Auswahl zu klein (x < 56, y < 15)
#ib#menuwindowcenter#ie#
TEXT PROC menuwindowcenter (TEXT CONST text):
Zweck: Die Prozedur liefert einen Text, der so lang ist, wie das aktuelle Menufen
ster breit ist. Dazu wird 'text' so mit Leerzeichen "ummantelt" daß 'text'
etwa in der Mitte zu stehen kommt. Steht der Cursor bei Ausgabe dieses
Textes am Anfang der Zeile, erscheint der Text zentriert in der Zeile
(vorhandene Zeileninhalte werden dadurch überschrieben (der Cursor
steht dann auf dem rechten Fensterrand!).
#ib#menuwindowcursor#ie#
PROC menuwindowcursor (INT CONST spalte, zeile):
Zweck: Mit diesem Befehl kann der Cursor innerhalb des aktuellen Menufensters
positioniert werden. Ein "normales" Menufenster ist 77 Zeichen breit und
20 Zeichen hoch; ein Menufenster in einem geschachtelten Menu ist 71
Zeichen breit und 16 Zeichen hoch). (Sehen Sie auch die Informations
prozeduren 'get menuwindowcursor' und 'remaining menuwindowlines').
Fehler: Wird außerhalb des aktuellen Menufensters positioniert, wird der Fenster
inhalt gelöscht und die Fensterposition (1,1) angenommen.
#ib#menuwindowedit#ie#
PROC menuwindowedit (TEXT CONST dateiname):
Zweck: Durch den Befehl wird innerhalb des Menus ein umrandetes Fenster
geöffnet und die Datei mit dem Namen 'dateiname' zum Editieren ausge
geben. Auf die Größe des Menufensters kann kein Einfluß genommen
werden - sie wird selbständig vom System gesetzt ("normales" Menu: 77
Zeichen breit und 20 Zeichen hoch; geschachteltes Menu 71 Zeichen
breit und 16 Zeichen hoch).
Fehler: Die Datei mit dem Namen 'dateiname' existiert nicht.
PROC menuwindowedit (FILE VAR f):
Zweck: Vergl. obige 'menuwindowedit'-Prozedur. Die Datei 'f' muß mit der Verar
beitungsart 'modify' assoziiert worden sein.
#ib#menuwindoweditget#ie#
PROC menuwindoweditget (TEXT VAR text):#u#(*)#e#
Zweck: Vergl. 'menuwindowget (TEXT VAR text)' Zusätzlich kann hier in 'text' ein
Text zum Editieren vorgegeben werden.
Fehler: Text nicht initialisiert.
#ib#menuwindowget#ie#
PROC menuwindowget (TEXT VAR text):
Zweck: Mit der Prozedur können Texte innerhalb des Menufensters eingelesen
werden (INTEGER- und REAL-Werte müssen ggf. "von Hand" konvertiert
werden). Die Eingabe wird durch <RETURN> abgeschlossen. Es muß
mindestens ein Zeichen (ungleich Leerzeichen) eingegeben werden. Von
der Eingabe werden die führenden Leerzeichen abgeschnitten. Ist der
einzugebende Text länger als die noch verbleibende Restzeile, so wird der
Text in der Restzeile gescrollt. Sind in der aktuellen Zeile weniger als 7
Zeichenpositionen für die Eingabe vorhanden, so wird automatisch für die
Eingabe an den Anfang der nächsten Zeile positioniert.
#ib#menuwindowline#ie#
PROC menuwindowline (INT CONST anzahl):
Zweck: Die Prozedur 'menuwindowline' hat innerhalb des Menubildschirms eine
ähnliche Wirkung wie die Prozedur 'line' auf dem Gesamtbildschirm. Es
werden 'anzahl' Zeilenwechsel vorgenommen. Wird allerdings die untere
Grenze des Menubildschirms überschritten, dann rollt (scrollt) der Bild
schirm nicht die entsprechende Anzahl Zeilen nach oben, statt dessen
wird der Fensterinhalt gelöscht und die Operation oben im Fenster fort
gesetzt.
PROC menuwindowline:
wirkt wie: menuwindowline (1)
#ib#menuwindowout#ie#
PROC menuwindowout (TEXT CONST text):
Zweck: Mit der Prozedur können innerhalb des aktuellen Menufensters Texte
ausgegeben werden. Sollen INTEGER- oder REAL-Werte ausgegeben wer
den, müssen diese zunächst in Texte konvertiert werden. Ist der Text
länger als die verbleibende Restzeile innerhalb des aktuellen Menufen
sters, so wird der Text bis zum Fensterende (rechts) ausgegeben und die
Ausgabe am Anfang der nächsten Zeile fortgesetzt. Sobald die letzte Posi
tion des aktuellen Menufensters (unten rechts in der Fensterecke) be
schrieben wurde, wird der Fensterinhalt gelöscht und die Ausgabe an der
Position (1,1) des Fensters fortgesetzt.
#ib#menuwindowpage#ie#
PROC menuwindowpage:
Zweck: Durch den Befehl 'menuwindowpage' wird der Inhalt des Fensters inner
halb des aktuellen Menus gelöscht (das "Menufenster") (vergleichen Sie
auch 'show menuwindow'). Der Rahmen des Fensters (der bei 'show
menuwindow' ausgegeben wurde), bleibt bestehen, da er nicht mit zum
eigentlichen Fenster gehört. Durch den Befehl wird der Menubildschirm
nicht rekonstruiert! Soll das Fenster geschlossen werden, ist der Befehl
'regenerate menuscreen' zu geben.
#ib#menuwindowshow#ie#
PROC menuwindowshow (TEXT CONST dateiname):
Zweck: Vergl. 'menuwindowedit'-Prozedur. Die Datei 'dateiname' kann nicht
schreibend verändert werden.
PROC menuwindowshow (FILE VAR f):
Zweck: Vergl. obige 'menuwindowshow'-Prozedur. Die Datei 'f' muß mit der
Verarbeitungsart 'modify' assoziiert worden sein.
#ib#menuwindowstop#ie#
PROC menuwindowstop (INT CONST zeilenzahl):
Zweck: Innerhalb des Menufensters werden 'zeilenzahl' Zeilenwechsel vorge
nommen und der Text " Zum Weitermachen bitte irgendeine Taste tip
pen!" ausgegeben. Danach wird so lange gewartet, bis eine Taste getippt
wird.
PROC menuwindowstop:
wirkt wie: menuwindowstop (2)
#ib#menuyes#ie#
BOOL PROC menuyes (TEXT CONST frage,
INT CONST position):
Zweck: Die Prozedur dient dazu, innerhalb des Menus eine Ja/Nein-Entscheidung
des Benutzers einzuholen. Im Gegensatz zur Standardprozedur 'yes'
arbeitet diese Prozedur unabhängig davon, ob der Kommandodialog ein-
oder ausgeschaltet ist. Auf dem Bildschirm wird innerhalb des Menus eine
Box ausgegeben. Boxbreite und -höhe werden vom System automatisch
anhand der übergebenen 'frage' festgelegt. Der in 'frage' übergebene Text
wird um ein Fragezeichen (?) ergänzt und innerhalb der Box angezeigt.
Der Text muß den gs-DIALOG-Syntax-Regeln (sehen Sie Kap. 5.13)
entsprechen. In der letzten Zeile der ausgegebenen Box erscheint der Text
"Ja Nein". Die Prozedur 'menuyes' liefert TRUE, wenn mit 'Ja' geantwor
tet wurde und FALSE, wenn mit 'Nein' geantwortet wurde (durch Tippen
der Anfangsbuchstaben oder Positionierung auf die Antwort und ab
schließendes <RETURN>). Der Menubildschirm wird automatisch
regeneriert. Mit 'position' wird die relative Lage der Box innerhalb des
Menubildschirms festgelegt (1, 2, 3, 4, 5: sehen Sie dazu Kap. 5.12).
#ib#no#ie#
BOOL PROC no (WINDOW VAR w, TEXT CONST frage):
wirkt wie: NOT yes (w, frage).
#ib#not empty#ie#
BOOL PROC not empty (THESAURUS CONST thes):
Zweck: Dient der Prüfung, ob ein Thesaurus Namen enthält oder nicht. Die
Prozedur liefert TRUE, wenn Namen in 'thes' enthalten sind, sonst FALSE.
#ib#oberbegriff#ie#
PROC oberbegriff (TEXT CONST punktname,
startprocname,
leaveprocname):
Zweck: Der Befehl wird bei der Generierung von Menukarten benötigt. Mit diesem
Befehl wird die Bezeichnung 'punktname' in die Kopfzeile des aktuell
geöffneten Menus eingetragen. Die in 'startprocname' übergebene Proze
dur wird ausgeführt, bevor das zugehörige Pull-Down-Menu auf dem
Bildschirm "ausgeklappt" wird; die in 'leaveprocname' übergebene Pro
zedur, wenn in ein anderes Pull-Down-Menu gewechselt wird (beachten
Sie, daß die Prozedurnamen als Texte(!) übergeben werden).
Fehler: Menukarte noch nicht geöffnet ('oeffne menukarte' fehlt).
Menu noch nicht geöffnet ('oeffne menu' fehlt).
Zu viele Oberbegriffe im Menu (> 10).
Die Kopfzeile ist zu lang (> 70 Zeichen).
PROC oberbegriff (TEXT CONST punktname):
wirkt wie: oberbegriff (punktname, "", "")
#ib#oeffne menu#ie#
PROC oeffne menu (TEXT CONST menuname,
einstiegsproc,
ausstiegsproc, infotext1,
infotext2, infotext3):
Zweck: Der Befehl wird für die Generierung von Menukarten benötigt. Durch den
Befehl wird innerhalb der Menukarte ein Menu mit dem Namen
'menuname' angelegt. Über diesen Namen kann das Menu auch später
angesprochen werden (mit 'handle menu'). Die unter 'einstiegsproc'
übergebene Prozedur wird bei der Aktivierung des Menus ausgeführt, die
unter 'ausstiegsproc' übergebene Prozedur, wenn das Menu (mit
<ESC><q>) verlassen wird (beachten Sie, daß die Prozedurnamen als
Texte(!) übergeben werden!). In 'infotext1', 'infotext2' und 'infotext3'
können Hinweise eingetragen werden, die bei Erscheinen des Menus auf
dem Bildschirm für kurze Zeit in einer Box rechts unten angezeigt wer
den. Die Erstellung der Boxtexte ist an genaue Regeln gebunden (sehen
Sie dazu Kap. 5.13). Sehen Sie auch bei 'schliesse menu'.
PROC oeffne menu (TEXT CONST menuname,
einstiegsproc,
ausstiegsproc):
wirkt wie: oeffne menu (menuname, einstiegsproc,
ausstiegsproc, "", "", "")
PROC oeffne menu (TEXT CONST menuname):
wirkt wie: oeffne menu (menuname, "", "")
#ib#oeffne menukarte#ie#
PROC oeffne menukarte (TEXT CONST menukartenname):
Zweck: Der Befehl wird bei der Generierung von Menukarten benötigt. Ein Pro
gramm zur Erstellung einer Menukarte muß immer mit diesem Befehl
beginnen. Durch den Befehl wird ein Datenraum mit dem Namen
'gs-MENUKARTE:menukartenname' eingerichtet; der Wortbestandteil
'gs-MENUKARTE:' wird dabei automatisch vor den angegebenen Namen
gesetzt (sehen Sie auch 'schliesse menukarte').
Fehler: Eine Menukarte mit dem angegebenen Namen existiert bereits in der
Task. Bei der Generierung wird dann angefragt, ob die alte Menukarte
gelöscht werden darf.
#ib#ohne praefix#ie#
THESAURUS PROC ohne praefix (THESAURUS CONST thes,
TEXT CONST praefix):
Zweck: Liefert in einem Thesaurus alle Namen aus dem übergebenen Thesaurus
'thes', die mit dem Wortbestandteil 'praefix' beginnen. Bei den gelie
ferten Namen ist dieser führende Wortbestandteil entfernt.
#ib#old menufootnote#ie#
PROC old menufootnote:
Zweck: Der aktuelle Text in der Fußzeile des aktuellen Menubildschirms wird
durch den hier zuletzt vom System gesetzten Text überschrieben. Die
Prozedur wird benutzt, um eine selbstgesetzte Fußnote (sehen Sie auch
'write menunotice') zu löschen.
#ib#out#ie#
PROC out (WINDOW VAR w, TEXT CONST text):
Zweck: Vergl. 'menuwindowout'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowout' automatisch gesetzt wird.
#ib#out frame#ie#
PROC out frame (WINDOW VAR fenster):
Zweck: Um den durch 'fenster' angegebenen Bildschirmbereich wird ein Rahmen
gezogen.
#ib#out footnote#ie#
PROC out footnote (WINDOW VAR fenster,
TEXT CONST textzeile):
Zweck: In der untersten Zeile des Fensters 'fenster' wird 'textzeile' ausgegeben, in
der vorletzten Zeile eine Trennzeile. Sehen Sie auch 'erase footnote'.
#ib#page#ie#
PROC page (WINDOW VAR fenster,
BOOL CONST mit rahmen):
Zweck: Der durch 'fenster' beschriebene Fensterbereich wird gelöscht. Hat 'mit
rahmen' den Wert TRUE, wird der Rahmenbereich ebenfalls gelöscht.
PROC page (WINDOW VAR fenster):
wirkt wie: page (fenster, FALSE).
#ib#put#ie#
PROC put (WINDOW VAR w, TEXT CONST text):
wirkt wie: out (w, text + " ")
PROC put (WINDOW VAR w, INT CONST zahl):
wirkt wie: put (w, text (zahl))
PROC put (WINDOW VAR w, REAL CONST zahl):
wirkt wie: put (w, text (zahl))
#ib#putline#ie#
PROC putline (WINDOW VAR w, TEXT CONST text):
wirkt wie: put (w, text); line (w)
#ib#regenerate menuscreen#ie#
PROC regenerate menuscreen:
Zweck: Der Befehl wird verwendet, um den Menubildschirm (z.B. nach der
Nutzung für anwendungsbezogene Ausgaben) in seinem letzten Zustand
zu reproduzieren. Der Bildschirm wird gelöscht. Anschließend wird der
aktuelle Menubildschirm vollständig neu aufgebaut - auch bei geschach
telten Menus. (sehen Sie auch 'refresh submenu')
#ib#refresh submenu#ie#
PROC refresh submenu:
Zweck: Der Befehl dient dazu, das aktuelle Pull-Down-Menu (z.B. nach Über
schreiben) und ggf. eine gesetzte Menunotiz erneut auf den Bildschirm zu
schreiben. Betroffen ist nur der Bereich zwischen den Trennlinien der
Kopf- und Fußzeile. Für das vorausgehende Löschen verwendeter Bild
schirmbereich ist der Programmierer verantwortlich. Im Gegensatz zu
'regenerate menuscreen' findet hier kein kompletter Bildschirmaufbau
statt. Wenn möglich, dann ist dieser Befehl dem Befehl 'regenerate
menuscreen' wegen des geringeren Zeitaufwandes vorzuziehen.
#ib#remaining lines#ie#
INT PROC remaining lines (WINDOW VAR w):
Zweck: Die Prozedur liefert die Anzahl der Zeilen im Fenster 'w', die noch
zwischen Cursor und unterer Fenstergrenze vorhanden sind.
#ib#remaining menuwindowlines#ie#
INT PROC remaining menuwindowlines
Zweck: Die Prozedur liefert die Anzahl der Zeilen im aktuellen Menufenster, die
noch zwischen Cursor und unterer Fenstergrenze vorhanden sind.
#ib#reset dialog#ie#
PROC reset dialog:
Zweck: Das Menusystem wird in den Anfangszustand versetzt. (Keine Menukarte
angekoppelt; Anzahl der geöffneten Menus: 0)
#ib#schliesse menu#ie#
PROC schliesse menu:
Zweck: Der Befehl wird bei der Generierung von Menukarten benötigt. Durch den
Befehl wird ein Menu in einer Menukarte abgeschlossen (sehen Sie auch
'oeffne menu')
#ib#schliesse menukarte#ie#
PROC schliesse menukarte
Zweck: Der Befehl wird bei der Generierung von Menukarten benötigt. Durch den
Befehl wird eine Menukarte abgeschlossen (sehen Sie auch 'oeffne
menukarte')
#ib#senkrecht#ie#
TEXT PROC senkrecht:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als senkrechter
Strich (�) ausgegeben wird.
PROC senkrecht (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als senkrechter Strich ausgegeben werden soll.
#ib#show#ie#
PROC show (WINDOW VAR fenster):
Zweck: Das Fenster 'fenster' wird auf dem Bildschirm angezeigt (das Fenster
muß zuvor durch 'window' initialisiert worden sein). Um den angegebe
nen Fensterbereich wird automatisch ein Rahmen gezogen. Der Rahmen
gehört nicht zum Fenster dazu! (Soll das Fenster ohne Rahmen ausgege
ben werden, dann muß der Befehl 'page' verwendet werden.) Der Bereich
innerhalb des Rahmens (Fensterbereich) wird gelöscht.
#ib#show#ie#
PROC show (WINDOW VAR w, TEXT CONST dateiname):
Zweck: Vergl. 'menuwindowshow'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowshow' automatisch gesetzt wird.
PROC show (WINDOW VAR w, FILE VAR f):
Zweck: Vergl. 'menuwindowshow'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowshow' automatisch gesetzt wird.
#ib#show menuwindow#ie#
PROC show menuwindow:
Zweck: Durch den Befehl 'show menuwindow' wird ein entsprechender Rahmen
innerhalb des Menubildschirms ausgegeben und der Bereich innerhalb
dieses Rahmens (das Fenster) gelöscht (sehen Sie auch 'menuwindow
page'). Innerhalb des Fensters können anschließend verschiedene Opera
tionen ausgeführt werden. Auf die Größe des Menufensters kann kein
Einfluß genommen werden - sie wird selbständig vom System gesetzt
("normales" Menu: 77 Zeichen breit und 20 Zeichen hoch; geschachteltes
Menu 71 Zeichen breit und 16 Zeichen hoch).
#ib#stdinfoedit#ie#
PROC stdinfoedit (TEXT CONST dateiname):#u#(*)#e#
Zweck: Löscht den Bildschirm und bietet die Datei 'dateiname' in einem festge
legten zum Editieren an. In der Fußzeile wird die Information "Info:
<ESC><?> Verlassen: <ESC><q>" angezeigt. Nach Tippen von
<ESC><?> werden Editorinformationen in den Bildschirm einge
blendet.
PROC stdinfoedit (FILE VAR f):#u#(*)#e#
Zweck: Wie obige 'stdinfoedit'-Prozedur'. Die Datei 'f' muß mit der Verarbei
tungsart 'modify' assoziiert worden sein.
PROC stdinfoedit (TEXT CONST dateiname,
INT CONST oberste zeile):#u#(*)#e#
Zweck: Wie obige Prozedur (die wie 'stdwinfoedit (w, 1)' wirkt). Allerdings kön
nen bis zu zwei Zeilen oben auf dem Bildschirm unbenutzt bleiben (z.B.
um die Kopfzeile des Menus weiterhin anzuzeigen). 'oberste zeile' gibt an,
welche Bildschirmzeile die erste von dieser Prozedur benutzte ist
(1<= oberste zeile<=3).
PROC stdinfoedit (FILE VAR f,
INT CONST oberste zeile):#u#(*)#e#
Zweck: Wie obige 'stdinfoedit'-Prozedur'. Die Datei 'f' muß mit der Verarbei
tungsart 'modify' assoziiert worden sein.
#ib#stop#ie#
PROC stop (WINDOW VAR w, INT CONST zeilenzahl):
Zweck: Vergl. 'menuwindowstop'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowstop' automatisch gesetzt wird.
PROC stop (WINDOW VAR w):
wirkt wie: stop (w, 1).
#ib#testinstallation#ie#
PROC testinstallation (TEXT CONST menutafelname):
Zweck: Die Menutafel mit dem Namen 'menutafelname' (muß mit dem
'gs-MENUKARTE:' beginnen!) wird als aktuelle Menutafel an gs-DIALOG
gekoppelt. Durch den Befehl wird die angegebene Menutafel zur Task
'gs-MENUAKRTEN' geschickt. Dem Namen wird zur Kennzeichnung noch
der Taskname der Sendertask angehängt (dadurch können sich bei
Multi-User-Betrieb verschiedene Anwender mit gleichen Menukarten
namen nicht stören). Die Menukarte wird anschließend in jedem Fall
"frisch" angekoppelt. Außerdem bleibt die Menukarte (als benannter
Datenraum) in der Task erhalten!
(Mit dem Befehl 'handle menu' kann nun ein Menu aus der Menukarte
zur Ausführung gebracht werden oder mit 'anwendungstext' auf in die
Menukarte ausgelagerte Texte zugegriffen werden.)
Hinweis: Von Zeit zu Zeit muß der Systembetreuer die überflüssigen
Menukarten aus der Task 'gs-MENUKARTEN' entfernen, da die Anwender
aus Ihrer Task die Karten nicht löschen können!
Fehler: 'menutafelname' gibt es nicht!
'menutafelname' hat falsche(n) Typ/Bezeichnung (keine
gs-MENUKARTE)!
#ib#trennlinie#ie#
PROC trennlinie:
Zweck: Der Befehl wird bei der Generierung von Menukarten benötigt. Durch den
Befehl wird unter dem aktuellen Oberbegriff eine Trennlinie zur opti
schen Trennung einzelner Menupunkte eingetragen. Die Trennlinie belegt
den gleichen Platz wie eine Verarbeitungsfunktion.
Fehler: Zu viele Menupunkte in einem Pull-Down-Menu (maximal 15 incl. der
Trennlinien!).
#ib#textprozedur#ie#
PROC textprozedur (TEXT CONST dateiname,
prozedurname):
Zweck: Der Befehl wird benötigt, um Texte entsprechend der gs-DIALOG-Syntax
aufzuarbeiten. Der in die Datei 'dateiname' geschrieben Text wird bear
beitet. Die Prozedur eignet sich insbesondere dafür, Informationstexte
aufzuarbeiten, die zu den einzelnen Menufunktionen ausgegeben werden,
wenn der Benutzer die Tastenfolge <ESC><?> tippt (sehen Sie auch
'textzeile'). Der aufbereitete Text steht anschließend in der Datei 'datei
name.a'. Der Text ist in eine Textprozedur "verpackt", die den Namen hat,
der als zweiter Parameter übergeben wird.
Die Zeilen werden dabei so zugeschnitten, daß Sie in einer Box in das
aktuelle Menu eingeblendet werden können. Boxbreite und -höhe werden
automatisch gesetzt (max. 65 Zeichen breit und 14 Zeichen hoch)); die
Zeilen werden geblockt, sofern in der Datei keine Absatzmarkierung
(<RETURN>) am Ende der Zeile vorhanden ist. Soll eine Zeile zentriert
werden, so muß als erstes Zeichen der Zeile das Zeichen '%' notiert sein -
die Zeile muß durch eine Absatzmarke abgeschlossen sein. Textpassagen,
die invers (markiert) dargestellt werden sollen, müssen duch das Zeichen
'$' eingeleitet und durch das Zeichen '&' abgeschlossen werden. Markier
te Textpassagen dürfen (nach dem Zuschnitt!) nicht über Zeilengrenzen
hinausgehen!
Fehler: Datei 'dateiname' existiert nicht!
Fonttabelle 'fonttab.gs-Menu-Generator' existiert nicht! (Fonttabelle von
gs-Menu-Generator-Diskette in die Task 'configurator' laden!)
Text ist zu lang - bitte kürzen! (Text darf in aufbereiteter Form maximal
14 Zeilen umfassen!)
Zeilenformatierung mit <ESC> abgebrochen!
#ib#textzeile#ie#
PROC textzeile (TEXT CONST dateiname):
Zweck: Der Befehl wird benötigt, um Texte entsprechend der gs-DIALOG-Syntax
aufzuarbeiten. Der in die Datei 'dateiname' geschrieben Text wird bear
beitet. Die Prozedur eignet sich insbesondere dafür, anwendungsbezogene
Texte aufzuarbeiten, die in die Menukarte ausgelagert werden sollen
(sehen Sie auch 'textprozedur'). Der aufbereitete Text steht anschließend
in der Datei 'dateiname.a' in einer Zeile notiert.
#ib#waagerecht#ie#
TEXT PROC waagerecht:
Zweck: Liefert das Zeichen, das bei der Darstellung der "Kästen" als waagerechter
Strich (̇) ausgegeben wird.
PROC waagerecht (TEXT CONST zeichen):
Zweck: Durch diese Prozedur kann das Zeichen festgelegt werden, das bei Dar
stellung der "Kästen" als waagerechter Strich ausgegeben werden soll.
#ib#window#ie#
WINDOW PROC window (INT CONST x, y, xsize, ysize):
Zweck: Einer Fenstervariablen (WINDOW VAR name) wird die Lage und Größe
zugeordnet (über den Zuweisungsoperator ':='). Gleichzeitig wird das
Fenster initialisiert.
Mit den ersten beiden Parametern wird die Lage der linken oberen Ecke
des Fensters bestimmt (x: Spalte; y: Zeile). Mit 'xsize' wird die Fenster
breite, mit 'ysize' die Fensterhöhe festgelegt.
Das Fenster wird noch nicht(!) angezeigt (sehen Sie dazu 'show' und
'page'). Ein Rahmen wird nicht zum Fenster gezählt; er kann aber mit
der Prozedur 'show' ausgegeben werden. Ein Fenster darf nicht breiter als
80 und höher als 24 Zeichen sein. Umrahmte Fenster unterliegen weite
ren Einschränkungen (sehen Sie auch 'show'). Ein Fenster muß min
destens 6 Zeichen breit und 3 Zeichen hoch sein.
Fehler: 'Window' ungültig
#ib#write menunotice#ie#
PROC write menunotice (TEXT CONST notiztext,
INT CONST position):
Zweck: Die Prozedur dient dazu, innerhalb des Menus in einer Box einen "dauer
haften Informationstext" auszugeben. Die Box bleibt nämlich so lange
bestehen, bis sie explizit gelöscht (sehen Sie auch 'erase menunotice')
oder durch einen neuen Notiztext überschrieben wird. Wenn der Bild
schirm durch gs-DIALOG-Prozeduren überschrieben wird, wird die
Menunotiz ebenfalls ständig mitaufgefrischt und auch, wenn der Befehl
'regenerate menuscreen' oder 'refresh submenu' gegeben wird (Sehen Sie
im Gegensatz dazu auch 'menuinfo' ("kurzzeitiger Informationstext").
Im Menubildschirm erscheint der 'infotext' in einer Box. Boxbreite und
-höhe werden vom System automatisch anhand des übergebenen 'notiz
text'es festgelegt. 'notiztext' muß den gs-DIALOG-Syntax-Regeln (sehen Sie
Kap. 5.13) entsprechen. Mit 'position' wird die relative Lage der Box
innerhalb des Menubildschirms festgelegt (1, 2, 3, 4, 5: sehen Sie dazu
Kap. 5.12). In einem Menu kann zu einem Zeitpunkt nur eine Menunotiz
abgelegt werden. Durch ein erneutes 'write menunotice' wir eine beste
hende Menunotiz überschrieben.
#ib#yes#ie#
BOOL PROC yes (WINDOW VAR w, TEXT CONST frage):
Zweck: Vergl. 'menuwindowyes'. Hier wird nur zusätzlich das Fenster festgelegt,
das bei 'menuwindowyes' automatisch gesetzt wird.
|