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
|
PACKET ispauskunftseditorDEFINES auskunftstextaendernvp,
auskunftstextaendernnp,auskunftstextspeichern:LET dateiname=
"Auskunftstext zur Auskunft ";LET editorfenster=77,eol="�",stop="�";TEXT VAR
datnam;PROC auskunftstextaendernvp:datnam:=dateiname+sicherungauskunftsname;#
FILE VAR dat:=sequentialfile(output,datnam);#store(FALSE );IF
sicherungauskunftstext<>""THEN auskunftindatei(datnam,sicherungauskunftstext)
FI ;wordwrap(TRUE );page;editiere(datnam,"s",FALSE ).END PROC
auskunftstextaendernvp;PROC auskunftstextaendernnp:store(FALSE );
editierewieeingestelltEND PROC auskunftstextaendernnp;PROC
auskunftstextspeichern(PROC (INT CONST )spezerfassungauskuenfte,BOOL CONST
speichern):originalsituation;IF speichernTHEN TEXT VAR t;auskunftintext(
datnam,t);#putwert(fnrauskunftstext,t);#zwischenspeicherungdestextes(t);FI ;
forget(datnam,quiet);return(1);angegebenedatenpruefenundevtlspeichern(
speichern,PROC spezerfassungauskuenfte);END PROC auskunftstextspeichern;PROC
auskunftintext(TEXT CONST datnam,TEXT VAR auskunft):FILE VAR dat:=
sequentialfile(input,datnam);TEXT VAR zeile;IF eof(dat)THEN close(dat);
auskunft:=""ELSE auskunft:="";REP getline(dat,zeile);auskunft:=auskunft+
encode(zeile);UNTIL eof(dat)PER ;FI END PROC auskunftintext;PROC
auskunftindatei(TEXT CONST datnam,TEXT CONST te):FILE VAR dat:=sequentialfile
(output,datnam);TEXT VAR zeile,auskunft:=te;INT VAR bottom:=1,top:=1;INT VAR
l:=length(auskunft);formatierezeile;REP schreibe;formatierezeile;UNTIL (top>=
l)CAND (zeile="")PER .formatierezeile:zeile:="";IF bottom>=lTHEN zeile:=""
ELSE top:=min(bottom+editorfenster-1,l);zeile:=subtext(auskunft,bottom,top,
eol,stop,FALSE );topINCR 1;bottom:=topFI .schreibe:putline(dat,zeile).END
PROC auskunftindatei;PROC originalsituation:reorganizescreen;store(TRUE )END
PROC originalsituation;END PACKET ispauskunftseditor;
|