summaryrefslogtreecommitdiff
path: root/app/flint/0.4/src/MENUE.gen
blob: 327438cca587175e70302019944f3d310873094c (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
page;
putline ("Generierung MENUE 0.5");
BOOL CONST box := yes ("Mit IBM Grafikzeichen");
BOOL CONST l3 := maxint DIV 2 > 17000;
TASK VAR dummy, ar;
IF l3 THEN ar := /"EUMEL" ELSE ar := archive END IF;
INT VAR kanal := channel;
fetch ("eudas.satzzugriffe", ar);
fetch ("eudas.fenster", ar);
fetch ("eudas.menues", ar);
fetch ("offline.1", ar);
fetch ("eudas.1", ar);
fetch ("eudas.2", ar);
fetch ("eudas.3", ar);
fetch ("eudas.dialoghilfen", ar);
fetch ("flint.init", ar);
IF yes ("Ggf zweites Archiv eingelegt") THEN END IF;
fetch ("eudas.steuerung", ar);
fetch ("eudas.init", ar);
fetch ("klartextbelegung", ar);
fetch ("editormenue", ar);
fetch ("eudas.manager", ar);
fetch ("flint.manager", ar);
fetch ("flint", ar);
IF l3 THEN fetch ("isub.replace", ar) END IF;
IF box THEN fetch ("boxzeichen", ar) END IF;
release (ar);
check off;
IF l3 THEN do (PROC (TEXT CONST) reorganize, all) END IF;
IF l3 THEN insert ("isub.replace"); forget ("isub.replace", quiet) END IF;
insert ("eudas.satzzugriffe"); forget ("eudas.satzzugriffe", quiet);
insert ("eudas.fenster"); forget ("eudas.fenster", quiet);
insert ("eudas.menues"); forget ("eudas.menues", quiet);
IF l3 THEN
  TEXT VAR zeile; FILE VAR f;
  f := sequential file (modify, "offline.1");
  to line (f, 1);
  read record (f, zeile);
  INT CONST pp := pos (zeile, ",PROCA");
  change (zeile, pp, pp + 7, "");
  write record (f, zeile)
END IF;
insert ("offline.1"); forget ("offline.1", quiet);
IF box THEN run ("boxzeichen"); forget ("boxzeichen", quiet) END IF;
do ("ausfuehrtaste (""""13"""")");
begin ("FLINT", PROC flint init, dummy);
do ("global manager");

PROC flint init :

  disable stop;
  fetch ("eudas.init");
  fetch ("flint.init");
  continue (kanal);
  command dialogue (FALSE);
  page;
  i ("eudas.1");
  i ("eudas.2");
  i ("eudas.3");
  i ("eudas.dialoghilfen");
  i ("eudas.steuerung");
  i ("klartextbelegung");
  i ("editormenue");
  i ("eudas.manager");
  i ("flint.manager");
  i ("flint");
  do ("menue loeschen (FALSE)");
  do ("menuedaten einlesen (""eudas.init"")");
  forget ("eudas.init", quiet);
  erase ("eudas.init");
  do ("menuedaten einlesen (""flint.init"")");
  forget ("flint.init", quiet);
  erase ("flint.init");
  erase ("MENUE.gen");
  command dialogue (TRUE);
  check on;
  do ("begin (""OP"", ""OPMENUE"")");
  do ("global manager")

END PROC flint init;

PROC i (TEXT CONST name) :

  fetch (name);
  insert (name);
  IF is error THEN
    put error; clear error; pause (1000); do ("global manager")
  END IF;
  forget (name);
  erase (name)

END PROC i;