summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2003-03-26 14:50:49 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2003-03-26 14:50:49 +0000
commitfb2dbe00e9998f0733fd42729dd96fbbd07fc1b4 (patch)
treefb3543107f654eb590283803c361d02644b4dbab
parente283533c78f713003e15853ac143460d513ecd39 (diff)
MWS_SRX644: migrate branch mws_srx644 -> HEAD
-rw-r--r--rsc/doku/feinkonz.43/rsc.doc4096
-rw-r--r--rsc/doku/feinkonz.43/rscerror.doc2119
-rw-r--r--rsc/doku/feinkonz.43/rscinst.doc4138
-rw-r--r--rsc/doku/schriftw.16/change.doc1105
-rw-r--r--rsc/source/parser/rscicpx.cxx12
-rw-r--r--rsc/source/parser/rsclex.hxx68
-rw-r--r--rsc/source/rscpp/cpp1.c9
-rw-r--r--rsc/source/rscpp/cppdef.h8
-rw-r--r--rsc/source/rscpp/makefile.mk5
-rw-r--r--rsc/source/tools/rscchar.cxx13
10 files changed, 11484 insertions, 89 deletions
diff --git a/rsc/doku/feinkonz.43/rsc.doc b/rsc/doku/feinkonz.43/rsc.doc
new file mode 100644
index 000000000000..5727feb5b6f0
--- /dev/null
+++ b/rsc/doku/feinkonz.43/rsc.doc
@@ -0,0 +1,4096 @@
+.\\\ WRITER 6 \\\
+C:\ALMUT\SV\SVREF5.LAY
+R:\SW55N\TREIBER\PS.GPM
+12
+00000
+00010
+01463
+00001
+00001
+00001
+00002
+00002
+00000
+00000
+00000
+00000
+MM
+User Doku
+RSC
+RSC-Beschreibung
+
+
+
+
+
+
+0
+11905
+8390
+0
+0
+JA
+3
+75
+0
+20
+0
+0
+0
+0
+0
+0
+0
+JA
+
+
+
+6
+16
+29
+courier 9.5
+C1
+33
+19
+0
+
+Helvetica 14 Pt Fett
+F1
+65
+28
+2
+
+Helvetica 12 Pt Fett
+F2
+65
+24
+2
+
+Helvetia 10 Pt Fett
+F3
+65
+20
+2
+
+Times 10
+T1
+97
+20
+0
+
+Courier 7
+C2
+33
+14
+0
+
+Grund - Absatzlayout
+GA
+0
+0
+0
+0
+5
+97
+20
+0
+0
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Listing
+LI
+0
+0
+0
+0
+1
+33
+19
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+432
+0
+0
+1008
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+7632
+0
+0
+8352
+0
+0
+Funktionsparameter
+FP
+0
+2449
+0
+0
+5
+97
+20
+0
+0
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+8
+2448
+0
+0
+3024
+0
+0
+3600
+0
+0
+4176
+0
+0
+4752
+0
+0
+5328
+0
+0
+5904
+0
+0
+6480
+0
+0
+Unterberschrift
+F1
+0
+0
+0
+0
+4
+65
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Punktliste
+PL
+0
+289
+0
+0
+5
+97
+20
+0
+0
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+288
+0
+0
+šberschrift Klasse
+U1
+0
+0
+0
+0
+2
+65
+28
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+1
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift Methode
+U0
+0
+0
+0
+0
+2
+65
+24
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Kopfzeile rechts
+KR
+0
+0
+0
+0
+4
+65
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7920
+1
+0
+Kopfzeile links
+KL
+0
+0
+0
+0
+4
+65
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+6916
+1
+0
+Fuázeile linksbndig
+FL
+0
+0
+0
+0
+4
+65
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+5952
+1
+0
+Fuázeile rechtsbndig
+FR
+0
+0
+0
+0
+4
+65
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+0
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+6768
+1
+0
+Linie linksbndig
+LL
+0
+0
+0
+0
+4
+65
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+0
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7920
+1
+0
+Linie rechtsbndig
+LR
+0
+0
+0
+0
+4
+65
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+0
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7920
+1
+0
+Tabelle
+TB
+0
+0
+0
+0
+6
+33
+14
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+120
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+rechtsbndiger Fuástrich
+RS
+0
+0
+0
+0
+4
+65
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+5952
+1
+0
+linksbndiger Fuástrich
+LS
+0
+0
+0
+0
+4
+65
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+238
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+5952
+1
+0
+Starlab-Layout
+GS
+566
+440
+850
+566
+1133
+680
+0
+0
+1
+NEIN
+0
+0
+
+Akl#_PFAD##_TEXTNAME# ,-#_S#-
+All______________________________________________________________
+
+Als______________________________________________________________
+Afl$Date: 23 Jan 1992 14:42:12 $
+Afr4$Revision: 1.25 $
+
+Resource linke Seite
+L2
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklResource
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+Resource rechte Seite
+L3
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr=Resource
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+Resourcecompiler linke Seite
+L4
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklResourcecompiler
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+Resourcecompiler rechte Seite
+L5
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr4Resourcecompiler
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+ResOwner linke Seite
+L6
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklResOwner
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+ResOwner rechte Seite
+L7
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr<ResOwner
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+ScrollBar linke Seite
+L8
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklScrollBar
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+ScrollBar rechte Seite
+L9
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr=ScrollBar
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+SingleLineEdit linke Seite
+M0
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklSingleLineEdit
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+SingleLineEdit rechte Seite
+M1
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr8SingleLineEdit
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+SysMessBox linke Seite
+M2
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklSysMessBox
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+SYsMessBox rechte Seite
+M3
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr:SysMessBox
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+System linke Seite
+M4
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklSystem
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+System rechte Seite
+M5
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr?System
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+SystemWindow linke Seite
+M6
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklSystemWindow
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+SystemWindow rechte Seite
+M7
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr7SystemWindow
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+Timer linke Seite
+M8
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklTimer
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+Timer rechte Seite
+M9
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr@Timer
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+VirtualDevice linke Seite
+N0
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklVirtualDevice
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+VirtualDevice rechte Seite
+N1
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr9VirtualDevice
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+VirtualPrinter linke Seite
+N2
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklVirtualPrinter
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+VirtualPrinter rechte Seite
+N3
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr9VirtualPrinter
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+VScrollBar linke Seite
+N4
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklVScrollBar
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+VScrollBar rechte Seite
+N5
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr<VScrollBar
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+WarningBox linke Seite
+N6
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklWarningBox
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+WarningBox rechte Seite
+N7
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr:WarningBox
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+WinBits linke Seite
+N8
+566
+440
+850
+566
+1133
+680
+0
+2
+1
+NEIN
+0
+0
+
+AklWinBits
+All______________________________________________________________
+
+Ars______________________________________________________________
+Afl-#_S#-
+Afr3StarView - Referenz
+
+WinBits rechte Seite
+N9
+566
+440
+850
+566
+1133
+680
+0
+1
+1
+NEIN
+0
+0
+
+Akr>WinBits
+Alr______________________________________________________________
+
+Als______________________________________________________________
+Afl(c) 1990/1991 StarDivision
+Afr@-#_S#-
+
+
+
+
+0
+
+0
+
+SkfAga
+
+
+
+
+
+
+
+
+
+Au0 #_KATEGORIE#
+Aga
+
+Au0 #_THEMA2#
+Aga
+
+Au0
+Aga
+
+
+
+
+
+
+
+
+
+
+
+
+Au0 #_AUTOR#
+Aga
+
+Au0 STAR DIVISION / STAR LAB Hamburg
+Aga
+
+Au0 Stand: $Date: 23 Jan 1992 14:42:12 $
+Aga
+
+Sgs
+ SkfAgaPA
+
+
+Au0#_KATEGORIE#
+Aga
+
+
+AfpDokumentenname #_THEMA2#
+Aga
+AfpProjektname #_THEMA1#
+Aga
+AfpVersionsnummer $Revision: 1.25 $
+Aga
+
+Afperstellt 31. Juli 1990
+Aga
+Afpge„ndert $Date: 23 Jan 1992 14:42:12 $
+Aga
+
+AfpDateiname #_PFAD##_TEXTNAME#
+Aga
+
+AfpAutor #_AUTOR#
+Aga
+AfpBearbeiter $Author: MM $
+Aga
+AfpQualit„tskontrolle
+Aga
+
+AfpStatus XX in Arbeit
+Afp __ fertiggestellt
+Afp __ abgenommen
+Afp __ freigegeben
+Aga
+
+AfpVertraulich __ Ja XX Nein
+Aga
+
+AfpCopyright (C) Star Division 1990
+Aga
+Sgs
+ SivAu0PA
+
+Au0Inhaltsverzeichnis
+Aga
+StarView Resourcecompiler 4
+Einleitung 4
+Bekannte Fehler 4
+Systemabh„ngigkeiten 4
+Installationshinweise 5
+rsc-Kommandozeile 5
+rsc-Preprocessor 7
+Default Preprozessor 8
+Einfaches Beispiel 9
+Syntax 16
+Klassen-Erkl„rung: Resource -> StarView 18
+Spezielle Syntax-Konstrukte 59
+Stichwortverzeichnis 63
+
+SgsAiv
+Aga
+ Au1paStarView Resourcecompiler
+Aga
+
+Au1Einleitung
+Aga
+Diese Beschreibung gilt fr den Resourcecompiler in der Version 1.21.
+
+Der StarView Resourcecompiler ( rsc ) dient dazu, die systemunabh„ngigen Resourcen
+in den Beschreibungsdateien in systemabh„ngige Beschreibungsdateien zu berfhren,
+die dann mit den systemabh„ngigen Resourcecompilern effizient (Laufzeit) in bin„re
+Resourcen bersetzt werden.
+
+
+Au1Bekannte Fehler
+Aga
+Apl- Unter Unix (Motif) werden noch keine Icons, Bitmaps und Pointer untersttzt.
+- Die TMP-Environmentvariable darf keinen "\" am Ende haben (MS-DOS).
+- Unter MS-DOS wird die ".rc"-Datei nicht gel”scht.
+- Der rscpp gibt die Zeilennummern nicht richtig aus.
+- Unter Unix und MAC darf die src-Datei am Ende kein ^Z haben.
+Aga
+
+Au1Systemabh„ngigkeiten
+Aga
+Die Resource-Scriptdatei (".src") ist bis auf die Typen Icon, Bitmap und Pointer unab
+h„ngig. Jede Resource dieser drei Typen steht in einer eigenen Datei. Ob das Format
+oder die Version korrekt sind, wird durch den systemabh„ngigen Resourcecompiler
+(rc, uid, rez) entschieden.
+
+Die Pfadnamen in den Include-Anweisungen sind systemabh„ngig. Unter MS-DOS ist
+der Pfadname z.B. "..\..\..", unter Unix ist er z.B. "../../.." und unter dem Betriebssystem
+des Macintosh z.B. ":: ".
+
+Die erstellten Resourcedateien sind nicht nur betriebssystemabh„ngig, sondern auch
+processor- bzw. compilerabh„ngig. Dies betrifft die L„nge des int und die Darstellung
+(Drehungen) von ganzzahligen Datentypen.
+
+Die Default-Resourcedatei ist unter MS-Windows die ausfhrbare Datei, unter Unix
+(Motif) die ausfhrbare Datei mit der Extension ".res" und unter Macintosh noch nicht
+festgelegt.
+
+ Au1paLieferumfang
+Aga
+Dateien fuer den Macintosh:
+ rsc, rsc2, rscpp.
+Dateien fuer Motif:
+ rsc, rsc2, rscpp.
+Dateien fuer MS-DOS:
+ rsc.exe, rsc2.exe, rsc2r.exe, rsc2z.exe, rscpp, zpm.exe.
+
+Au1Installationshinweise
+Aga
+Beim Aufruf des rsc mssen der Preprocessor rscpp, der Parser rsc2 sowie der
+systemabh„ngige Resourcecompiler rc.exe fr MSC-Windows unter MS-DOS, uid fr
+Motif unter Unix und rez auf dem Macintosh im Zugriffspfad liegen. Der Preprozessor
+kann durch einen eigenen ersetzt werden, wenn er den Schnittstellenanforderungen
+gengt (siehe rsc-Preprocessor).
+Aga
+
+Au1rsc-Kommandozeile
+Aga
+Af1Syntax der Kommandozeile
+Aga
+Alirsc [<Schalter>...] <Quelldateiliste>
+rsc @<Kommandodatei>
+Aga
+Af1Schalter
+Aga
+Der rsc akzeptiert folgende Schalter:
+Aga
+-h   Zeigt eine Hilfe fr die Kommandozeile an.
+Aga-p   Es wird kein Preprozessor aufgerufen. Weiteres siehe "Default
+   Preprozessor".
+-s   Es wird eine Syntaxanalyse durchgefhrt und eine ".srs"-Datei
+   geschrieben.
+-l   Es wird eine Syntaxanalyse durchgefhrt, der Preprocessor wird
+   nicht aufgerufen. Es wird eine ".rc"-Datei geschrieben. Dann
+   wird der systemabh„ngige Resourcecompiler aufgerufen und
+   eine ".res"-Datei erzeugt.
+-r   Der systemabh„ngige Resourcecompiler wird nicht aufgerufen.
+-d<Symbol>  Es wird ein Symbol definiert.
+-i<Pfad>  Der Include-Pfad fr den Preprocessor wird erweitert.
+-fl<Dateiname> Mit diesem Schalter wird eine Listing-Datei angegeben. In diese
+   Datei werden Fehlermeldungen ausgegeben.
+-fo<Dateiname> Žndert den Namen der ".res"-Datei. Der Defaultname ist der
+   erste Name in der Quelldateiliste. Dieser Name bekommt die
+   Extension ".res". Die ".res"-Datei ist die vom Resourcecompiler
+   erzeugte bin„re Datei.
+-fs<Dateiname> Žndert den Namen der ".rc"-Datei. Der Defaultname ist der erste
+   Name in der Quelldateiliste. Dieser Name bekommt die
+   Extension ".rc". Die ".rc"-Datei ist die vom Resourcecompiler
+   erzeugte systemabh„ngige Beschreibungsdatei.
+-fp<Dateiname> Žndert den Namen der ".srs"-Datei. Der Defaultname ist der erste
+   Name in der Quelldateiliste. Dieser Name bekommt die
+   Extension ".srs". Die ".srs"-Datei ist eine symbolfreie
+   Beschreibungsdatei.
+-fc<Dateiname> In diese Datei werden die Resource-Konstruktoren der in der
+   Beschreibungsdatei spezifizierten Klassen geschrieben. Die
+   Sprache ist C++.
+-fh<Dateiname> In diese Datei werden die Deklarationen der in der
+   Beschreibungsdatei spezifizierten Klassen geschrieben. Die
+   Sprache ist C++.
+-WIN   Es wird eine MS-Windows-Resourcedatei erstellt.
+-MTF   Es wird eine Motif-Resourcedatei erstellt.
+-MAC   Es wird eine Mac-Resourcedatei erstellt.
+-REFDEEP<Zahl> Die Zahl gibt an wie Tief der rsc-Compiler beim aufl”sen von
+   Referenzen gehen soll. Der Default ist 10, das heiát der Compiler
+   l”st verschachtelungen von Referenzen bis 10 auf.
+Aga
+Af1Kommandodatei
+Aga
+Die Kommandodatei hat folgende Syntax:
+Aga
+Ali[<Schalter>...] <Quelldateiliste>
+Aga
+Af1Beispiele
+Aga
+AliKommando: rsc test
+Aga
+Wirkung: Quelldatei heiát "test.src".
+Ae2Die vom Preprocessor erzeugte Datei heiát "test.srs".
+Die vom rsc-Compiler erzeugte Datei heiát "test.rc".
+Die vom systemabh„ngigen Compiler erzeugte Datei heiát "test.res".
+
+AliKommando: rsc -s -fpTest.srs Test1 Test2 Test3
+Aga
+Wirkung: Es wird nur eine Syntaxanalyse durchgefhrt.
+Ae2Die Quelldateien heiáen "Test1.src", "Test2.src" und "Test3.src".
+AgaDie vom Preprocessor erzeugte Datei heiát "Test.srs".
+ AgaWeitere Dateien werden nicht erzeugt.
+
+AliKommando: rsc -l test
+Aga
+Wirkung: Quelldatei heiát "test.srs".
+Ae2Der Preprocessor wird nicht benutzt.
+Die vom rsc-Compiler erzeugte Datei heiát "test.rc".
+Die vom systemabh„ngigen Compiler erzeugte Datei heiát "test.res".
+Aga
+ Au1parsc-Preprocessor
+Aga
+Af1Kommandozeile
+Aga
+AgaDie Kommandozeile hat folgende Syntax:
+
+Alirscpp [<Schalter>...] Quelldatei Zieldatei
+Aga
+Af1Schalter
+Aga
+-C   Entfernt die Kommentare nicht( //, /* ... */ ).
+-D<Symbolname> Hat die gleiche Wirkung wie #define Symbolname in der Datei
+   selbst.
+-I<Pfadname> Gibt an, in welchen Verzeichnissen nach Include-Dateien gesucht
+   werden soll.
+
+Af1Preprocessor-Anweisungen
+Aga
+Der Preprocessor muá folgende Anweisungen verarbeiten k”nnen:
+
+#define  Definiert ein Symbol.
+#undef  Nimmt die Definition eines Symbols zurck.
+#if, #ifdef,
+#ifndef, #elif,
+#else und #endif Bedingte šbersetzung.
+#include  Eine Datei einschieben.
+
+ Au1paDefault Preprozessor
+Aga
+Der "Default Preprozessor" erkennt nur die Schlsselw”rter #define und #include.
+Groá- und Kleinschreibung wird ignoriert.
+Hinter dem Schlsselwort #define muá eine Zahl definiert werden. Hierzu drfen
+vorher mit dem Schlsselwort #define definierte Namen verwendet werden. Defines
+drfen nicht an beliebiger Stelle in der Datei stehen.
+Hinter dem Schlsselwort #include muá ein Dateiname angegeben werden. Der Name
+steht in spitzen Klammern oder in Anfhrungszeichen. Beide Formate werden gleich
+interpretiert. Includedateien innerhalb von Includedatei werden ignoriert. Die
+Includedateien werden in der Reihenfolge in der sie auftreten abgearbeitet. Sie werden
+immer vor der Datei abgearbeitet, in der sie definiert sind.
+Eine Datei die nur mit dem "Default Preprozessor" bersetzt wird, kann mit dem
+Designeditor bearbeitet werden.
+ Au1paEinfaches Beispiel
+Aga
+Szenario: Es soll ein kurzes Programm geschrieben werden, um zu sehen, wie das
+StarView-Resourcesystem arbeitet. Das Programm heiát "ownrc".
+
+Af1Sourcedatei "ownrc.cxx".
+Aga
+Ali/**********************************************************
+/# Programm zum Anzeigen einer Dialogbox aus der Resource
+/# Dateiname: ownrc.cxx
+/# Autor: MM
+/# Datum: 31.07.90
+**********************************************************/
+/******************* I N C L U D E S *********************/
+#include <solar.h>
+#include <tools.hxx>
+#include <sv.hxx>
+#include <ownrc.hrc> // Identifier der Dialogbox
+
+/******************* C L A S S E S **********************/
+class MyApplication : public Application
+{ // Meine Applikationsklasse
+public:
+ void Main( int argc, char* argv[] );
+};
+
+class MyDialog : public ModelessDialog
+{ // Dialogbox mit einem Flash- und Cancel-Button.
+ PushButton aPB_Flash;
+ PushButton aPB_Cancel;
+public:
+ // Der Konstruktor mit ResId zeigt an, daá MyDialog aus
+ // der Resource geladen wird.
+ MyDialog( Window* pParent, ResId & rResId );
+ void FlashBtnHdl ( Button* );
+ void CancelBtnHdl( Button* );
+};
+
+ paclass MyWindow : public WorkWin
+{
+public:
+ MyWindow( Window* pParent, WinBits aWinStyle ) :
+  (pParent, aWinStyle)
+ {
+  // Es wird eine Dialogbox aus der Resource geladen.
+  new MyDialog( this, ResId( DLG_CANCEL ));
+ };
+};
+/*************** G L O B A L V A R I A B L E S ******/
+MyApplication MyApp; // Applikationsinstanz
+
+/******************* C O D E *****************************/
+/******************* M y Ap p l i c a t i o n **********/
+/*********************************************************/
+|*
+|* MyApplication::Main()
+|*
+|* Beschreibung: Virtuelle Methode, die vom System
+|*   gerufen wird, um das Programm zu
+|*   starten.
+|* Ersterstellung: MM 01.08.90
+|* Letzte Aenderung: MM 03.06.91
+|*
+**********************************************************/
+void MyApplication::Main( int, char* argv[] )
+{
+ // Applikationsfenster erzeugen.
+ MyWindow aCancel( NULL, WinBits( WB_APP | WB_MOVEABLE |
+        WB_SIZEABLE |
+        WB_MINMAX |
+        WB_CLOSEABLE ));
+ // Applikationsfenster anzeigen.
+ aCancel.Show();
+ // Event-Schleife des Fenstersystems starten.
+ Execute();
+}
+
+ pa/**********************************************************
+|*
+|* MyDialog::MyDialog()
+|*
+|* Beschreibung: Konstruktor der Klasse MyDialog.
+|*   Dies ist ein typischer Konstruktor,
+|*   um Objekte aus der Resource zu
+|*   laden.
+|*   1. rResId.Lock(), die Resource wird
+|*   gelockt.
+|*   2. aPB_Flash( this, ResId( PB_FLASH ));
+|*   Es wird der Flash-Button geladen.
+|*   3. aPB_Cancel( this, ResId( PB_Cancel ));
+|*   Es wird der Cancel-Button geladen.
+|*   4. rResId.Unlock(), ein Unlock auf
+|*   die Resource.
+|*   Wurde von keiner abgeleiteten Klasse
+|*   ein Lock ausgefhrt, dann wird die
+|*   Resource an dieser Stelle freigegeben.
+|* Ersterstellung: MM 01.08.90
+|* Letzte Aenderung: MM 03.06.91
+|*
+**********************************************************/
+MyDialog::MyDialog( Window* pParent, ResId & rResId ) :
+    ( pParent, rResId.Lock()),
+     aPB_Flash( this, ResId( PB_FLASH )),
+     aPB_Cancel( this, ResId( PB_CANCEL ))
+{
+ // Handler setzen.
+ aPB_Flash.ChangeClickHdl
+  ( LINK( this, MyDialog::FlashBtnHdl ));
+ aPB_Cancel.ChangeClickHdl
+  ( LINK( this, MyDialog::CancelBtnHdl ));
+
+ rResId.Unlock(); // Resource freigeben.
+}
+ pa/*********************************************************
+|* MyDialog::CancelBtnHdl()
+|*
+|* Beschreibung:  Die Dialogbox wird zerst”rt.
+|* Ersterstellung: MM 01.08.90
+|* Letzte Aenderung: MM 14.08.90
+*********************************************************/
+void MyDialog::CancelBtnHdl( Button* )
+{
+ // Das L”schen der Dialogbox ist schneller, wenn sie
+ // vorher nicht mehr sichtbar ist.
+ Hide();
+ // Zerst”ren der DialogBox-Instanz.
+ delete this;
+}
+
+/**********************************************************
+|* MyDialog::FlashBtnHdl()
+|*
+|* Beschreibung: Die Titlebar der Dialogbox flackert
+|*   einmal.
+|* Ersterstellung: MM 01.08.90
+|* Letzte Aenderung: MM 14.08.90
+**********************************************************/
+void MyDialog::FlashBtnHdl( Button* )
+{
+ FlashWindow();
+}
+Aga
+Af1Resource-Headerdatei
+Aga
+Ali/**********************************************************
+|* Headerdatei fuer ownrc.src
+|* Dateiname: ownrc.hxx
+|* Autor: MM
+|* Datum: 31.07.90
+*********************************************************/
+#define DLG_CANCEL 300
+#define PB_FLASH  1
+#define PB_CANCEL  2
+#define DLG_PROTOTYPE 301
+Aga
+ Af1paResource-Beschreibungsdatei
+Aga
+Ali/**********************************************************
+|* Resourcedatei fuer ownrc.cxx
+|* Dateiname: ownrc.src
+|* Autor: MM
+|* Datum: 31.07.90
+**********************************************************/
+#include <ownrc.hrc>
+
+MODELESSDIALOG DLG_PROTOTYPE
+{
+ Pos  = Map_Pixel( 50, 60 );
+ Size = Map_SysFont( 100, 100 );
+ TEXT = "Markus zweite Dialogbox";
+ MOVEABLE = TRUE;
+ SIZEABLE = TRUE;
+ CLOSEABLE = TRUE;
+
+ // Diese Objekte werden automatisch angezeigt.
+ WinChilds =
+ {
+  PUSHBUTTON
+  {
+   PosSize = ( 10, 50, 100, 30 );
+   TEXT = "Ok";
+   TABSTOP = TRUE;
+  };
+  PUSHBUTTON
+  {
+   Pos  = ( 130, 50 );
+   Size = ( 100, 30 );
+   TEXT = "Cancel";
+   TABSTOP = TRUE;
+  };
+ };
+};
+ paMODELESSDIALOG DLG_CANCEL
+{
+ PosSize = ( 50, 60, 100, 100 );
+ TEXT = "Markus erste Dialogbox";
+ MOVEABLE = TRUE;
+ SIZEABLE = TRUE;
+
+ PUSHBUTTON PB_FLASH
+ {
+  PosSize = ( 10, 50, 100, 30 );
+  TEXT  = "Flash";
+  TABSTOP = TRUE;
+ };
+
+ PUSHBUTTON PB_CANCEL
+ {
+  PosSize = ( 130, 50, 100, 30 );
+  TEXT  = "Abbrechen";
+  TABSTOP = TRUE;
+ };
+
+ // Ueber solche Konstruktionen koennen Objekte in der
+ // Resource automatisch angezeigt werden.
+ WinChilds =
+ {
+  MODELESSDIALOG , DLG_PROTOTYPE;
+ };
+};
+Aga
+ Af1paMakefile
+Aga
+Wie die Dateien gebildet werden, ist dem StarView-Handbuch und den dazugeh”rigen
+Beispielen zu entnehmen. Der Aufruf des Resourcecompilers lautet in diesem Fall:
+Aga
+Aliownrc.res: ownrc.src ownrc.hrc
+ rsc -fsownrc.rc -fpownrc.srs
+  -foownrc.res -flownrc.lst ownrc.src
+Aga
+Agaownrc.src ist die Eingabedatei des rsc-Compilers.
+ownrc.srs ist ein Zwischenformat des rsc-Compilers.
+ownrc.lst ist die Listingdatei des rsc-Compilers.
+ownrc.rc ist die Textdatei, die als Eingabe des systemspezifischen Compilers dient.
+ownrc.res ist die bin„re Resourcedatei.
+
+Speziell fr MS-Windows gilt, daá die Resourcedatei an die ".exe"-Datei angebunden
+werden kann.
+Aga
+Ali rc -k ownrc.res ownrc.exe
+Aga
+AgaMit dieser Zeile wird die Resource an die ".exe"-Datei angebunden.
+Aga
+ Au1paSyntax
+Aga
+Af1Compiler Anweisungen
+Aga#pragma CHARSET IBMPC
+#pragma CHARSET ANSI
+#pragma CHARSET MAC
+Mit diesen Optionen kann angegeben werden, in welchem Zeichensatz die Strings
+vorliegen. Der Compiler nimmt dann eine Konvertierung in das Zielsystem vor. Als
+Default wird vorausgesetzt, daá die Datei im Zeichensatz des Zielsystems vorliegt.
+
+Af1Default Preprozessor-Syntax
+AliPrepDefinition:
+  { IncludeDefinition }
+  [{ DefineDefinition }]
+
+IncludeDefinition:
+  '#' include '<' Dateiname '>' |
+  '#' include String
+Ali
+DefineDefinition:
+  '#' define SYMBOL NumberExpression
+
+Af1Klass-Syntax
+AliResourceDefinition:
+Ali  [ PrepDefinition ]
+  { ClassDefinition }
+
+ClassDefinition:
+  ClassHeader ClassBody ';'
+  ClassHeader ';' |
+  NumberExpression ';' |
+  TupelExpression ';' |
+  CONSTNAME ';' |
+  Boolean ';' |
+  String ';'
+
+ClassHeader:
+  CLASSNAME [ Identifier ] [ ',' | '<' Identifier ]
+ pa
+ClassBody:
+ '{'
+  {
+   ClassDefinition |
+   VariableDefiniton
+  }
+ '}'
+
+VariableDefinition:
+  VARIABLENAME '=' ClassDefinition |
+  VARIABLENAME '=' '{' { ClassDefinition } '}' ';'
+
+TupelExpression:
+ [ ClassDefinition ] '(' { ClassDefinition } ')'
+
+NumberExpression:
+  [ '-' | '+' ] Number |
+  NumberExpression '+' | '-' | '*' | '/'
+  NumberExpression |
+  [ '-' | '+' ] '(' NumberExpression ')'
+
+Identifier:
+  NumberExpression |
+  Symbol
+
+Number:
+  { DEZIMALZIFFER } |
+  '0' 'x' { HEXADEZIMALZIFFER }
+
+Boolean:
+  TRUE | FALSE
+
+AgaString:
+Aga  Mit "\57" k”nnen bestimmte Zeichenwerte angegeben werden.
+  Der Backslash wird durch "\\" und das Anfhrungszeichen durch "\""
+  angegeben. Die Zahl hinter dem Backslash wird Oktal interpretiert.
+Aga
+ Au1paKlassen-Erkl„rung: Resource -> StarView
+Aga
+In diesem Abschnitt wird anhand von vollst„ndigen Beispielen erkl„rt, was fr Daten
+in welchen StarView-Klassen in der Resource definiert werden k”nnen.
+
+Die Resource ist wie StarView hierarchisch aufgebaut. Das heiát, alles in einer h”heren
+Hierarchiestufe Enthaltene wird in eine tiefere bertragen. Die Namen im nach
+folgenden Diagramm sind die Namen der Schlsselw”rter in der Resource, mit Aus
+nahme von SystemWindow und Edit.
+
+Af1Hierarchie:
+Aga
+AgaResource
+ String
+ Icon
+ Bitmap
+ Pointer
+ Brush
+ Color
+ Font
+ Pen
+ MapMode
+ Accelerator
+ AcceleratorKey
+ Menu
+ MenuItem
+ MessBox
+  SysMessBox
+  InfoBox
+  WarningBox
+  ErrorBox
+  QueryBox
+ OutputDevice
+  Window
+   [SystemWindow]
+    WorkWindow
+     MDIWindow
+    [Dialog]
+     ModelessDialog
+     ModalDialog
+   Control
+    Button
+     CheckBox
+      AutoCheckBox
+     PushButton
+      DefPushButton
+     RadioButton
+      AutoRadioButton
+     TriStateBox
+      AutoTriStateBox
+    [Edit]
+     SingleLineEdit
+     MultiLineEdit
+    ScrollBar
+     AutoScrollBar
+    ListBox
+     DropDownListBox
+     ComboBox
+      DropDownComboBox
+    FixedText
+    FixedIcon
+    FixedBitmap
+    GroupBox
+
+Alle Daten, die in Button angegeben werden, k”nnen auch in PushButton oder
+CheckBox angegeben werden. Entsprechendes gilt z.B. fr Daten in ListBox, die auch
+in ComboBox angegeben werden k”nnen. Eine genauere Erkl„rung folgt nach den
+Erl„uterungen der einzelnen Resourcetypen.
+Aga
+ Af1paResource Resource
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Resource.
+
+AgaBeispiel:
+Aga
+Ali Resource
+ {
+  Comment = "Dies ist ein Kommentar.";
+  SingleLineEdit 1
+  {
+   Text = "Editfeld";
+  };
+  PushButton 1
+  {
+   Check = TRUE;
+  };
+  String 1 "Vorname";
+  String 2 "Nachname";
+  String 3 "Adresse";
+  String 4 "Telefon";
+  // Zwei Strings angehaengt
+  EXTRADATA = { 2; // Anzahl der Strings
+   "Hallo"; "Markus";
+   };
+  // Vier short angehaengt
+  EXTRADATA = { 4; // Anzahl der Zahlen
+   1; 100; 5; 12;
+   };
+ };
+Aga
+In dieser Klasse k”nnen nur lokale Resourcen definiert werden.
+
+Wie das Schlsselwort EXTRADATA verwendet wird lesen sie bitte im Kapitel
+"Spezielle Resource-Konstrukte" nach.
+
+Nach dem Schlsselwort COMMENT kann ein Kommentar angegeben werden. Unter
+StarView hat diese Angabe keine Funktion. Sie dient zum Beschreiben von Resourcen,
+da der Designeditor alle anderen Kommentare l”scht.
+
+AgaDefault:
+Aga
+Ali Resource {};
+Aga
+ Af1Resource String
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse String.
+
+AgaBeispiel:
+Aga
+Ali String 1000
+ {
+  Text = "Hello World";
+ };
+Aga
+Als abkrzende Schreibweise ist auch
+Ali String 1000 "Hello World";
+Agaerlaubt.
+Aga
+ Af1paResource Icon
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Icon.
+
+AgaBeispiel:
+Aga
+Ali Icon
+ {
+  Predefine = ICON_DEFAULT;
+ };
+Aga
+Nach dem Schlsselwort PREDEFINE wird ein Icon benannt, das schon in StarView
+vorhanden ist. Anstelle von ICON_DEFAULT kann auch ICON_INFORMATION,
+ICON_EXCLAMATION, ICON_STOP oder ICON_QUERY geschrieben werden.
+Wie diese Icons aussehen, kann im StarView-Handbuch unter der Klasse Icon nach
+gelesen werden.
+
+AgaBeispiel:
+Aga
+Ali Icon
+ {
+  File = "Icon.ico";
+  //Nur fuer MAC
+  Type = ICON_CICN;
+  Identifier = 1000;
+ };
+Aga
+Nach dem Schlsselwort FILE wird ein Dateiname angegeben, der auf eine Datei ver
+weist, die ein Icon enth„lt. Diese Datei ist systemabh„ngig.
+
+Nach dem Schlsselwort TYPE wird der Typ des Icons angegeben. Es k”nnen
+ICON_ICON und ICON_CICN als Typen angegeben werden. ICON_ICON verweist
+auf den Mac-Resourcetyp 'ICON' und ICON_CICN auf den Typ 'cicn'. Diese Angabe
+wird nur fr den Mac ben”tigt.
+
+Nach dem Schlsselwort IDENTIFIER wird der Identifier des Icons in der durch FILE
+spezifizierten Datei angegegeben. Diese Angabe wird nur fr den Mac ben”tigt.
+
+Werden PREDEFINE und FILE angegeben, wird eins der beiden Schlsselw”rter
+gew„hlt.
+
+AgaDefault:
+Aga
+Ali Icon
+ {
+  Predefine = ICON_DEFAULT;
+ };
+Aga
+Fr IDENTIFIER und TYPE gibt es keinen Default.
+ Af1paResource Bitmap
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Bitmap.
+Aga
+AgaBeispiel:
+Aga
+Ali Bitmap
+ {
+  File = "Bitmap.bmp";
+  // Nur fuer Mac
+  //TYPE = ; Es gibt nur einen Typ
+  Identifier = 1000;
+ };
+Aga
+Nach dem Schlsselwort FILE wird ein Dateiname angegeben, der auf eine Datei ver
+weist, die eine Bitmap enth„lt. Diese Datei ist systemabh„ngig.
+
+Nach dem Schlsselwort TYPE wird der Typ der Bitmap angegeben. Dieses
+Schlsselwort ist fr zuknftige Erweiterungen. Der Mac-Resourcetyp ist 'PICT'.
+Diese Angabe wird nur fr den Mac ben”tigt.
+
+Nach dem Schlsselwort IDENTIFIER wird der Identifier der Bitmap in der durch
+FILE spezifizierten Datei angegegeben. Diese Angabe wird nur fr den Mac ben”tigt.
+
+AgaDefault:
+Aga
+Ali Bitmap
+ {
+  File = "";
+ };
+Aga
+Der Default ergibt immer einen Fehler. Fr IDENTIFIER und TYPE gibt es keinen
+Default.
+
+ Af1paResource Pointer
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Pointer.
+
+AgaBeispiel:
+Aga
+Ali Pointer
+ {
+  Predefine = POINTER_ARROW;
+ };
+Aga
+Nach dem Schlsselwort PREDEFINE wird ein Pointer benannt, der schon in
+StarView vorhanden ist. Anstelle von POINTER_ARROW kann auch
+POINTER_WAIT, POINTER_CROSS oder POINTER_BEAM geschrieben werden.
+Wie diese Pointer aussehen, ist im StarView-Handbuch unter der Klasse Pointer
+nachzulesen.
+
+AgaBeispiel:
+Aga
+Ali Pointer
+ {
+  File = "Pointer.pnt";
+  // Nur fuer Mac
+  Identifier = 1000;
+ };
+Aga
+Nach dem Schlsselwort FILE wird ein Dateiname angegeben, der auf eine Datei ver
+weist, die einen Pointer enth„lt. Diese Datei ist systemabh„ngig.
+
+Nach dem Schlsselwort IDENTIFIER wird der Identifier des Pointers in der durch
+FILE spezifizierten Datei angegegeben. Diese Angabe wird nur fr den Mac ben”tigt.
+
+Nach dem Schlsselwort TYPE wird der Typ des Pointers angegeben. Dieses
+Schlsselwort ist fr zuknftige Erweiterungen. Der Mac-Resourcetyp ist 'CURS'.
+Diese Angabe wird nur fr den Mac ben”tigt.
+
+Werden PREDEFINE und FILE angegeben, wird eine der beiden M”glichkeiten
+ausgew„hlt.
+
+AgaDefault:
+Aga
+Ali Pointer
+ {
+  Predefine = POINTER_ARROW;
+ };
+Aga
+Fr IDENTIFIER und TYPE gibt es keinen Default.
+
+
+Af1Resource Brush
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Brush.
+
+AgaBeispiel:
+Aga
+Ali Brush
+ {
+  Style  = BRUSH_SOLID;
+  Transparent = TRUE;
+  BrushColor = Color
+  {
+   RGB = (0, 0, 0);
+  };
+  FillColor = Color
+  {
+   RGB = (65535, 65535, 65535);
+  };
+ };
+Aga
+Nach dem Schlsselwort STYLE wird der Stil einer Brush benannt. Die Stile sind in
+StarView vordefiniert. Anstelle von BRUSH_SOLID kann auch
+BRUSH_HORZ,  BRUSH_VERT,  BRUSH_CROSS,
+BRUSH_DIAGCROSS, 
+BRUSH_UPDIAG, BRUSH_DOWNDIAG,
+BRUSH_BITMAP,  BRUSH_25,  BRUSH_50,
+BRUSH_75,   BRUSH_NULL geschrieben werden. Wie diese Stile
+aussehen, ist im StarView-Handbuch unter der Klasse Brush nachzulesen.
+
+Nach dem Schlsselwort TRANSPARENT kann TRUE oder FALSE angegeben
+werden. FALSE bedeutet, daá die Brush transparent ist, bei TRUE wird die Brush mit
+der Fllfarbe hinterlegt.
+Aga
+Die Farbe BRUSHCOLOR ist die Farbe des Musters.
+Die Farbe FILLCOLOR ist die Farbe in den Lcken innerhalb des Musters.
+
+AgaBeispiel:
+Aga
+Ali Brush
+ {
+  Bitmap
+  {
+   File = "Bitmap.bmp";
+  };
+ };
+Aga
+Die angegebene Bitmap wird als Brush verwendet. Die Color- und Style-Eintr„ge sind
+wirkungslos. Das Format der Bitmap ist dem StarView-Handbuch zu entnehmen.
+
+Wird BITMAP in Kombination mit FILLCOLOR, BRUSHCOLOR oder STYLE
+verwendet, wird eine der M”glichkeiten gew„hlt.
+
+AgaDefault:
+Aga
+Ali Brush
+ {
+  Style  = BRUSH_SOLID;
+  Transparent = FALSE;
+ };
+Aga
+Welche Defaults fr FILLCOLOR und BRUSHCOLOR verwendet werden, ist im
+StarView-Handbuch unter der Klasse Brush nachzulesen.
+Au2
+ Af1paResource Color
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse Color.
+
+AgaBeispiel:
+Aga
+Ali Color
+ {
+  RGB = ( 32768, 0, 32768);
+ };
+Aga
+Nach dem Schlsselwort RGB wird der Rot-, Grn- und Blauanteil einer Farbe defi
+niert. Das erste Element im Tupel steht fr Rot, das zweite fr Grn und das dritte fr
+Blau. Die Intensit„t kann mit Werten im Bereich von 0 bis 65535 angegeben werden.
+
+AgaBeispiel:
+Aga
+Ali Color
+ {
+  Red = 1;
+  Green = 2;
+  Blue = 3;
+ };
+Aga
+Durch das Schlsselwort RED wird die Rotanteil bestimmt.
+Durch das Schlsselwort GREEN wird die Grnanteil bestimmt.
+Durch das Schlsselwort BLUE wird die Blauanteil bestimmt.
+Aga
+Beispiel:
+Aga
+Ali Color
+ {
+  Predefine = COL_BLACK;
+ };
+Aga
+ AgapaNach dem Schlsselwort PREDEFINE wird eine Farbe benannt. Die Farben sind in
+StarView vordefiniert. Anstelle von COL_BLACK kann auch
+COL_BLUE,   COL_GREEN, 
+ COL_CYAN,
+COL_RED,   COL_MAGENTA,  COL_BROWN,
+COL_GRAY,   COL_LIGTHGRAY,  COL_LIGHTBLUE,
+COL_LIGHTGREEN,  COL_LIGHTCYAN,  COL_LIGHTRED,
+COL_LIGHTMAGENTA,  COL_YELLOW,  COL_WHITE,
+COL_MENUBAR,  COL_MENUBARTEXT, 
+COL_POUPMENU,
+COL_POPUPMENUTEXT, COL_3DTEXT,  COL_3DFACE,
+COL_3DLIGHT,  COL_3DSHADOW,  COL_USER
+geschrieben werden. Wie diese Farben aussehen, ist im StarView-Handbuch unter der
+Klasse Color nachzulesen.
+Aga
+Default:
+Aga
+Ali Color
+ {
+  Predefine = COL_USER; // RGB gltig
+  RGB = (0, 0, 0); // schwarz
+ };
+Aga
+ Af1paResource Font
+Aga
+Diese Resource definiert die Daten fr die StarView-Klasse Font.
+
+AgaBeispiel:
+Aga
+Ali Font
+ {
+  Family  = FAMILY_DECORATIVE;
+  Weight  = WEIGHT_DONTKNOW;
+  CharSet  = CHARSET_ANSI;
+  Pitch   = PITCH_FIXED;
+  Align   = ALIGN_BOTTOM;
+  Height  = 12;
+  Width   = 6;
+  CharOrientation = 0;
+  LineOrientation = 0;
+  Italic  = TRUE;
+  Underline  = TRUE;
+  StrikeOut  = TRUE;
+  Transparent = TRUE;
+  Shadow  = TRUE;
+  Outline  = TRUE;
+  Text   = "FontName";
+  FontColor  = Color { RGB = ( 0, 0, 0 ); };
+  FillColor  = Color { Predefine = COL_RED; };
+ };
+Aga
+AgaNach dem Schlsselwort FAMILY wird eine Font-Familie benannt. Die Font-Familien
+sind in StarView vordefiniert. Anstelle von FAMILY_DECORATIVE kann auch
+FAMILY_SCRIPT, FAMILY_MODERN, FAMILY_ROMAN, FAMILY_SWISS,
+FAMILY_SYSTEM oder FAMILY_DONTCARE geschrieben werden. Was diese
+Font-Familien bewirken, ist im StarView-Handbuch unter der Klasse Font
+nachzulesen.
+Aga
+AgaNach dem Schlsselwort WEIGHT wird ein weiteres Attribut des Fonts benannt. Diese
+Attribute sind in StarView vordefiniert. Anstelle von WEIGHT_DONTKNOW kann
+auch WEIGHT_LIGHT, WEIGHT_NORMAL oder WEIGHT_BOLD geschrieben
+werden. Was dieses Attribut bewirkt, ist im StarView-Handbuch unter der Klasse Font
+nachzulesen.
+Aga
+AgaNach dem Schlsselwort CHARSET wird der Zeichensatz des Fonts benannt. Anstelle
+von CHARSET_ANSI kann auch CHARSET_DONTKNOW, CHARSET_IBMPC,
+CHARSET_MAC oder CHARSET_SYMBOL geschrieben werden.
+ Aga
+ paNach dem Schlsselwort PITCH wird ein weiteres Attribut des Fonts benannt. Anstelle
+von PITCH_FIXED kann auch PITCH_DONTKNOW oder PITCH_VARIABLE
+geschrieben werden.
+Aga
+Nach dem Schlsselwort ALIGN wird die Ausrichtung des Fonts benannt. Anstelle
+von ALIGN_BOTTOM kann auch ALIGN_TOP oder ALIGN_BASELINE geschrie
+ben werden.
+Aga
+Nach dem Schlsselwort HEIGHT wird die H”he eines Fonts angegeben. Der Zahlen
+bereich umfaát Werte von 0 bis 65535.
+
+Nach dem Schlsselwort WIDTH wird die Breite eines Fonts angegeben. Der Zahlen
+bereich umfaát Werte von 0 bis 65535.
+
+Nach dem Schlsselwort CHARORIENTATION wird die Drehung der Zeichen ange
+geben. Die Angabe der Drehung erfolgt in Zehntelgrad. Der Zahlenbereich umfaát
+Werte von 0 bis 3600.
+
+Nach dem Schlsselwort LINEORIENTATION wird die Drehung der Ausgabezeile
+angegeben. Die Angabe der Drehung erfolgt in Zehntelgrad. Der Zahlenbereich umfaát
+Werte von 0 bis 3600.
+
+Nach dem Schlsselwort ITALIC kann TRUE oder FALSE angegeben werden. Bei
+TRUE handelt es sich um einen kursiven Font, bei FALSE um einen nicht kursiven
+Font.???
+
+Nach dem Schlsselwort UNDERLINE kann TRUE oder FALSE angegeben werden.
+Bei TRUE handelt es sich um einen unterstrichenen Font, bei FALSE ist der Font nicht
+unterstrichen.
+
+Nach dem Schlsselwort STRIKEOUT kann TRUE oder FALSE angegeben werden.
+Bei TRUE handelt es sich um einen durchgestrichenen Font, bei FALSE ist der Font
+nicht durchgestrichen.
+
+Nach dem Schlsselwort TRANSPARENT kann TRUE oder FALSE angegeben
+werden. Bei TRUE werden die Zeichen mit der Fllfarbe ausgefllt, bei FALSE
+werden die Zeichen nicht ausgefllt.
+
+Nach dem Schlsselwort SHADOW kann TRUE oder FALSE angegeben werden. Bei
+TRUE werden die Zeichen mit Schatten ausgegeben, bei FALSE gibt es keinen
+Schatten.
+
+Nach dem Schlsselwort OUTLINE kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird nur der Umriss der Zeichen ausgegeben, bei FALSE werden die Zeichen
+ normal dargestellt.
+
+Nach dem Schlsselwort TEXT wird der Name des Fonts angegeben.
+
+Die Farbe FONTCOLOR ist die Farbe des Fonts.
+Die Farbe FILLCOLOR ist die Farbe der Lcken zwischen den Zeichen.
+
+ AgapaDefault:
+Aga
+Ali Font
+ {
+  Family  = FAMILY_DONTKNOW;
+  Weight  = WEIGHT_NORMAL;
+  CharSet  = CHARSET_DONTKNOW;
+  Pitch   = PITCH_DONTKNOW;
+  Align   = ALIGN_TOP;
+  Height  = 0;
+  Width   = 0;
+  CharOrientation = 0;
+  LineOrientation = 0;
+  Italic  = FALSE;
+  Underline  = FALSE;
+  StrikeOut  = FALSE;
+  Transparent = FALSE;
+  Shadow  = FALSE;
+  OutLine  = FALSE;
+  Text   = "";
+ };
+Aga
+Welche Defaults fr FONTCOLOR und FILLCOLOR verwendet werden, ist im
+StarView-Handbuch unter der Klasse Font nachzulesen.
+Au2
+ Af1paResource Pen
+Aga
+Diese Resource definiert die Daten fr die StarView-Klasse Pen.
+
+AgaBeispiel:
+Aga
+Ali Pen
+ {
+  Width  = 1;
+  Style  = PEN_DASH;
+  PenColor = Color
+  {
+   Predefine = COL_BLACK;
+  };
+ };
+Aga
+Hinter dem Schlsselwort WIDTH wird die Breite des Stiftes angegeben. Der Zahlen
+bereich umfaát Werte von 0 bis 65536.
+Hinter dem Schlsselwort Style wird der Linientyp des Stiftes angegeben. Die Typen
+sind in StarView vordefiniert. Anstelle von PEN_DASH kann auch PEN_NULL,
+PEN_SOLID, PEN_DOT oder PEN_DASHDOT geschrieben werden. Wie diese
+Typen aussehen, ist im StarView-Handbuch unter der Klasse Pen nachzulesen.
+Aga
+Default:
+Aga
+Ali Pen
+ {
+  Width = 0;
+  Style = PEN_NULL;
+  PenColor = Color;
+  {
+   RGB = (0, 0, 0);
+  };
+ };
+Aga
+ Af1paResource MapMode
+Aga
+Diese Resource definiert Daten fr die StarView-Klasse MapMode.
+
+AgaBeispiel:
+Aga
+Ali MapMode
+ {
+  MapUnit = MAP_SYSFONT;
+  X  = 20;
+  Y  = 30;
+  xScale = ( 2, 1 );
+  yScale = ( 1, 1 );
+ };
+Aga
+Nach dem Schlsselwort MAPUNIT wird eine Einheit des Koordinatensystems defi
+niert. Die Einheiten sind in StarView vordefiniert. Anstelle von MAP_SYSFONT kann
+auch MAP_100TH_MM, MAP_10TH_MM, MAP_MM, MAP_CM,
+MAP_1000TH_INCH, MAP_100TH_INCH, MAP_10TH_INCH, MAP_INCH,
+MAP_POINT, MAP_TWIP, MAP_PIXEL oder MAP_APPFONT geschrieben
+werden. Was dies fr Einheiten sind, ist im StarView-Handbuch unter der Klasse
+MapMode nachzulesen.
+
+Nach den Schlsselw”rtern X und Y wird der Ursprung des Koordinatensystems ange
+geben. Die Einheiten sind die nach MapUnit definierten. Der Zahlenbereich umfaát
+Werte von 0 bis 65535.
+
+Nach den Schlsselw”rtern XSCALE und YSCALE wird der Streckungsfaktor des
+Koordinatensystems in x- bzw. in y-Richtung angegeben. Der Zahlenbereich umfaát
+Werte von -32768 bis 32767.
+
+AgaDefault:
+Aga
+Ali MapMode
+ {
+  MapUnit = MAP_APPFONT;
+  X = 0;
+  Y = 0;
+  xScale = ( 1, 1 );
+  yScale = ( 1, 1 );
+ };
+Aga
+ Af1paResource Accelerator
+Aga
+Diese Resource definiert die Daten der StarView-Klasse Accelerator.
+
+AgaBeispiel:
+Aga
+Ali Accelerator
+ {
+  HelpText = "Hilfetext";
+  KeyList =
+  {
+   AcceleratorKey
+   {
+    Identifier = 1;
+    Disable = FALSE;
+    Modifier1 = TRUE;
+    Code = KEY_D;
+   };
+   AcceleratorKey
+   {
+    Identifier = 2;
+    Disable = FALSE;
+    Modifier1 = TRUE;
+    Code = KEY_F1;
+   };
+  };
+ };
+Aga
+Nach dem Schlsselwort HELPTEXT wird der Hilfetext des Accelerators angegeben.
+
+Im Accelerator k”nnen beliebig viele Acceleratortasten angegeben werden.
+
+AgaDefault:
+Aga
+Ali Accelerator
+ {
+  HelpText = "";
+ };
+Aga
+ Af1paResource AcceleratorKey
+Aga
+Diese Resource definiert keine Daten einer StarView-Klasse. Diese Resource kann bei
+der Methode InsertAccelerator() der Klasse Accelerator angegeben werden.
+
+Um diese Beschreibung verstehen zu k”nnen, ist es unbedingt notwendig, im
+StarView-Handbuch die Beschreibung der Klassen Accelerator und KeyCode zu lesen.
+
+AgaBeispiel:
+Aga
+Ali AcceleratorKey
+ {
+  Identifier  = 1;
+  Disable  = FALSE;
+  Shift   = TRUE;
+  Modifier1  = TRUE;
+  Modifier2  = TRUE;
+  Code   = KEY_A;
+  SubAccelerator = Accelerator
+  {
+   KeyList = {
+    AcceleratorKey{ ... };
+    AcceleratorKey{ ... };
+   };
+  };
+ };
+Aga
+Nach dem Schlsselwort IDENTIFIER wird eine Zahl angegeben, die zur Identifi
+kation dient. Der Definitionsbereich umfaát Werte von 1 bis 65535.
+
+Nach dem Schlsselwort DISABLE kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist die Acceleratortaste inaktiv, bei FALSE aktiv.
+
+Nach dem Schlsselwort SHIFT kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Modifier KEY_SHIFT zum Keycode gesetzt, FALSE hat keine Bedeu
+tung.
+ paNach dem Schlsselwort MODIFIER1 kann TRUE oder FALSE angegeben werden.
+Bei TRUE wird der Modifier KEY_MOD1 zum Keycode gesetzt, FALSE hat keine
+Bedeutung.
+
+Nach dem Schlsselwort MODIFIER2 kann TRUE oder FALSE angegeben werden.
+Bei TRUE wird der Modifier KEY_MOD2 zum Keycode gesetzt, FALSE hat keine
+Bedeutung.
+
+AgaNach dem Schlsselwort CODE wird ein Tastencode angegeben. Die Tastencodes sind
+in StarView vordefiniert. Anstelle von KEY_A kann auch ein Wert aus
+KEY_0 ... KEY_9, KEY_A ... KEY_Z, KEY_F1 ... KEY_F24, KEY_DOWN,
+KEY_UP, KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_PAGEUP,
+KEY_PAGEDOWN, KEY_RETURN, KEY_ESCAPE, KEY_TAB, KEY_SPACE,
+KEY_BACKSPACE, KEY_INSERT, KEY_DELETE, KEY_NUMLOCK,
+KEY_SHIFTLOCK oder KEY_SCROLLLOCK geschrieben werden.
+Aga
+In einer Acceleratortaste kann genau ein Accelerator definiert werden. Dieser
+Accelerator wird an die Acceleratortaste angeh„ngt.
+Aga
+AgaDefault:
+Aga
+Ali AcceleratorKey
+ {
+  Identifier = nId; //nicht definiert
+  DISABLE = FALSE;
+  Shift  = FALSE;
+  Modifier1 = FALSE;
+  Modifier2 = FALSE;
+  Code  = nKey; // nicht definiert
+ };
+Aga
+Fr nId und nKey gibt es keinen definierten Default.
+Au2
+ Af1paResource Menu
+Aga
+Diese Resource definiert die Daten der StarView-Klassen PopupMenu und MenuBar.
+
+AgaBeispiel:
+Aga
+Ali Menu
+ {
+  ItemList =
+  {
+   MenuItem
+   {
+    Text = "Laden";
+    Identifier = 1;
+   };
+   MenuItem
+   {
+    Text = "Speichern";
+    Identifier = 2;
+   };
+   MenuItem
+   {
+    Separator = TRUE;
+   };
+   MenuItem
+   {
+    Text = "Beenden";
+    Identifier = 3;
+   };
+  };
+ };
+Aga
+In Menu k”nnen beliebig viele Men-Items angegeben werden. Sie werden in der
+Reihenfolge, in der sie aufgeschrieben werden, im Men aufgefhrt.
+
+Nach dem Schlsselwort SEPARATOR kann TRUE oder FALSE angegeben werden.
+Bei TRUE werden Men-Items visuell voneinander getrennt.
+
+AgaDefault:
+Aga
+Ali Menu {};
+Aga
+ Af1paResource MenuItem
+Aga
+Diese Resource definiert keine Daten einer StarView-Klasse. Diese Resource kann bei
+der Methode InsertItem() der Klasse Menu angegeben werden.
+
+AgaBeispiel:
+Aga
+Ali MenuItem
+ {
+  Text  = "MenuItem";
+  HelpText = "Hilfetext";
+  Identifier = 1;
+  HelpId = 1001:
+  Check  = TRUE;
+  Disable = TRUE;
+  SubMenu = Menu
+  {
+   ItemList =
+   {
+    MenuItem{ ... };
+    MenuItem{ ... };
+   };
+  };
+ };
+Aga
+Nach dem Schlsselwort TEXT wird der Text des Men-Items angegeben.
+
+Nach dem Schlsselwort HELPTEXT wird der Hilfetext des Men-Items angegeben.
+
+Nach dem Schlsselwort IDENTIFIER wird eine Zahl angegeben, die zur Identifi
+kation dient. Der Definitionsbereich umfaát Werte von 1 bis 65535.
+
+Nach dem Schlsselwort HELPID wird eine Zahl angegeben. Diese Zahl ist ein
+Hilfeidentifier (eine Referenz ins Hilfesystem). Der Definitionsbereich umfaát Werte
+von 0 bis 4294967295. Es k”nnen auch die vordefinierten Werte HELP_INDEX und
+HELP_HELPONHELP benutzt werden.
+
+Nach dem Schlsselwort CHECK kann TRUE oder FALSE angegeben werden. Bei
+TRUE hat das Men-Item eine Auswahlmarkierung, bei FALSE hat es keine Auswahl
+markierung.
+
+Nach dem Schlsselwort DISABLE kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist der Zugriff auf das Men-Item nicht m”glich, bei FALSE ist der Zugriff
+m”glich.
+
+In einem Men-Item kann genau ein Men definiert werden. Dieses Men wird an das
+Men-Item angeh„ngt (SubMenu).
+
+AgaBeispiel:
+Aga
+Ali MenuItem
+ {
+  Identifier = 1;
+  ItemBitmap = Bitmap
+  {
+   File = "bitmap.bmp";
+  };
+ };
+Aga
+Anstelle eines Textes wird in dem Men-Item diese Bitmap ausgegeben.
+
+AgaBeispiel:
+Aga
+ MenuItem
+ {
+  Separator = TRUE;
+ };
+
+Das Men-Item verh„lt sich wie ein Separator (siehe Menu).
+
+Werden TEXT, SEPARATOR oder BITMAP gleichzeitig verwendet, wird eine der
+drei M”glichkeiten gew„hlt.
+
+AgaDefault:
+Aga
+Ali MenuItem
+ {
+  Text  = "";
+  HelpText = "";
+  Identifier = nId; //nicht definiert
+  HelpId = 0;
+  Check  = FALSE;
+  Disable = TRUE;
+ };
+Aga
+Fr nId gibt es keinen definierten Default.
+Au2
+ Af1paResource MessBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse MessBox.
+
+AgaBeispiel:
+Aga
+Ali MessBox
+ {
+  Title   = "Ich bin eine Messagebox.";
+  Message  = "Guten Morgen";
+  HelpText  = "Hilfe";
+  Buttons  = WB_OK;
+  DefaultButton = WB_DEF_OK;
+  HelpId  = 1;
+ };
+Aga
+Der Text nach dem Schlsselwort TITLE wird der Titel der Box. Einige Boxen haben
+einen festen Titel. Welche dies sind, ist dem StarView-Handbuch zu entnehmen.
+
+Der Text nach dem Schlsselwort MESSAGE wird in der Messagebox angezeigt.
+
+Nach dem Schlsselwort HELPTEXT wird der Hilfetext angegeben. Was diese Text
+angabe bewirkt, ist dem StarView-Handbuch unter der Klasse Window zu entnehmen.
+
+Nach dem Schlsselwort BUTTONS wird angegeben, welche Buttons in der
+Messagebox angezeigt werden sollen. Die Werte sind in StarView vordefiniert. Im
+StarView-Handbuch unter der Klasse MessBox ist nachzulesen, wann welche Buttons
+angezeigt werden. Anstelle von WB_OK kann auch WB_OK_CANCEL,
+WB_YES_NO, WB_YES_NO_CANCEL, oder WB_RETRY_CANCEL angegeben
+werden.
+
+Nach dem Schlsselwort DEFAULTBUTTON wird angegeben, welcher Button in der
+Messagebox der Default-Button ist. Anstelle von WB_DEF_OK kann auch
+WB_DEF_CANCEL, WB_DEF_RETRY, WB_DEF_YES, oder WB_DEF_CANCEL
+geschrieben werden.
+
+Nach dem Schlsselwort HELPID wird eine Zahl angegeben. Diese Zahl ist ein
+Hilfeidentifier (eine Referenz ins Hilfesystem). Der Definitionsbereich umfaát Werte
+von 0 bis 4294967295. Es k”nnen auch die vordefinierten Werte HELP_INDEX und
+HELP_HELPONHELP benutzt werden.
+
+AgaDefault:
+Aga
+Ali MessBox
+ {
+  Title  = "";
+  Message = "";
+  HelpText = "";
+  Buttons = WB_OK;
+  HelpId = 0;
+ };
+Aga
+AgaWird kein Default-Button angegeben, dann wird vom System einer ausgew„hlt.
+Aga
+
+
+Af1Resource SysMessBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse SysMessBox.
+
+AgaBeispiel:
+Aga
+Ali SysMessBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource InfoBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse InfoBox.
+
+AgaBeispiel:
+Aga
+Ali InfoBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource WarningBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse WarningBox.
+
+AgaBeispiel:
+Aga
+Ali WarningBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource ErrorBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ErrorBox.
+
+AgaBeispiel:
+Aga
+Ali ErrorBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource QueryBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse QueryBox.
+
+AgaBeispiel:
+Aga
+Ali QueryBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+ Af1paResource OutputDevice
+Aga
+Diese Resource definiert Daten der StarView-Klasse OutputDevice.
+
+AgaBeispiel:
+Aga
+Ali OutputDevice
+ {
+  OutputPen  = Pen
+  {
+   Width = 2;
+  };
+  BackGroundBrush = Brush
+  {
+   Style = BRUSH_CROSS;
+  };
+  FillInBrush = Brush
+  {
+   Style = BRUSH_SOLID;
+  };
+  OutputFont = Font
+  {
+   Height = 12;
+   Width = 8;
+   Text = "Helvetica";
+  };
+  OutputMapMode = MapMode
+  {
+   MapUnit = MAP_MM;
+  };
+ };
+Aga
+ paMit OUTPUTPEN kann der Default-Pen des Output-Devices angegeben werden.
+
+Mit der Brush BACKGROUNDBRUSH wird die Default-Background-Brush??? des
+Output-Devices angegeben.
+
+Mit der Brush FILLINBRUSH wird die Default-Fill-In-Brush??? des Output-Devices
+angegeben.
+
+Mit FONT wird der Default-Font des Output-Devices angegeben.
+Mit OUTPUTMAPMODE wird der Default-Mapping-Mode des Output-Devices ange
+geben.
+Aga
+Default:
+Aga
+Ali OutputDevice {};
+Aga
+Welche Defaults in diesem Fall fr Pen, Brush, Font und MapMode verwendet
+werden, ist dem StarView-Handbuch unter der Klasse OutputDevice zu entnehmen.
+
+ Af1paResource Window
+Aga
+Diese Resource definiert die Daten der StarView-Klasse Window.
+
+AgaBeispiel:
+Aga
+Ali Window
+ {
+  Pos   = MAP_MM( 0, 0 );
+  Size   = MAP_MM( 100, 50 );
+  Text   = "Fenstertext";
+  HelpText  = "";
+  HelpId  = 1001;
+  Border  = TRUE;
+  Hide   = TRUE;
+  ClipChildren = TRUE;
+  Disable  = TRUE;
+  WindowPointer = Pointer
+  {
+   Predefine = POINTER_CROSS;
+  };
+Ali };
+Aga
+Nach dem Schlsselwort POS wird die Position des Fensters angegeben. Ob die
+Positionierung relativ zu einem anderen Fenster erfolgt, ist dem StarView-Handbuch
+unter der Klasse Window zu entnehmen. Die MapUnit MAP_MM ist die Einheit fr
+die im Tupel folgende x- und y-Position. Anstelle von MAP_MM kann eine beliebige
+MapUnit angegeben werden, diese Angabe kann auch weggelassen werden. Der
+Zahlenbereich umfaát Werte von -32768 bis 32767.
+
+Nach dem Schlsselwort SIZE wird die GrӇe des Fensters angegeben. Die MapUnit
+MAP_MM ist die Einheit fr die im Tupel folgende Breiten- und H”henangabe.
+Anstelle von MAP_MM kann eine beliebige MapUnit angegeben werden, diese
+Angabe kann auch weggelassen werden. Der Zahlenbereich umfaát Werte von -32768
+bis 32767.
+
+Nach dem Schlsselwort TEXT wird der Fenstertext angegeben. Was diese Text
+angabe bewirkt, ist dem StarView-Handbuch unter der Klasse Window zu entnehmen.
+
+Nach dem Schlsselwort HELPTEXT wird der Hilfetext angegeben. Was diese Text
+angabe bewirkt, ist dem StarView-Handbuch unter der Klasse Window zu entnehmen.
+
+Nach dem Schlsselwort HELPID wird eine Zahl angegeben. Diese Zahl ist ein
+Hilfeidentifier (eine Referenz ins Hilfesystem). Der Definitionsbereich umfaát Werte
+ von 0 bis 4294967295. Es k”nnen auch die vordefinierten Werte HELP_INDEX und
+HELP_HELPONHELP benutzt werden.
+
+Nach dem Schlsselwort BORDER kann TRUE oder FALSE angegeben werden. Bei
+TRUE erh„lt das Fenster einen Rahmen, FALSE hat keine Bedeutung.
+
+Nach dem Schlsselwort HIDE kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist das Fenster nach dem Erzeugen nicht sichtbar, bei FALSE ist es sichtbar
+(Parent-Beziehung beachten!).
+
+Nach dem Schlsselwort CLIPCHILDREN kann TRUE oder FALSE angegeben
+werden. Bei TRUE werden die ChildWindows beim Zeichnen des Parents nicht
+berschrieben, bei FALSE werden sie berschrieben.
+
+Nach dem Schlsselwort DISABLE kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist der Zugriff auf das Fenster nicht m”glich, bei FALSE ist der Zugriff m”glich
+(Parent-Beziehung beachten!).
+
+
+Mit WINDOWPOINTER wird der Default-Pointer des Fensters angegeben.
+
+AgaBeispiel:
+Aga
+Ali Window
+ {
+  PosSize = MAP_MM( 0, 0, 100, 50 );
+  TEXT  = "Fenstertext";
+ };
+Aga
+Nach dem Schlsselwort POSSIZE werden die Position und die GrӇe des Fensters
+angegeben. Fr die MapUnit gilt das gleiche wie bei POS und SIZE. Der
+Zahlenbereich umfaát Werte von -32768 bis 32767.
+
+Wird POSSIZE zusammen mit POS und SIZE verwendet, wird eine der M”glichkeiten
+ausgew„hlt.
+
+AgaDefault:
+Aga
+Ali Window
+ {
+  HelpId  = 0;
+  Border  = FALSE;
+  Hide   = FALSE;
+  ClipChildren = FALSE;
+  Disable  = FALSE;
+ };
+Aga
+Fr WindowPointer, Text, HelpText, Pos und Size werden die Systemdefaults
+verwendet. Welche Defaults verwendet werden, ist dem StarView-Handbuch unter der
+Klasse Window zu entnehmen.
+Af1
+
+Resource SystemWindow
+Aga
+Dieses Schlsselwort kann nicht angegeben werden.
+
+Um diese Beschreibung verstehen zu k”nnen, ist es unbedingt notwendig, im
+StarView-Handbuch die Beschreibung der Klasse SystemWindow und aller von ihr
+abgeleiteten Klassen zu lesen.
+
+AgaBeispiel:
+Aga
+Ali [SystemWindow]
+ {
+  Sizeable  = TRUE;
+  Moveable  = TRUE;
+  Minimize  = TRUE;
+  Maximize  = TRUE;
+  Closeable  = TRUE;
+  App   = TRUE;
+  OutputSize  = TRUE;
+  WinChilds =
+  {
+   FText
+   {
+    PosSize = MAP_SYSFONT( 0, 0, 80, 10 );
+    Text = "Name:";
+   };
+  };
+  DefPushButton 1
+  {
+   Text = "Ok";
+  };
+  PushButton 2
+  {
+   Text = "Cancel";
+  };
+  SingleLineEdit 3
+  {
+   PosSize = MAP_SYSFONT( 80, 0, 120, 10 );
+  };
+ };
+Aga
+Nach dem Schlsselwort SIZEABLE kann TRUE oder FALSE angegeben werden. Bei
+TRUE kann das Fenster vergrӇert und verkleinert werden, bei FALSE kann die GrӇe
+nicht ver„ndert werden.
+
+Nach dem Schlsselwort MOVEABLE kann TRUE oder FALSE angegeben werden.
+Bei TRUE kann das Fenster bewegt werden, bei FALSE kann es nicht bewegt werden.
+
+Nach dem Schlsselwort MINIMIZE kann TRUE oder FALSE angegeben werden. Bei
+TRUE kann das Fenster minimiert werden, bei FALSE kann es nicht minimiert
+werden.
+
+Nach dem Schlsselwort MAXIMIZE kann TRUE oder FALSE angegeben werden.
+Bei TRUE kann das Fenster maximiert werden, bei FALSE kann es nicht maximiert
+werden.
+
+Nach dem Schlsselwort CLOSEABLE kann TRUE oder FALSE angegeben werden.
+Bei TRUE kann das Fenster geschlossen werden, bei FALSE kann es nicht geschlos
+sen werden.
+
+Nach dem Schlsselwort APPLICATION kann TRUE oder FALSE angegeben
+werden. TRUE bedeutet, daá das Fenster das Applikationsfenster ist, FALSE hat keine
+Bedeutung.
+
+Nach dem Schlsselwort OUTPUTSIZE kann TRUE oder FALSE angegeben werden.
+Bei TRUE ist bezieht sich die GrӇenangabe auf die "OutputSize" des Fensters.
+
+Nach dem Schlsselwort WINCHILDS wird ein Textfenster angelegt. Dieses Fenster
+wird automatisch erzeugt. Anstelle von FTEXT kann jede in der Hierarchie unter
+Window stehende Resource angegeben werden.
+
+Nach dem Schlsselwort PUSHBUTTON 1 wird ein Button definiert. Auf diese
+Resource kann ber den Identifier 1 zugegriffen werden. Der Identifier kann im
+Bereich von 1 bis 255 liegen. Anstelle von PushButton kann jede in der Hierarchie
+unter Resource stehende Resource angegeben werden.
+
+ AgapaDefault:
+Aga
+Ali [SystemWindow] 7
+ {
+  Sizeable = FALSE;
+  Moveable = FALSE;
+  Minimize = FALSE;
+  Maximize = FALSE;
+  Closeable = FALSE;
+  App  = FALSE;
+  OutputSize = FALSE;
+ };
+Aga
+ Af1paResource WorkWindow
+Aga
+Diese Resource definiert die Daten der StarView-Klasse WorkWindow.
+
+AgaBeispiel:
+Aga
+Ali WorkWindow
+ {
+  Show   = MAXIMIZE;
+  WorkWindowIcon = Icon
+  {
+   Predefine = ICON_STOP;
+  };
+ };
+Aga
+Nach dem Schlsselwort SHOW wird angegeben, wie das Fenster angezeigt wird.
+Anstelle von MAXIMIZE kann auch NORMAL und MINIMIZE angegeben werden.
+MAXIMIZE bedeutet, daá das Fenster so groá wie m”glich dargestellt wird, bei
+MINIMIZE wird das Fenster so klein wie m”glich dargestellt (iconic). NORMAL
+bedeutet, daá das Fenster in den angegebenen Koordinaten dargestellt wird.
+
+WorkWindowIcon ist das Sinnbild, das dargestellt wird, wenn das Fenster minimiert
+wird.
+
+AgaDefault:
+Aga
+Ali WorkWindow
+ {
+  Show = NORMAL;
+ };
+Aga
+Was angezeigt wird, wenn kein Icon angegeben wird, ist im StarView-Handbuch unter
+der Klasse WorkWindow nachzulesen.
+
+ Af1paResource MDIWindow
+Aga
+Diese Resource definiert die Daten der StarView-Klasse MDIWindow.
+
+AgaBeispiel:
+Aga
+Ali MDIWindow {};
+Aga
+Es ist nur der Typ des Fensters entscheidend, es sind keine zus„tzlichen Angaben m”g
+lich.
+Au2
+
+Af1Resource Dialog
+Aga
+Diese Schlsselwort kann nicht angegeben werden.
+Diese Resource definiert die Daten der StarView-Klasse Dialog.
+
+AgaBeispiel:
+Aga
+Ali [Dialog] {};
+Aga
+Es ist nur der Typ des Fensters entscheidend, es sind keine zus„tzlichen Angaben m”g
+lich.
+Au2
+
+Af1Resource ModelessDialog
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ModelessDialog.
+
+AgaBeispiel:
+Aga
+Ali ModelessDialog {};
+Aga
+Es ist nur der Typ des Fensters entscheidend, es sind keine zus„tzlichen Angaben m”g
+lich.
+Au2
+ pa
+Af1Resource ModalDialog
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ModalDialog.
+
+AgaBeispiel:
+Aga
+Ali ModalDialog
+ {
+  SysModal = TRUE;
+ };
+Aga
+Nach den Schlsselwort SYSMODAL kann TRUE oder FALSE angegeben werden.
+Wird FALSE angegeben, dann ist die Dialogbox applikationsmodal, sonst
+systemmodal.
+
+Systemmodal bedeutet, daá das ganze System angehalten wird und nur in dieser
+Dialogbox gearbeitet werden kann. Applikationsmodal bedeutet, daá die Applikation
+angehalten wird und applikationsweit nur in dieser Dialogbox gearbeitet werden kann.
+Weiteres siehe StarView-Handbuch bei den Klassen Dialog, ModalDialog und
+ModelessDialog.
+
+AgaDefault:
+Aga
+Ali ModalDialog
+ {
+  SysModal = FALSE;
+ };
+ Af1paResource Control
+Aga
+Diese Resource definiert die Daten der StarView-Klasse Control.
+
+AgaBeispiel:
+Aga
+Ali Control
+ {
+  TabStop = TRUE;
+  Group  = TRUE;
+ };
+Aga
+Nach dem Schlsselwort TABSTOP kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist das Tabstop-Attribut gesetzt, bei FALSE ist es nicht gesetzt.
+
+Nach dem Schlsselwort GROUP kann TRUE oder FALSE angegeben werden. Bei
+TRUE ist das Group-Attribut gesetzt, bei FALSE ist es nicht gesetzt.
+
+Was diese Attribute bewirken, ist im StarView-Handbuch unter den Klassen Control
+und Dialog nachzulesen.
+
+AgaDefault:
+Aga
+Ali Control
+ {
+  TabStop = FALSE;
+  Group  = FALSE;
+ };
+Aga
+Af1Resource Button
+Aga
+Diese Resource definiert die Daten der StarView-Klasse Button.
+
+AgaBeispiel:
+Aga
+Ali Button {};
+
+AgaNur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+
+ Af1paResource CheckBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse CheckBox.
+
+Beispiel:
+Aga
+Ali CheckBox
+ {
+  Check = TRUE;
+ };
+Aga
+Nach dem Schlsselwort CHECK kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird ein Button als angeklickt gekennzeichnet. Dies gilt nur fr Buttons, bei
+denen solch eine Kennzeichnung vorgesehen ist.
+
+AgaDefault:
+Aga
+Ali CheckBox
+ {
+  Check = FALSE;
+ };
+Aga
+Af1Resource AutoCheckBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse AutoCheckBox.
+
+AgaBeispiel:
+Aga
+Ali AutoCheckBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource PushButton
+Aga
+Diese Resource definiert die Daten der StarView-Klasse PushButton.
+
+AgaBeispiel:
+Aga
+Ali PushButton {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+Af1Resource DefPushButton
+ Aga
+Diese Resource definiert die Daten der StarView-Klasse DefPushButton.
+
+AgaBeispiel:
+Aga
+Ali DefPushButton {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource RadioButton
+Aga
+Diese Resource definiert die Daten der StarView-Klasse RadioButton.
+
+Beispiel:
+Aga
+Ali RadioButton
+ {
+  Check = TRUE;
+ };
+Aga
+Nach dem Schlsselwort CHECK kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird ein Button als angeklickt gekennzeichnet. Dies gilt nur fr Buttons, bei
+denen solch eine Kennzeichnung vorgesehen ist.
+
+AgaDefault:
+Aga
+Ali RadioButton
+ {
+  Check = FALSE;
+ };
+Aga
+Af1Resource AutoRadioButton
+Aga
+Diese Resource definiert die Daten der StarView-Klasse AutoRadioButton.
+
+AgaBeispiel:
+Aga
+Ali AutoRadioButton {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+Au2
+Af1Resource TriStateBox
+ Aga
+Diese Resource definiert die Daten der StarView-Klasse TriStateBox.
+
+Beispiel:
+Aga
+Ali TriStateBox
+ {
+  TriStateDisable = TRUE;
+  TriState  = STATE_CHECK;
+ };
+Aga
+Nach dem Schlsselwort TRISTATEDISABLE kann TRUE oder FALSE angegeben
+werden. Bei TRUE k”nnen nur die Zustande STATE_CHECK und
+STATE_NOCHECK eingenommen werden, sonst ist noch der Zustand
+STATE_DONTKNOW m”glich.
+
+Nach dem Schlsselwort TRISTATE kann STATE_NOCHECK, STATE_CHECK
+und STATE_DONTKNOW angegeben werden.
+
+AgaDefault:
+Aga
+Ali TriStateBox
+ {
+  TriStateDisable = FALSE;
+  TriState  = STATE_NOCHECK;
+ };
+Aga
+Af1Resource AutoTriStateBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse AutoTriStateBox.
+
+AgaBeispiel:
+Aga
+Ali AutoTriStateBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+ Af1paResource Edit
+Aga
+Dieses Schlsselwort kann nicht angegeben werden.
+Diese Resource definiert die Daten der StarView-Klasse Edit.
+
+AgaBeispiel:
+Aga
+Ali [Edit]
+ {
+  Center  = TRUE;
+  Left   = FALSE;
+  Right   = FALSE;
+  MaxTextLength = 10;
+ };
+Aga
+Nach dem Schlsselwort LEFT kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text linksbndig ausgegeben.
+
+Nach dem Schlsselwort CENTER kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text zentriert ausgegeben.
+
+Nach dem Schlsselwort RIGHT kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text rechtsbndig ausgegeben.
+
+Werden LEFT, CENTER und RIGHT auf TRUE gesetzt, wird eine der M”glichkeiten
+ausgew„hlt. Sind sie alle FALSE, wird der Text linksbndig ausgegeben.
+
+Nach dem Schlsselwort MAXTEXTLENGTH wird die maximale Anzahl der Ein
+gabezeichen festgelegt. Ist der Wert = 0, k”nnen beliebig viele Zeichen eingegeben
+werden. Der Definitionsbereich umfaát Werte von 0 bis 65535.
+
+AgaDefault:
+Aga
+Ali [Edit]
+ {
+  Left   = FALSE;
+  Center  = FALSE;
+  Right   = FALSE;
+  MaxTextLength = 0;
+ };
+ Af1paResource SingleLineEdit
+Aga
+Diese Resource definiert die Daten der StarView-Klasse SingleLineEdit.
+
+AgaBeispiel:
+Aga
+Ali SingleLineEdit {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+Au2
+ Af1paResource MultiLineEdit
+Aga
+Diese Resource definiert die Daten der StarView-Klasse MultiLineEdit.
+
+AgaBeispiel:
+Aga
+Ali MultiLineEdit
+ {
+  HScroll = TRUE;
+  VScroll = TRUE;
+ };
+Aga
+Nach dem Schlsselwort HSCROLL kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird nach links gescrollt, wenn bei der Eingabe der rechte Rand erreicht ist.
+
+Nach dem Schlsselwort VSCROLL kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird nach unten gescrollt, wenn bei der Eingabe der untere Rand erreicht ist.
+
+AgaDefault:
+Aga
+Ali MultiLineEdit
+ {
+  HSCROLL = FALSE;
+  VSCROLL = FALSE;
+ };
+Aga
+ Af1paResource ScrollBar
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ScrollBar.
+
+AgaBeispiel:
+Aga
+Ali ScrollBar
+ {
+  MinPos = 1;
+  MaxPos = 112;
+  ThumbPos = 30;
+  PageSize = 8;
+  LineSize = 2;
+  HSCROLL = TRUE;
+  VSCROLL = FALSE;
+ };
+Aga
+Nach dem Schlsselwort MINPOS wird die minimale Position des Thumbs angegeben.
+Der Definitionsbereich umfaát Werte von -32768 - 32767.
+
+Nach dem Schlsselwort MAXPOS wird die maximale Position des Thumbs
+angegeben. Der Definitionsbereich umfaát Werte von -32768 - 32767.
+
+Nach dem Schlsselwort THUMBPOS wird die Position des Thumbs angegeben. Der
+Definitionsbereich umfaát Werte von -32768 - 32767.
+
+Nach dem Schlsselwort PAGESIZE wird die Ver„nderung bei seitenweisem Scrollen
+angegeben. Der Definitionsbereich umfaát Werte von -32768 - 32767.
+
+Nach dem Schlsselwort LINESIZE wird die Ver„nderung bei schrittweisem Scrollen
+angegeben. Der Definitionsbereich umfaát Werte von -32768 - 32767.
+
+Nach dem Schlsselwort HSCROLL kann TRUE oder FALSE angegeben werden. Bei
+TRUE bekommt man eine horizontale Scrollbar.
+
+Nach dem Schlsselwort VSCROLL kann TRUE oder FALSE angegeben werden. Bei
+TRUE bekommt man eine vertikale Scrollbar.
+ pa
+AgaDefault:
+Aga
+Ali ScrollBar
+ {
+  MinPos = 0;
+  MaxPos = 100;
+  ThumbPos = 0;
+  PageSize = 10;
+  LineSize = 1;
+  VSCROLL = FALSE;
+  HSCROLL = FALSE;
+ };
+Aga
+Aga
+Af1Resource AutoScrollBar
+Aga
+Diese Resource definiert die Daten der StarView-Klasse AutoScrollBar.
+Aga
+AgaBeispiel:
+Aga
+Ali AutoScrollBar {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+ Af1paResource ListBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ListBox.
+
+AgaBeispiel:
+Aga
+Ali ListBox
+ {
+  Sort  = TRUE;
+  CurPos = 3;
+  StringList =
+  {
+    "Ich"; "bin"; "eine"; "ListBox.";
+  };
+  StringList  =
+  {
+   "Beliebig"; "viele"; "StringLists.";
+  };
+ };
+Aga
+Nach dem Schlsselwort SORT kann TRUE oder FALSE angegeben werden. Bei
+TRUE werden die Strings in der Listbox sortiert, bei FALSE werden sie in der Reihen
+folge ausgegeben, in der sie aufgeschrieben werden.
+
+Nach dem Schlsselwort CURPOS wird die Position eines Strings angegeben. Der
+Definitionsbereich umfaát Werte von 0 - 32535. Der String, der an der angegebenen
+Position in der Listbox steht, wird selektiert. Hat die Listbox weniger Eintr„ge, wird
+der ???String selektiert.
+
+Nach dem Schlsselwort STRINGLIST k”nnen Strings angegeben werden. Die Strings
+werden in der Reihenfolge in die Listbox gestellt, in der sie angegeben werden.
+
+AgaDefault:
+Aga
+Ali ListBox
+ {
+  Sort = FALSE;
+  CurPos = 0;
+ };
+Aga
+Wird STRINGLIST ausgelassen, stehen keine Strings in der Listbox.
+
+ Af1paResource DropDownListBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse DropDownListBox.
+
+AgaBeispiel:
+Aga
+Ali DropDownListBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+Af1Resource ComboBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse ComboBox.
+
+AgaBeispiel:
+Aga
+Ali ComboBox
+ {
+  MaxTextLength = 10;
+ };
+Aga
+Nach dem Schlsselwort MAXTEXTLENGTH wird die maximale Anzahl der Ein
+gabezeichen festgelegt. Ist der Wert = 0, k”nnen beliebig viele Zeichen eingegeben
+werden. Der Definitionsbereich umfaát Werte von 0 bis 65535.
+
+Default:
+
+Ali ComboBox
+ {
+  MaxTextLength = 0;
+ };
+Aga
+Af1Resource DropDownComboBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse DropDownComboBox.
+
+AgaBeispiel:
+Aga
+Ali DropDownComboBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+
+
+Af1Resource FixedText
+Aga
+Diese Resource definiert die Daten der StarView-Klasse FixedText.
+
+AgaBeispiel:
+Aga
+Ali FixedText
+ {
+  Right = TRUE;
+ };
+Aga
+AgaNach dem Schlsselwort LEFT kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text linksbndig ausgegeben.
+
+Nach dem Schlsselwort CENTER kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text zentriert ausgegeben.
+
+Nach dem Schlsselwort RIGHT kann TRUE oder FALSE angegeben werden. Bei
+TRUE wird der Text rechtsbndig ausgegeben.
+
+Werden LEFT, CENTER und RIGHT auf TRUE gesetzt, wird eine der M”glichkeiten
+ausgew„hlt. Sind sie alle FALSE, wird der Text linksbndig ausgegeben.
+
+AgaDefault:
+Aga
+Ali FixedText
+ {
+  Left = FALSE;
+  Center = FALSE;
+  Right = FALSE;
+ };
+Aga
+
+Af1Resource FixedIcon
+Aga
+Diese Resource definiert die Daten der StarView-Klasse FixedIcon.
+
+AgaBeispiel:
+Aga
+Ali FixedIcon
+ {
+  Fixed = Icon { Predefine = ICON_QUERY; };
+ };
+ Aga
+AgaNach dem Schlsselwort FIXED kann ein Icon angeben werden. Dieses Icon wird in
+dem Control zentriert ausgegeben.
+
+AgaDefault:
+Aga
+Ali FixedIcon
+ {
+  Fixed = Icon{};
+ };
+Aga
+
+Af1Resource FixedBitmap
+Aga
+Diese Resource definiert die Daten der StarView-Klasse FixedBitmap.
+
+AgaBeispiel:
+Aga
+Ali FixedBitmap
+ {
+  Fixed = Bitmap { File = "schmett.bmp"; };
+ };
+Aga
+AgaNach dem Schlsselwort FIXED kann eine Bitmap angeben werden. Diese Bitmap
+wird in dem Control zentriert ausgegeben.
+
+AgaDefault:
+Aga
+Ali FixedBitmap
+ {
+  Fixed = Bitmap{};
+ };
+Aga
+
+Af1Resource GroupBox
+Aga
+Diese Resource definiert die Daten der StarView-Klasse GroupBox.
+
+AgaBeispiel:
+Aga
+Ali GroupBox {};
+Aga
+Nur der Typ des Fensters ist entscheidend, es sind keine zus„tzlichen Angaben
+m”glich.
+ paSpezielle Resource-Konstrukte
+Aga
+Af1Globale, lokale Resourcen
+Aga
+Globale Resourcen sind Resourcen, die auáerhalb jeder anderen Resource definiert
+sind. Lokale Resourcen sind innerhalb einer anderen Resource definiert. Lokale
+Resourcen mssen einen Identifier im Bereich von 1 bis 255 haben, globale Resourcen
+einen Identifier im Bereich von 256 bis 32767.
+
+AgaBeispiel:
+Aga
+AliWindow 1000
+{
+ Text = "Info";
+ DefPushButton 1
+ {
+  Text = "Ok";
+ };
+};
+Aga
+In diesem Fall ist WINDOW 1000 eine globale Resource und DEFPUSHBUTTON 1
+eine lokale Resource.
+
+ Af1paReferenzen
+Aga
+Wird eine Resource mehr als nur einmal ben”tigt, so kann diese Resource als globale
+Resource definiert und an anderer Stelle darauf verwiesen werden.
+
+AgaBeispiel:
+Aga
+AliDefPushButton 1000
+{
+ Text = "Ok";
+};
+Window 1000
+{
+ Text = "Info";
+ DefPushButton 1, 1000;
+};
+Aga
+Die Konstruktion DEFPUSHBUTTON 1, 1000 ist eine Referenz auf den
+DefPushButton 1000, wobei 1 die ID innerhalb der Window-Resource ist. Das heiát,
+im Programm greift man ber die ID 1 auf diese Resource zu.
+
+Eine Referenz kann immer angegeben werden, wenn eine Resource-Definition erwartet
+wird. Beim Erstellen einer ".rc"-Datei mssen alle Referenzen aufgel”st werden
+k”nnen.
+
+Af1Lokale Resourcen
+Aga
+Lokale Resourcen k”nnen in jeder Resource-Definition angegeben werden.
+
+Af1Beispiel:
+Aga
+AliWindow 1000
+{
+ Text = "Info";
+ PushButton  1, 1000;
+ DefPushButton 2, 1001;
+ SingleLineEdit 3, 1002;
+ Color  4 { RGB = (0, 0, 0); };
+ Color  5 { RGB = (65535, 0, 0); };
+};
+Aga
+In diesem Beispiel sind drei Controls und zwei Farben als lokale Resource angegeben.
+Auf die Resourcen kann ber die Identifier 1 bis 5 zugegriffen werden.
+ Af1paBenutzerdaten
+Aga
+Mit Hilfe der EXTRADATA-Konstruktion k”nnen in einer Resource beliebige Daten
+definiert werden.
+
+Beispiel:
+
+AliWindow 1000
+{
+ Text = "Info";
+ ExtraData =
+ {
+  "Hallo"; 1; -10;
+ };
+ ExtraData =
+ {
+  1; 2; 3; 4;
+ };
+Ali};
+Aga
+Nach dem Schlsselwort EXTRADATA k”nnen Strings und ganze Zahlen angegeben
+werden. Der Definitionsbereich der Zahlen reicht von -32536 bis 32535.
+
+In der Resource stehen die Daten in folgendem Format:
+Aga
+Apl- Die Benutzerdaten werden hinter die vordefinierten Daten geschrieben.
+- Sie werden in der Reihenfolge abgelegt, in der sie aufgeschrieben worden sind.
+- Strings sind Null-terminiert. Sie belegen immer eine gerade Anzahl von Bytes im
+Speicher. Der ben”tigte Platz errechnet sich also wie folgt:
+ Platzbedarf = Stringl„nge + 1 + ( Stringl„nge + 1 ) MOD 2;
+ benutzen Sie die Methode GetStringSizeRes() der Klasse Resource.
+- Zahlen sind zwei Byte lang und processorspezifisch gedreht.
+Aga
+ Af1paDefault-Initialisierung
+Aga
+Beim Angeben einer Resource ist diese mit bestimmten Werten vorbesetzt. Die
+Resource kann aber auch durch eine andere globale Resource initialisiert werden, so
+daá die Resource die Daten der globalen Resource enth„lt.
+
+Beispiel:
+
+AliWindow 1000
+{
+ Text = "Info";
+ PosSize = MAP_SYSFONT( 0, 0, 160, 40 );
+ Border = TRUE;
+ Moveable = TRUE;
+ Closeable = TRUE;
+ DefPushButton 1, 1000;
+ ExtraData = { 10; };
+};
+Window 1001 < Window 1000
+{
+ Moveable = FALSE;
+ FixedText 2
+ { // Fuázeile
+  Disable = TRUE;
+  Size  = MAP_SYSFONT( 160, 4 );
+ };
+};
+Aga
+Das WINDOW 1001 bernimmt alle Daten von WINDOW 1000, definiert noch eine
+lokale Resource hinzu und „ndert das MOVEABLE-Attribut. Es werden auch alle
+lokalen Resourcen und alle Benutzerdaten bernommen. Bei den lokalen Resourcen
+kann es leicht zu Identifier-Konflikten kommen. Es ist zu beachten, daá die Resource,
+von der die Daten bernommen werden sollen, von beliebigem Typ sein kann. Es
+werden alle Daten ab der gemeinsamen Superklasse bernommen. Das heiát von der
+Klasse Resource werden immer alle Daten bernommen.
+
+
+ Au1paFehlermeldungen
+Aga
+Af1Aufbau der Fehlermeldung:
+AgaDie Ausgabe der Fehler hat folgendes Format:
+1. Zeile in der der Fehler aufgetreten ist.
+2. Position an der der Fehler aufgetreten ist.
+3. Fehlernummer: Error ( Typ, Identifier ): Fehlermeldung.
+
+Afp256 Allgemeiner Fehler, dieser Fehler kann nicht nicht
+genauer spezifiziert werden.
+257 Eine virtuelle Methode die in der abgeleiteten Klasse
+nicht implementiert ist. Siehe Methoden der Klasse
+RscInst: SetString(), SetNumber .... Man kann die
+Fehlermeldung als Typfehler betrachten, das heiát
+dieser Typ darf nicht verwendet werden.
+258 Die Datei mit dem angegebenen Namen konnte nicht
+ge”ffnet werden.
+259 Es konnte kein Zeichen generiert werden. Zum Beispiel
+kann '\333' nicht in ein Zeichen umgewandelt werden.
+260 Interner Fehler, eine Methode soll auf eine ungltige
+Instanz angewendet werden.
+261 Es wird eine Kommandozeilenhilfe ausgegeben (rsc -h).
+262 Es wurde keine Eingabedatei angegeben.
+263 In der Kommandozeile wurde ein unbekannter Schalter
+verwendet.
+264 Referenzen werden nur bis zu einer bestimmten Tiefe
+aufgel”st. Der Fehler bedeutet, das Referenzen rekursiv
+definiert wurden oder daá sie zu tief verschachtelt sind.
+512 Allgemeiner Fehler.
+513 Es wurde versucht eine Zahl einzusetzen, die auáerhalb
+des Wertebereichs liegt.
+528 Allgemeiner Fehler.
+544 Allgemeiner Fehler.
+578 Allgemeiner Fehler.
+579 Allgemeiner Fehler.
+580 Es wurde versucht eine Resourcrinstanz mit falschem
+Typ verwendet.
+608 Allgemeiner Fehler.
+609 Allgemeiner Fehler.
+610 Fr ein Makro soll eine Name verwendet werden, der
+schon belegt ist. Namen k”nnen zum Beispiel schon fr
+Variablen vergeben sein.
+640 Allgemeiner Fehler.
+641 Zwei globale Resourcen haben den gleichen Identifier.
+ 642 Der verwendete Typ ist nicht erlaubt.
+643 Die Variable darf hier nicht verwendet werden.
+644 Der Zahlenwert ist auáerhalb von [0, 0xFFFF].
+645 Der Zahlenwert ist auáerhalb von [0, 0x7FFF].
+646 Defaultresource wurde nicht gefunden. Eine
+Resourceinstanz kann mit einer anderen initialisiert
+werden. Diese ander Instanz wurde nicht gefunden.
+647 An dieser Stelle ist die Angabe einer Referenz verboten.
+648 Ein Makroname soll doppelt vergeben werden.
+649 Die Angabe einer Defaultresource ist verboten.
+650 Ein Identifier muá Angegeben werden.
+651 Es sollte durch Null geteilt werden.
+652 Fehler in der Pragmaanweisung.
+653 Das Makro wurde durch weitere Makro's erkl„rt, die
+nicht in den entsprechenden Include-Dateien stehen.
+
+Es folgen Warnungen.
+4098 Resourcen die sich innerhalb einer anderen Resource
+befinden (Unterresourcen) haben ein Identifier ber 255.
+4099 Globale Resourcen haben einen Identifier unter 256.
+4100 Die Unterresource werden nicht beachtet. Das bedeutet,
+daá auf diese Resourcen zur Laufzeit nicht zugegriffen
+werden kann.
+4101 Die Resourcen haben einen keinen Identifier. Auf diese
+Resourcen kann zur Laufzeit nicht zugegriffen werden.
+4102 Beim schreiben ein rc-Datei konnte eine Stringreferenz
+nicht aufgel”st werden.
+4103 Beim schreiben ein rc-Datei konnte eine Referenz nicht
+aufgel”st werden. Wenn auf Unterresourcen zugegriffen
+wird, die sich in der referenzierten Resource befinden,
+dann kann ein Laufzeitfehler auftreten.
+4104 Zwei Unterresource mit gleichem Typ haben den
+gleichen Identifier.
+
+ SsvAgaPA
+Au0Stichwortverzeichnis
+Aga
+AsvCompiler Anweisungen 16
+Resource Accelerator 33
+Resource AcceleratorKey 34
+Resource AutoCheckBox 50
+Resource AutoRadioButton 51
+Resource AutoScrollBar 55
+Resource Bitmap 22
+Resource Brush 24
+Resource CheckBox 50
+Resource Color 26
+Resource ComboBox 57
+Resource DefPushButton 51
+Resource DialogBox 48
+Resource DropDownComboBox 57
+Resource DropDownListBox  57
+Resource FixedText 58
+Resource Font 28
+Resource GroupBox 58
+Resource Icon 21
+Resource ListBox 56
+Resource MapMode 32
+Resource MDIWindow 48
+Resource Menu 36
+Resource MenuItem 37
+Resource MessageBox 39
+Resource MultiLineEdit 53
+Resource OutputDevice 40
+Resource Pen 31
+Resource Pointer 22
+Resource PushButton 50
+Resource RadioButton 51
+Resource Resource 20
+Resource ScrollBar 54
+Resource SingleLineEdit 52
+Resource String 20
+Resource SystemWindow 44
+Resource Window 42
+Resource WorkWindow 47
+Resource Button 49
+Resource Control 49
+
+ Aga
+ \ No newline at end of file
diff --git a/rsc/doku/feinkonz.43/rscerror.doc b/rsc/doku/feinkonz.43/rscerror.doc
new file mode 100644
index 000000000000..f6e48c96237d
--- /dev/null
+++ b/rsc/doku/feinkonz.43/rscerror.doc
@@ -0,0 +1,2119 @@
+.\\\ WRITER 6 \\\
+S:\APP\SW5\STARLAB.LAY
+R:\SW55N\TREIBER\PS.GPM
+12
+00000
+00010
+01394
+00001
+00001
+00001
+00002
+00002
+00000
+00000
+00000
+00000
+Markus Meyer
+Spezifikation
+Rsc-Compiler
+Fehlerbehandlung
+
+
+
+
+
+
+0
+16836
+11338
+0
+0
+JA
+3
+75
+0
+20
+0
+0
+0
+0
+0
+0
+0
+JA
+
+
+
+9
+20
+4
+Helvetica 14 Pt
+H1
+97
+20
+0
+
+Helvetica 12 Pt
+H2
+65
+23
+0
+
+Helvetia 10 Pt
+H3
+65
+20
+0
+
+Courier 10 Pt
+C1
+1
+23
+0
+
+Helvetica 14 Pt Fett
+F1
+65
+27
+2
+
+Helvetica 12 Pt Fett
+F2
+65
+23
+2
+
+Helvetia 10 Pt Fett
+F3
+65
+20
+0
+
+Tasten
+T1
+129
+27
+0
+
+Grundschrift
+GA
+97
+20
+0
+
+Grund - Absatzlayout V1.5-LSLP8
+GA
+0
+0
+0
+0
+9
+97
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Grundabsatzlayout-rechtsbndig
+GR
+0
+0
+0
+0
+9
+35
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Listing
+LI
+0
+0
+0
+0
+0
+1
+23
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift
+U0
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.
+U1
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+1
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.
+U2
+0
+0
+0
+0
+6
+35
+24
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+2
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.
+U3
+0
+0
+0
+0
+6
+35
+20
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+3
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.X.
+U4
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+4
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.X.X.
+U5
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+5
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 4 Sp / 4 Sp
+E1
+576
+576
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 8 Sp / 8 Sp
+E2
+1150
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 0 Sp / 4 Sp
+E3
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 4 Sp / 8 Sp
+E4
+564
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Funktionsparameter
+FP
+0
+2891
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Inhaltsverzeichnis
+IV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7653
+0
+0
+Stichwortverzeichnis
+SV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+141
+1
+JA
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+3744
+1
+0
+Fettschrift einzeilig
+F1
+0
+0
+0
+0
+7
+65
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Punktliste
+PL
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+566
+0
+0
+1133
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Fuázeile
+FZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7200
+1
+0
+Kopfzeile
+KZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7920
+1
+0
+Grund-Seitenlayout
+GS
+566
+609
+2436
+679
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AkzBf3#_PFAD##_TEXTNAME# 6-#_S#-
+Bf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+AfzBf3$Date: 22 Jan 1992 12:40:36 $ $Revision: 1.1 $
+
+Stichwortverzeichnis
+SV
+566
+609
+2437
+680
+1416
+1416
+566
+0
+2
+NEIN
+0
+0
+
+AliBf3Stichwortverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali6Bf3- #_S# -B00
+
+GS - ohne Fuázeile
+KF
+566
+609
+2437
+680
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AliBf3#_KATEGORIE# / #_THEMA2#
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Ali
+
+Inhaltsverzeichnis
+IV
+566
+609
+2437
+680
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AliBf3Inhaltsverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali
+
+
+
+
+0
+
+0
+
+SkfAga
+
+
+
+
+
+
+
+
+
+Au0 #_KATEGORIE#
+Aga
+
+Au0 #_THEMA2#
+Aga
+
+Au0
+Aga
+
+
+
+
+
+
+
+
+
+
+
+
+Au0 #_AUTOR#
+Aga
+
+Au0 STAR DIVISION / STAR LAB Hamburg
+Aga
+
+Au0 Stand: $Date: 22 Jan 1992 12:40:36 $
+Aga
+
+Sgs
+ SkfAgaPA
+
+
+Au0#_KATEGORIE#
+Aga
+
+
+AfpDokumentenname #_THEMA2#
+Aga
+AfpProjektname #_THEMA1#
+Aga
+AfpVersionsnummer $Revision: 1.1 $
+Aga
+
+Afperstellt 16. September 1991
+Aga
+Afpge„ndert $Date: 22 Jan 1992 12:40:36 $
+Aga
+
+AfpDateiname #_PFAD##_TEXTNAME#
+Aga
+
+AfpAutor #_AUTOR#
+Aga
+AfpBearbeiter $Author: MM $
+Aga
+AfpQualit„tskontrolle
+Aga
+
+AfpStatus XX in Arbeit
+Afp !__ fertiggestellt
+Afp !__ abgenommen
+Afp !__ freigegeben
+Aga
+
+AfpVertraulich __ Ja XX Nein
+Aga
+
+AfpCopyright (C) Star Division 1990
+Aga
+ Sgspa
+Au1#1 Einleitung
+Aga
+In diesem Dokument werden die Klassen beschrieben, die die Fehlerbehandlung organisieren.
+
+Hinweise zur Implementation
+Bevor eine dieser Klassen benutzt wird, muá die Funktion InitRscCompiler aufgerufen werden.
+ AgaPA
+Au1#2 Klassenbeschreibung
+Aga
+AgaERRTYPE:
+Diese Klasse enth„lt eine Fehler- oder eine Warnungsnummer.
+
+RscError:
+Diese Klasse bernimmt die Ausgabe der Fehlermeldungen.
+
+Au1#3 Globale Funktionen
+Aga
+RscExit():
+Die Funktion muá von jedem Programm implementiert werden, die Klassen aus dem rsc-System
+benutzen. Die Funktion bedeutet, daá das Programm sofort beendet werden muá, weil ein
+scherwiegender Programmfehler aufgetreten ist.
+
+ SivPA
+
+Au0Inhaltsverzeichnis
+Aga
+Aiv1. Einleitung M3
+2. Klassenbeschreibung D4
+3. Globale Funktionen E4
+ERRTYPE S6
+RscError R10
+::RscExit() O15
+Stichwortverzeichnis F17
+Sgs
+Au0
+Aga
+ Au0PAERRTYPE
+Aga
+Aliclass ERRTYPE {
+public:
+ ERRTYPE();
+ ERRTYPE( USHORT nErr );
+ ERRTYPE& operator = ( const ERRTYPE & rError );
+ operator USHORT();
+ BOOL IsError();
+ BOOL IsOk();
+ BOOL IsWarning();
+ void Clear();
+};
+
+#define ERR_OK
+#define ERR_ERROREND
+#define ERR_WARNING
+#define ERR_WARNINGEND
+Aga
+Af1Beschreibung
+Aga
+Eine Instanz dieser Klassen enth„lt entweder eine Fehler- oder eine Warnungsnummer oder keines von
+beiden. Zu beachten ist, daá eine Fehlernummer nicht berschrieben werden kann (!der erste Fehler ist
+interressant ).
+
+Af1Anmerkungen
+AgaWarnungen werden von Fehlernummern berschrieben, aber nicht von Warnungsnummern.
+
+Af1Querverweise
+Aga
+Klasse: RscError.
+
+Af1Beispiel
+Aga
+Ali.....
+ERRTYPE aError;
+
+aError = ERR_OPENFILE;
+aError = ERR_ERROR;
+if( ERR_OPENFILE == aError )
+ printf( "Fehler: Datei kann nicht g”ffnet werden!\n" );
+else
+ printf( "Fehler: Allgemeiner Fehler!\n");
+.....
+Aga
+AgaDie Ausgabe heiát:
+Fehler: Datei kann nicht ge”ffnet werden!
+
+ Au0PAERRTYPE::ERRTYPE()
+Aga
+AliERRTYPE::ERRTYPE();
+ERRTYPE::ERRTYPE( USHORT nErrNo );
+ERRTYPE::ERRTYPE( const ERRTYPE & rError );
+Aga
+Af1Beschreibung
+Aga
+Die wird eine Instanz ERRTYPE erzeugt.
+
+Af1Parameter
+Aga
+AfpnErrNo diese Zahl ist der Fehler der in die Instanz eingetragen wird.
+rError aus dieser Instanz wird der Fehler bernommen.
+Aga
+Af1Anmerkungen
+Aga
+Wird der leere Konstruktor verwendet, dann ist die Fehlernummer ERR_OK. Die Methode IsOk()
+liefert TRUE.
+
+Af1Querverweise
+Aga
+Klassen: RscError
+Methoden: IsError(), IsOk(), Clear().
+
+Af1Beispiel
+AgaHier wird gezeigt wie Fehler zugewiesen und berschrieben werden.
+
+AliERRTYPE aErr;
+printf( aErr.IsOk() ? "TRUE", "FALSE" ); //Ausg.: TRUE
+aErr = WRN_LOCALID; //Warnung zuweisen
+printf( aErr.IsOk() ? "TRUE", "FALSE" ); //Ausg.: TRUE
+printf( aErr.IsWarning() ? "TRUE", "FALSE" );//Ausg.: TRUE
+printf( aErr.IsError() ? "TRUE", "FALSE" ); //Ausg.: FALSE
+aErr = ERR_ERROR; //Fehler zuweisen
+printf( aErr.IsOk() ? "TRUE", "FALSE" ); //Ausg.: FALSE
+printf( aErr.IsWarning() ? "TRUE", "FALSE" );//Ausg.: FALSE
+printf( aErr.IsError() ? "TRUE", "FALSE" ); //Ausg.: TRUE
+aErr = ERR_OK; //Fehler aufheben geht so nicht
+printf( aErr.IsOk() ? "TRUE", "FALSE" ); //Ausg.: FALSE
+printf( aErr.IsError() ? "TRUE", "FALSE" ); //Ausg.: TRUE
+aError.Clear(); //Fehler aufheben
+printf( aErr.IsOk() ? "TRUE", "FALSE" ); //Ausg.: TRUE
+printf( aErr.IsError() ? "TRUE", "FALSE" ); //Ausg.: FALSE
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0ERRTYPE::operator =()
+Aga
+AliERRTYPE & ERRTYPE::operator &( const ERRTYPE & rErr );
+Aga
+Af1Beschreibung
+Aga
+Der Zuweisungsoperator kopiert den Fehler oder die Warnung von rErr in die Instanz. Ein kopieren
+findet nicht statt, wenn in der Instanz schon ein Fehler eingetragen wurde.
+
+Af1Parameter
+Aga
+ AfprErr aus dieser Instanz wird der Fehler bernommen.
+Aga
+Af1Return-Werte
+Aga
+Die eigene Instanz wird zurckgeliefert.
+
+Af1Querverweise
+Aga
+Methoden: operator USHORT().
+
+Af1Beispiel
+Aga
+AliERRTYPE aError( ERR_RSCRANGE );
+printf( ERR_RSCRANGE == aError ? "TRUE" : "FALSE" );
+ //Ausgabe: TRUE
+//Versuch den Fehler zu ueberschreiben (geht nicht)
+aError = ERRTYPE( ERR_ERROR );
+printf( ERR_ERROR == aError ? "TRUE" : "FALSE" );
+ //Ausgabe: FALSE
+aError.Clear();
+aError = ERRTYPE( ERR_ERROR );
+printf( ERR_ERROR == aError ? "TRUE" : "FALSE" );
+ //Ausgabe: TRUE
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0ERRTYPE::operator USHORT()
+Aga
+AliERRTYPE::operator USHORT();
+Aga
+Af1Return-Werte
+Aga
+Die Fehlernummer in der Instanz wird zurckgeliefert.
+
+Af1Querverweise
+Aga
+Methoden: operator =().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0ERRTYPE::IsError()
+Aga
+AliBOOL ERRTYPE::IsError();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode zeigt an ob in der Instanz eine Fehlernummer steht, die einen Fehler anzeigt.
+
+Af1Return-Werte
+Aga
+AfpTRUE wenn die Fehlernummer im Bereich [0, ERR_ERROREND] liegt.
+FALSE wenn die Fehlernummer im Bereich ]ERR_ERROREND, 0xFFFF
+"] liegt.
+Aga
+Af1Querverweise
+Aga
+Methoden: IsOk(), IsWarning(), Clear().
+ Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0ERRTYPE::IsOk()
+Aga
+AliBOOL ERRTYPE::IsOk();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode zeigt an ob in der Instanz eine Fehlernummer steht, die keinen Fehler anzeigt.
+
+Af1Return-Werte
+Afp
+TRUE wenn die Fehlernummer im Bereich ]ERR_ERROREND,
+"0xFFFF] liegt.
+FALSE wenn die Fehlernummer im Bereich [0, ERR_ERROREND] liegt.
+Aga
+Af1Querverweise
+Aga
+Methoden: IsError(), IsWarning(), Clear().
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0ERRTYPE::IsWarning()
+Aga
+AliBOOL ERRTYPE::IsWarning();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode zeigt an ob in der Instanz eine Fehlernummer steht, die einen Warnung anzeigt.
+
+Af1Return-Werte
+Afp
+TRUE wenn die Fehlernummer im Bereich [ERR_WARNING,
+"ERR_WARNINGEND] liegt.
+FALSE wenn die Fehlernummer in einem anderen Bereich liegt.
+Aga
+Af1Querverweise
+Aga
+Methoden: IsOk(), IsError(), Clear().
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0ERRTYPE::Clear()
+Aga
+Alivoid ERRTYPE::Clear();
+Aga
+Af1Beschreibung
+Aga
+Die Fehlernummer wird auf ERR_OK gesetzt. Das heiát die Methode IsOk() liefert TRUE zurck.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ Au0PARscError
+Aga
+Ali#define ERR_ERROR 0x0100
+#define ERR_UNKNOWN_METHOD 0x0101
+#define ERR_OPENFILE 0x0102
+#define ERR_NOCHAR 0x0103
+#define ERR_NORSCINST 0x0104
+#define ERR_USAGE 0x0105
+#define ERR_NOINPUT 0x0106
+#define ERR_UNKNOWNSW 0x0107
+#define ERR_REFTODEEP 0x0108
+
+#define ERR_RSCRANGE 0x0200
+ #define ERR_RSCRANGE_OUTDEFSET (ERR_RSCRANGE +1 )
+#define ERR_RSCENUM 0x0210
+#define ERR_RSCFLAG 0x0220
+#define ERR_RSCCONT 0x0240
+ #define ERR_CONT_INVALIDPOS (ERR_RSCCONT +1 )
+ #define ERR_CONT_INVALIDTYPE (ERR_RSCCONT +2 )
+#define ERR_RSCCMPED 0x0250
+#define ERR_RSCINST 0x0260
+ #define ERR_RSCINST_NOVARNAME (ERR_RSCINST +1 )
+ #define ERR_RSCINST_RESERVEDNAME (ERR_RSCINST +2 )
+#define ERR_LEX 0x0270
+#define ERR_YACC 0x0280
+ #define ERR_DOUBLEID (ERR_YACC +1 )
+ #define ERR_FALSETYPE (ERR_YACC +2 )
+ #define ERR_NOVARIABLENAME (ERR_YACC +3 )
+ #define ERR_USHORTRANGE (ERR_YACC +4 )
+ #define ERR_IDRANGE (ERR_YACC +5 )
+ #define ERR_NOCOPYOBJ (ERR_YACC +6 )
+ #define ERR_REFNOTALLOWED (ERR_YACC +7 )
+ #define ERR_DOUBLEDEFINE (ERR_YACC +8 )
+ #define ERR_COPYNOTALLOWED (ERR_YACC +9 )
+ #define ERR_IDEXPECTED (ERR_YACC +10)
+ #define ERR_ZERODIVISION (ERR_YACC +11)
+ #define ERR_PRAGMA (ERR_YACC +12)
+ #define ERR_DECLAREDEFINE (ERR_YACC +13)
+
+ #define WRN_LOCALID (ERR_WARNING +1 )
+ #define WRN_GLOBALID (ERR_WARNING +2 )
+ #define WRN_SUBINMEMBER (ERR_WARNING +3 )
+ #define WRN_CONT_NOID (ERR_WARNING +4 )
+ #define WRN_STR_REFNOTFOUND (ERR_WARNING +5 )
+ #define WRN_MGR_REFNOTFOUND (ERR_WARNING +6 )
+ #define WRN_CONT_DOUBLEID (ERR_WARNING +7 )
+
+class RscError{
+public:
+ USHORT nErrors;// Anzahl der Fehler
+ RscError();
+ void SetListFile( FILE * fList );
+ virtual void StdOut( const char * );
+ virtual void LstOut( const char * );
+ virtual void Error( ERRTYPE nError, RscTop* pClass,
+ const RscId &aId,
+ const char * pMessage = NULL );
+ virtual void FatalError( ERRTYPE nError, const RscId
+ &aId, const char * pMessage = NULL );
+ };
+Aga
+Af1Beschreibung
+Aga
+In dieser Klasse werden Fehlermeldungen ausgegeben. Die Fehlermeldungen werden zur
+Standartausgabe geschickt und in eine Listing-Datei geschrieben. Nach Aufruf der Methode
+FatalError() wird die Funktion RscExit() aufgerufen. Diese sollte das Programm terminieren.
+Die Ausgabe der Fehler hat folgendes Format:
+1. Zeile in der der Fehler aufgetreten ist.
+2. Position an der der Fehler aufgetreten ist.
+3. Fehlernummer: Error ( Typ, Identifier ): Fehlermeldung.
+
+Af1Ausnahmen
+Aga
+Die Ausgabe wird unter MS-Windows nicht nach "stdout" umgeleitet, sondern sie wird unterdrckt.
+
+Af1Anmerkungen
+Aga
+Die Klasse tauscht Zeilennummern, Zeilen usw. ber globale Variable mit dem Parser aus. Aus diesem
+Grund darf der Parser nicht rekursiv aufgerufen werden.
+Wenn ein Fehler am Ende einer Zeile bemerkt wird, wird h„ufig die Zeile nach der Fehlerhaften
+angezeigt.
+
+Af1Querverweise
+Aga
+Klassen: RscTypCont, ERRTYPE, RscId, RscFileInst, alle Rsc... Klassen.
+Funktionen: ::RscExit(), ::parser(), ::MacroParser(), ::IncludeParser().
+
+Af1Beispiel
+AgaImplementation der Standartausgabe unter MS-Windows.
+
+Ali.....
+class WinError :: public RscError{
+ ListBox * pOutput;
+public:
+ WinError( ListBox * pListBox ) : RscError(){
+  pOutput = pListBox;
+ }
+ void StdOut( const char * pStr ){
+  //fuer gute Ausgabeformatierung muesste auf RETURN
+  //geachtet werden
+  pOutput.Insert( pStr, LISTBOX_APPEND );
+ }
+};
+.....
+ AgapaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0Fehlernummern
+Aga
+AfpERR_ERROR Allgemeiner Fehler, dieser Fehler kann nicht nicht genauer
+"spezifiziert werden.
+ERR_UNKNOWN_METHOD Eine virtuelle Methode die in der abgeleiteten Klasse nicht
+"implementiert ist. Siehe Methoden der Klasse RscInst: SetString(),
+"SetNumber .... Man kann die Fehlermeldung als Typfehler
+"betrachten, das heiát dieser Typ darf nicht verwendet werden.
+ERR_OPENFILE Die Datei mit dem angegebenen Namen konnte nicht ge”ffnet
+"werden.
+ERR_NOCHAR Es konnte kein Zeichen generiert werden. Zum Beispiel kann
+"'\333' nicht in ein Zeichen umgewandelt werden.
+ERR_NORSCINST Interner Fehler, eine Methode soll auf eine ungltige Instanz
+"angewendet werden.
+ERR_NOINPUT Es wurde keine Eingabedatei angegeben.
+ERR_USAGE Es wird eine Kommandozeilenhilfe ausgegeben (rsc -h).
+ERR_UNKNOWNSW In der Kommandozeile wurde ein unbekannter Schalter
+"verwendet.
+ERR_REFTODEEP Referenzen werden nur bis zu einer bestimmten Tiefe aufgel”st.
+"Der Fehler bedeutet, das Referenzen rekursiv definiert wurden
+"oder daá sie zu tief verschachtelt sind.
+ERR_RSCRANGE In der Klasse RscRange ist ein Fehler aufgetreten.
+ERR_RSCRANGE_OUTDEFSET  In eine RscRange-Instanz wurde versucht eine Zahl einzusetzen,
+"die auáerhalb des Wertebereichs liegt.
+ERR_RSCENUM In der Klasse RscEnum ist ein Fehler aufgetreten.
+ERR_RSCFLAG In der Klasse RscFlag ist ein Fehler aufgetreten.
+ERR_RSCCONT In der Klasse RscCont ist ein Fehler aufgetreten.
+ERR_CONT_INVALIDPOS In einer RscCont-Instanz wurde auf eine Position zugegriffen, auf
+"der sich keine Instanz befunden hat.
+ERR_CONT_INVALIDTYPE  In einer RscCont-Instanz wurde versucht eine Instanz mit
+"falschem Typ einzusetzen.
+ERR_RSCINST In der Klasse RscInst ist ein Fehler aufgetreten.
+ERR_RSCINST_NOVARNAME  Eine Methode der Klasse RscInst die einen Variablennamen als
+"Parameter ben”tigt stellt fest, das dieser Name in der
+"entsprechenden Instanz nicht als Variable definiert ist. Vermutlich
+"hat die RscInst-Instanz einen anderen Typ als erwartet.
+ERR_RSCINST_RESERVEDNAME Fr ein Makro soll eine Name verwendet werden, der
+"schon belegt ist. Namen k”nnen zum Beispiel schon fr Variablen
+"vergeben sein.
+Aga
+Es folgen Fehler die beim Parsen auftreten k”nnen.
+AfpERR_YACC Allgemeiner Fehler der beim Parsen aufgetreten ist.
+ERR_DOUBLEID Zwei globale Resourcen haben den gleichen Identifier.
+ERR_FALSETYPE Der verwendete Typ ist nicht erlaubt.
+ERR_NOVARIABLENAME Die Variable darf hier nicht verwendet werden.
+ERR_USHORTRANGE Der Zahlenwert ist auáerhalb von [0, 0xFFFF].
+ERR_IDRANGE Der Zahlenwert ist auáerhalb von [0, 0x7FFF].
+ERR_NOCOPYOBJ Defaultresource wurde nicht gefunden. Eine Resourceinstanz kann
+"mit einer anderen initialisiert werden. Diese ander Instanz wurde
+"nicht gefunden.
+ERR_REFNOTALLOWED An dieser Stelle ist die Angabe einer Referenz verboten.
+ERR_DOUBLEDEFINE Ein Makroname soll doppelt vergeben werden.
+ERR_COPYNOTALLOWED Die Angabe einer Defaultresource ist verboten.
+ERR_IDEXPECTED Ein Identifier muá Angegeben werden.
+ERR_ZERODIVISION Es sollte durch Null geteilt werden.
+ERR_PRAGMA Bei der Angabe eines Pragmas ist ein Fehler aufgetreten.
+ ERR_DECLAREDEFINE Ein Makro mit dieser Deklaration kann nicht erstellt werden.
+"Entweder eine rekursive Definition oder die verwendeten Makros
+"sind nicht in der Abh„ngigkeitsliste.
+Aga
+Es folgen Warnungen.
+AfpWRN_LOCALID Resourcen die sich innerhalb einer anderen Resource befinden
+"(Unterresourcen) haben ein Identifier ber 255.
+WRN_GLOBALID Globale Resourcen haben einen Identifier unter 256.
+WRN_SUBINMEMBER Die Unterresource werden nicht beachtet. Das bedeutet, daá auf
+"diese Resourcen zur Laufzeit nicht zugegriffen werden kann.
+WRN_CONT_NOID Die Resourcen haben einen ungltigen Identifier. Auf diese
+"Resourcen kann zur Laufzeit nicht zugegriffen werden.
+WRN_STR_REFNOTFOUND Beim schreiben ein rc-Datei konnte eine Stringreferenz nicht
+"aufgel”st werden.
+WRN_MGR_REFNOTFOUND Beim schreiben ein rc-Datei konnte eine Referenz nicht aufgel”st
+"werden. Wenn auf Unterresourcen zugegriffen wird, die sich in
+"der referenzierten Resource befinden, dann kann ein
+"Laufzeitfehler auftreten.
+WRN_CONT_DOUBLEID Zwei Unterresource haben den gleichen Identifier.
+Aga
+ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscError::RscError()
+Aga
+AliRscError::RscError();
+Aga
+Af1Beschreibung
+Aga
+Eine Instanz wird erzeugt. Der Fehlerz„hler wird auf Null gesetzt.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscError::SetListFile()
+Aga
+Alivoid RscError::SetListFile( FILE * fLstFile );
+Aga
+Af1Beschreibung
+Aga
+Es wird eine Datei angegeben in die das Listing und die Fehlermeldungen geschrieben werden.
+fListing darf auch NULL sein, dann wird kein Listing erzeugt.
+
+Af1Parameter
+Aga
+AfpfLstFile Dies ist die Datei in die geschrieben wird.
+Aga
+Af1Anmerkung
+Aga
+Fr das ™ffnen und Schlieáen ist der Aufrufer verantwortlich.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscError::StdOut()
+Aga
+Alivirtual void RscError::StdOut( const char * pStr );
+Aga
+ Af1Beschreibung
+Aga
+Alle Zeichenketten werden nach stdout geschrieben.
+
+Af1Parameter
+Aga
+AfppStr Dies ist die Zeichenkette die geschrieben wird.
+Aga
+Af1Ausnahmen
+Aga
+Unter MS-Windows wird nicht nach stdout ausgegeben.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscError::StdLst()
+Aga
+Alivirtual void RscError::StdLst( const char * pStr );
+Aga
+Af1Beschreibung
+Aga
+Alle Zeichenketten werden in die Listing-Datei geschrieben.
+
+Af1Parameter
+Aga
+AfppStr Dies ist die Zeichenkette die geschrieben wird.
+Aga
+Af1Ausnahmen
+Aga
+Wenn keine Listing-Datei angegeben ist passiert nichts.
+Aga
+Querverweise
+
+Methoden: SetListFile().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscError::Error()
+Aga
+Alivirtual void RscError::Error( ERRTYPE aError,
+ RscTop * pClass,
+ const RscId & rId,
+ const char * pMess = NULL );
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode werden Fehler- und Warnungsmeldungen ausgegeben. Die Methode benutzt die
+Methoden StdOut() und LstOut(). Wenn eine Fehlermeldung vorliegt wird der Fehlerz„hler um eins
+erh”ht.
+
+Af1Parameter
+Aga
+AfpaError Hierin ist die Fehlernummer gespeichert. šber diese wird der
+"Fehlertext ermittelt.
+pClass Dies ist der Typ der Resourceinstanz, in der der Fehler aufgetreten
+"ist. pClass darf NULL sein.
+rId Dies ist der Identifier der Resourceinstanz, in der der Fehler
+"aufgetreten ist.
+ pMess Dies ist der Fehlertext. pMess darf NULL sein.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscError::FatalError()
+Aga
+Alivirtual void RscError::FatalError( ERRTYPE aError,
+ const RscId & rId,
+ const char * pMess = NULL );
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode werden schwerwiegende Fehler angezeigt. Die Methode benutzt die Methoden
+StdOut() und LstOut(). Die Funktion RscExit( 1 ) wird gerufen, diese sollte das Programm beenden.
+
+Af1Parameter
+Aga
+AfpaError Hierin ist die Fehlernummer gespeichert. šber diese wird der
+"Fehlertext ermittelt.
+rId Dies ist der Identifier der Resourceinstanz, in der der Fehler
+"aufgetreten ist.
+pMess Dies ist der Fehlertext. pMess darf NULL sein.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0::RscExit()
+Aga
+Alivoid RscExit( USHORT nExit );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode wird gerufen wenn ein schwerwiegende Fehler aufgetreten ist. Das Programm muá
+beendet werden.
+Fehlernummer:
+Afp1  Die Funktion FatalError() wurde aufgerufen.
+10 Mit den c-Funktionen alloc() oder realloc() wird kein Speicher
+"mehr zur Verfgung gestellt.
+11 Hashtabelle l„uft ber.
+12 Es wird mehr als 64k -1 Byte Speicher angefordert.
+13 In einem internen Zeichenkettenfeld ist nicht genug Platz.
+14 Es wird ein Objekt gel”scht auf das noch mindestens eine
+"Referenz besteht.
+16 Maximal 32 Variablen pro Klasse erlaubt.
+Aga
+Af1Parameter
+Aga
+AfpnExit Mit Hilfe dieser Zahl wird der aufgetreten Fehler etwas genauer
+"beschrieben.
+Aga
+Af1Beispiel
+Aga
+Alivoid RscExit( USHORT nExit ){
+ if( nExit )
+  printf( "Program exit ist %d\n" nExit );
+ exit( nExit );
+};
+Aga
+ AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+
+
+ SsvAgaPA
+Au0Stichwortverzeichnis
+Aga
+Asv::RscExit() 15
+ERRTYPE::Clear() 9
+ERRTYPE::ERRTYPE() 7
+ERRTYPE::IsError() 8
+ERRTYPE::IsOk() 9
+ERRTYPE::IsWarning() 9
+ERRTYPE::operator =() 7
+ERRTYPE::operator USHORT() 8
+ERRTYPE #6
+Fehlernummern 12
+RscError !10
+RscError::Error() 14
+RscError::FatalError() 15
+RscError::RscError() 13
+RscError::SetListFile() 13
+RscError::StdLst() 14
+RscError::StdOut() 13
+
+Aga
+ \ No newline at end of file
diff --git a/rsc/doku/feinkonz.43/rscinst.doc b/rsc/doku/feinkonz.43/rscinst.doc
new file mode 100644
index 000000000000..88a2cc475bd2
--- /dev/null
+++ b/rsc/doku/feinkonz.43/rscinst.doc
@@ -0,0 +1,4138 @@
+.\\\ WRITER 6 \\\
+S:\APP\SW5\STARLAB.LAY
+R:\SW55N\TREIBER\PS.GPM
+12
+00000
+00010
+01394
+00001
+00001
+00001
+00002
+00002
+00000
+00000
+00000
+00000
+Markus Meyer
+Spezifikation
+Rsc-Compiler
+Schnittstelle
+
+
+
+
+
+
+0
+16836
+11338
+0
+0
+JA
+3
+75
+0
+20
+0
+0
+0
+0
+0
+0
+0
+JA
+
+
+
+9
+20
+4
+Helvetica 14 Pt
+H1
+97
+20
+0
+
+Helvetica 12 Pt
+H2
+65
+23
+0
+
+Helvetia 10 Pt
+H3
+65
+20
+0
+
+Courier 10 Pt
+C1
+1
+23
+0
+
+Helvetica 14 Pt Fett
+F1
+65
+27
+2
+
+Helvetica 12 Pt Fett
+F2
+65
+23
+2
+
+Helvetia 10 Pt Fett
+F3
+65
+20
+0
+
+Tasten
+T1
+129
+27
+0
+
+Grundschrift
+GA
+97
+20
+0
+
+Grund - Absatzlayout V1.5-LSLP8
+GA
+0
+0
+0
+0
+9
+97
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Grundabsatzlayout-rechtsbndig
+GR
+0
+0
+0
+0
+9
+35
+20
+0
+2
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Listing
+LI
+0
+0
+0
+0
+0
+1
+23
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift
+U0
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.
+U1
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+1
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.
+U2
+0
+0
+0
+0
+6
+35
+24
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+2
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.
+U3
+0
+0
+0
+0
+6
+35
+20
+2
+1
+0
+1
+NEIN
+NEIN
+JA
+240
+3
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.X.
+U4
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+4
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+šberschrift X.X.X.X.X.
+U5
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+5
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 4 Sp / 4 Sp
+E1
+576
+576
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 8 Sp / 8 Sp
+E2
+1150
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 0 Sp / 4 Sp
+E3
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Einrckung 4 Sp / 8 Sp
+E4
+564
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Funktionsparameter
+FP
+0
+2891
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Inhaltsverzeichnis
+IV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7653
+0
+0
+Stichwortverzeichnis
+SV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+141
+1
+JA
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+3744
+1
+0
+Fettschrift einzeilig
+F1
+0
+0
+0
+0
+7
+65
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+576
+0
+0
+1152
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Punktliste
+PL
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+13
+566
+0
+0
+1133
+0
+0
+1728
+0
+0
+2304
+0
+0
+2880
+0
+0
+3456
+0
+0
+4032
+0
+0
+4608
+0
+0
+5184
+0
+0
+5760
+0
+0
+6336
+0
+0
+6912
+0
+0
+7488
+0
+0
+Fuázeile
+FZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7200
+1
+0
+Kopfzeile
+KZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+NEIN
+NEIN
+NEIN
+240
+0
+0
+16
+0
+0
+0
+0
+0
+0
+0
+NEIN
+
+1
+7920
+1
+0
+Grund-Seitenlayout
+GS
+566
+609
+2436
+679
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AkzBf3#_PFAD##_TEXTNAME# 6-#_S#-
+Bf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+AfzBf3$Date: 05 Feb 1992 08:23:58 $ $Revision: 1.7 $
+
+Stichwortverzeichnis
+SV
+566
+609
+2437
+680
+1416
+1416
+566
+0
+2
+NEIN
+0
+0
+
+AliBf3Stichwortverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali6Bf3- #_S# -B00
+
+GS - ohne Fuázeile
+KF
+566
+609
+2437
+680
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AliBf3#_KATEGORIE# / #_THEMA2#
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Ali
+
+Inhaltsverzeichnis
+IV
+566
+609
+2437
+680
+1416
+1416
+0
+0
+1
+NEIN
+0
+0
+
+AliBf3Inhaltsverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali
+
+
+
+
+0
+
+0
+
+SkfAga
+
+
+
+
+
+
+
+
+
+Au0 #_KATEGORIE#
+Aga
+
+Au0 #_THEMA2#
+Aga
+
+Au0
+Aga
+
+
+
+
+
+
+
+
+
+
+
+
+Au0 #_AUTOR#
+Aga
+
+Au0 STAR DIVISION / STAR LAB Hamburg
+Aga
+
+Au0 Stand: $Date: 05 Feb 1992 08:23:58 $
+Aga
+
+Sgs
+ SkfAgaPA
+
+
+Au0#_KATEGORIE#
+Aga
+
+
+AfpDokumentenname #_THEMA2#
+Aga
+AfpProjektname #_THEMA1#
+Aga
+AfpVersionsnummer $Revision: 1.7 $
+Aga
+
+Afperstellt 02. April 1990
+Aga
+Afpge„ndert $Date: 05 Feb 1992 08:23:58 $
+Aga
+
+AfpDateiname #_PFAD##_TEXTNAME#
+Aga
+
+AfpAutor #_AUTOR#
+Aga
+AfpBearbeiter $Author: MM $
+Aga
+AfpQualit„tskontrolle
+Aga
+
+AfpStatus XX in Arbeit
+Afp !__ fertiggestellt
+Afp !__ abgenommen
+Afp !__ freigegeben
+Aga
+
+AfpVertraulich __ Ja XX Nein
+Aga
+
+AfpCopyright (C) Star Division 1990
+Aga
+ Sivpa
+
+Au0Inhaltsverzeichnis
+Aga
+Aiv
+1 Einleitung N4
+2 Klassenbaum M5
+3 Klassenbeschreibung E5
+RscDataBase O6
+RscHrc T14
+RscSrc T24
+RscInst S31
+RscInstCopy O50
+Stichwortverzeichnis F53
+
+Sgs
+ Au1pa#1 Einleitung
+Aga
+In diesem Dokument werden die Klassen beschrieben, mit denen die vom Rsc-Compiler erstellte
+Datenbasis ver„ndert werden k”nnen. Als Beispiel sei hier der Design-Editor genannt.
+Um das Verst„ndnis zu erleichtern, ist es hilfreich die Benutzerbeschreibung des Rsc-Compilers zu
+lesen.
+
+Hinweise zur Implementation
+
+Die in diesem Dokument beschriebenen Klassen weisen einen hohen Grad an gegenseitigen
+Abh„ngigkeiten auf. Daher muá bei der Anwendung einiger Methoden auf diese Zusammenh„nge
+besonders geachtet werden. Ein genaues lesen der Dokumentation ist unumg„nglich. Zum Beispiel ist
+das L”schen einer Instanz nicht immer m”glich, da noch Referenzen auf sie bestehen. Diese
+Schnittstelle ist darauf ausgelegt, daá auf die Daten im Dialogbetrieb zugegriffen wird. Das heiát, sie
+ist auf šbersichtlichkeit und Fehlererkennung nicht aber auf Speicher- und Geschwindigkeitseffizienz
+ausgelegt.
+Bevor eine dieser Klassen benutzt wird, muá die InitRscCompiler() Funktion aufgerufen werden.
+ Agapa
+Au1#2 Klassenbaum
+Aga
+RscDataBase
+RscHrc -> RscSrc
+RscInst -> RscInstCopy
+
+
+Au1#3 Klassenbeschreibung
+Aga
+AgaRscDataBase:
+
+Diese Klasse stellt Methoden zur Verfgung mit denen ein Resourceprojekt verwaltet werden kann,
+wie zum Beispiel das Anlegen einer neuen Datei oder zu einem Klassennamen den Klassentyp
+erzeugen.
+
+AgaRscHrc:
+
+Diese Klasse stellt Methoden zur Verfgung mit denen dateiabh„ngige Informationen und Daten aus
+der Datenbasis gewonnen werden k”nnen. Es handelt sich hierbei haupts„chlich um Makros. Diese
+Klasse ist als Sicht auf eine hrc-Datei zu verstehen. Die Daten stehen in der Datenbasis.
+
+AgaRscSrc:
+
+Diese Klasse stellt Methoden zur Verfgung mit denen dateiabh„ngige Informationen und Daten aus
+der Datenbasis gewonnen werden k”nnen. Diese Klasse ist als Sicht auf eine src-Datei zu verstehen.
+Die Daten stehen in der Datenbasis.
+
+RscInst:
+
+Eine RscInst repr„sentiert eine Referenz auf eine Resourceinstanz, wie zum Beispiel Farbe oder Breite.
+Eine Resourceinstanz kann weitere Resourceinstanzen enthalten.
+
+RscInstCopy:
+
+Diese Instanz repr„sentiert eine Kopie einer Resourceinstanz.
+
+ Au0PARscDataBase
+Aga
+Aliclass RscDataBase {
+protected:
+ RscCmdLine * pCmdLine;
+ RscTypCont * pTC;
+public:
+ RscDataBase( RscError * );
+ ~RscDataBase();
+ RscTop* GetClassType( HASHID nClassName );
+ BOOL MakeConsistent( RscInconsList * pList );
+ RscFileTab * GetFileTab();
+ RscFile * GetFileStruct( ULONG lFileKey );
+ RscStrList * GetPathList();
+ ULONG AddSrcFile( const String & rFileName );
+ ULONG AddHrcFile( const String & rFileName );
+ void ScanForIncFiles( ULONG lFileKey );
+ void RemoveFile( ULONG lKey );
+ RscDefine * FindDef( const String & rName );
+ ULONG GetFileKey( const String & rFileName );
+};
+Aga
+Af1Beschreibung
+Aga
+Diese Klasse enth„lt die Klassen RscCmdLine und RscTypCont.
+Die Klasse RscCmdLine enth„lt die Steuerinformation fr den Compiler. Die Klasse RscTypCont
+enth„lt die vom Compiler erstellte DatenBasis.
+Diese Klasse l”st folgende Aufgaben:
+ 1. Das šberprfen der Konsistenz der Datenbasis.
+ 2. Das Bearbeiten der Projektstruktur.
+
+Af1Anmerkungen
+Aga
+Fr einige Methoden der Klasse RscDataBase gilt, daá sie eventuell auf alle existierenden
+Resourceinstanzen zugreifen mssen. Wenn zum Beispiel die Konsistenz der Datenbasis berprft
+wird, kann dies nur ber die Objekte in der Datenbasis geschehen.
+
+Af1Querverweise
+Aga
+Klassen: RscCmdLine, RscTypCont, RscFile, RscDefList, RscError, RscId, RscHrc, RscSrc.
+Methoden: HashId, GetHashString.
+
+Af1Beispiel
+Aga
+Im Beispiel wird der einer Resource erfragt.
+Ali.....
+Ali// statische Datenstrukturen initialisieren
+InitRscCompiler();
+.....
+RscError aErrorHandle; // Fehlerbehandlung
+RscDataBase aCmpInst( &aErrorHandle ); // Datenbasis
+RscTop* pClassTyp; // ein Klassentyp
+
+// Typ einer Resource aus dem Namen der Klasse erzeugen
+pClassTyp = aCmpInst.GetClassType( HashId( "Color" ) );
+Ali.....
+
+ Au0PARscDataBase::RscDataBase()
+Aga
+AliRscDataBase::RscDataBase( RscError * pErrorHandler );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode erzeugt eine Instanz der Klasse RscDataBase. Der Scope von dieser Instanz muá
+innerhalb des Scopes von pErrorHandler liegen.
+
+Af1Parameter
+Aga
+AfppErrorHandler Ein Zeiger auf einen Fehlerhandler. Durch ableiten von der Klasse
+"RscError kann ein eigener Fehlermechanismus entwickelt werden.
+Aga
+Af1Querverweise
+Aga
+Klasse: RscError
+
+Af1Beispiel
+Aga
+Ali.....
+RscError aErrorHandler;
+RscDataBase aCmpInst( &aErrorHandle );
+.....
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::RscDataBase()
+Aga
+AliRscDataBase::~RscDataBase();
+Aga
+Af1Beschreibung
+Aga
+L”scht die Membervariablen pCmdLine und pTC.
+
+Af1Anmerkungen
+Aga
+Es drfen keine Resourceinstanzen, die mit Hilfe dieser Instanz erzeugt worden sind, mehr existieren.
+
+Af1Querverweise
+Aga
+Klassen: RscInst, RscCmdLine, RscTypCont, RscIncList, RscHrc, RscSrc.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::GetClassType()
+Aga
+AliRscTop * RscDataBase::GetClassType( HASHID aClassName );
+Aga
+Af1Beschreibung
+Aga
+Aus dem Namen einer Klasse wird der Typ einer Klasse generiert. Der Typ bezieht sich nur auf die
+RscDataBase-Instanz von der er erzeugt wurde.
+
+Af1Parameter
+Aga
+AfpaClassName ist der Name der Klasse.
+ Aga
+Af1Return-Werte
+Aga
+Der Typ der Klasse wird zurckgeliefert. Wird unter dem Namen keine Klasse gefunden, dann wird
+NULL zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Wenn aus gleichen Namen zweier unterschiedlicher Instanzen Typen erzeugt werden, dann sind diese
+unterschiedlich.
+
+Af1Beispiel
+Aga
+Ali.....
+HASHID aClassName = HashId( "Color" );
+RscTop * aType1 = aCmpInst1.GetClassType( aClassName );
+RscTop * aType2 = aCmpInst2.GetClassType( aClassName );
+RscTop * aType3 = aCmpInst2.GetClassType( aClassName );
+.....
+Aga
+aType1 ist ungleich zu aType2.
+aType2 ist gleich zu aType3.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::MakeConsistent()
+Aga
+AliBOOL RscDataBase::MakeConsistent( RscInconsList * pList );
+Aga
+Af1Beschreibung
+Aga
+Es ist m”glich, daá durch Ver„nderungen von Makros die Datenbasis inkonsistent wird. Mit dieser
+Methode wird versucht, die Datenbasis wieder in einen konsistenten Zustand zu versetzen. Dies kann
+aber auch scheitern, wenn zum Beispiel der Wertebereich einer Variablen verlassen wird oder die
+ Identifier von Resourceinstanzen den gleichen Wert haben. pList enth„lt die Makros bei denen es
+Inkonsistenzen gibt.
+
+Af1Parameter
+Aga
+AfppList ist ein Zeiger auf eine Liste von Makro-Paaren. pList darf auch
+"NULL sein.
+Aga
+Af1Return-Werte
+Aga
+AfpTRUE die Datenbasis ist wieder konsistent.
+FALSE es konnte kein konsistenter Zustand hergestellt werden.
+Aga
+Af1Anmerkungen
+Aga
+Wenn die Datenbasis inkonsistent ist, drfen auf ihr keine Operationen ausgefhrt werden.
+
+Af1Querverweise
+Aga
+Klassen: RscInconsList.
+Methoden: RscInst::IsConsistent.
+
+Af1Beispiel
+Aga
+ Ali...
+RscDataBase *pDataBase = new ...; // DatenBasis
+RscSrc aSrc( ... ); //entspricht einer .src Datei
+RscDefine * pDef1, *pDef2; //Makros
+
+aSrc.NewDef( "DEF1", 1000, LIST_APPEND ); //Makro erzeugen
+aSrc.NewDef( "DEF2", 1001, LIST_APPEND ); //Makro erzeugen
+pDef1 = aSrc.FindDef( "DEF1" ); //Makro holen
+pDef2 = aSrc.FindDef( "DEF2" ); //Makro holen
+
+/* aStrInst enth„lt eine gltige String-Instanz */
+//String-Instanz unter Id mit Wert 1000 einsetzen
+AliaSrc.SetRscInst( RscId( pDef1 ), aStrInst );
+//String-Instanz unter Id mit Wert 1001 einsetzen
+AliaSrc.SetRscInst( RscId( pDef2 ), aStrInst );
+//aendern des Makro-Wertes
+aSrc.ChangeDef( "DEF2", 1000 );
+//Datenbasis ueberpruefen
+if( pDataBase->MakeConsistent( NULL ) )
+ printf( "Konsistent" );
+else
+ printf( "Inkonsistent" );
+Aga
+Die Ausgabe ist 'Inkonsistent', weil in der Datenbasis zwei String-Instanzen mit dem Identifier 1000
+existieren.
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::GetFileTab()
+Aga
+AliRscFileTab * RscDataBase::GetFileTab();
+Aga
+Af1Beschreibung
+Aga
+Die interne Struktur der Makro- und Dateiverwaltung wird zurckgeliefert.
+
+Af1Return-Werte
+Aga
+Es wird ein Zeiger auf die Struktur der Projektverwaltung zurckgeliefert.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::GetFileStruct()
+Aga
+AliRscFile * RscDataBase::GetFileStruct( ULONG lFileKey );
+Aga
+Af1Beschreibung
+Aga
+Auf die interne Darstellung der Daten einer Datei wird ber einen Schlssel zugegriffen. Mit Hilfe
+dieses Schlssels kann man einen Zeiger auf die interne Datenstruktur bekommen.
+
+Af1Parameter
+Aga
+AfplFileKey Schlssel der Datei.
+ Aga
+Af1Return-Werte
+Aga
+Zeiger auf interne Struktur.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFile, RscFileTab.
+Methoden: GetKey().
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::GetPathList()
+Aga
+AliRscStrList * RscDataBase::GetPathList();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode gibt einen Zeiger auf eine Liste mit Pfadnamen zurck. Diese Liste kann ver„ndert
+werden. Die Žnderungen wirken sich sofort auf den Suchpfad aus.
+
+Af1Return-Werte
+Aga
+Es wird die PfadListe zurckgeliefert.
+
+Af1Beispiel
+Aga//veraendern der Pfadliste
+
+AliRscDataBase aBase( ... ); //Datenbasis
+
+// Pfadliste holen
+RscStrList * pPathLst = aBase.GetPathList();
+//Pfad hinzufuegen
+pPathList->Insert( String( "c:\demo\resource" ) );
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Au0
+Au0RscDataBase::AddSrcFile()
+Aga
+AliULONG RscDataBase::AddSrcFile( const String & rName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode stellt eine Src-Datei in die Projektverwaltung.
+
+Af1Parameter
+Aga
+AfprName Dies ist der Name der Datei.
+Aga
+Af1Return-Werte
+Aga
+Es wird der Schlssel der Datei zurckgeliefert.
+Aga
+Af1Anmerkungen
+Aga
+ Wenn es eine Datei unter diesem Namen gibt, dann wird der Schlssel dieser Datei zurckgegeben.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::AddHrcFile()
+Aga
+AliULONG RscDataBase::AddHrcFile( const String & rName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode stellt eine Hrc-Datei in die Projektverwaltung.
+
+Af1Parameter
+Aga
+AfprName Dies ist der Name der Datei.
+Aga
+Af1Return-Werte
+Aga
+Es wird der Schlssel der Datei zurckgeliefert.
+Aga
+Af1Anmerkungen
+Aga
+Wenn es eine Datei unter diesem Namen gibt, dann wird der Schlssel dieser Datei zurckgegeben.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscDataBase::ScanForIncFiles()
+Aga
+Alivoid RscDataBase::ScanForIncFiles( ULONG lFileKey );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode durchsucht die Datei nach Include-Anweisungen. Die Dateien werden in die
+Abh„ngigkeitsliste von der Datei mit dem Schlssel lFileKey eingetragen. Die Dateien werden in die
+Projektverwaltung gestellt.
+
+Af1Anmerkungen
+Aga
+Kann die Datei nicht ge”ffnet werden dann wird die Abh„ngigkeitsliste nicht ge„ndert.
+Preprozessoranweisungen wie #ifdef... werden nicht beachtet. C- und C++-Kommentare werden
+beachtet.
+
+Af1Querverweise
+Aga
+Klassen: RscCompiler.
+Methoden: RscCompiler::IncludeParser().
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+ Au0RscDataBase::RemoveFile()
+Aga
+Alivoid RscDataBase::RemoveFile( ULONG lFileKey );
+Aga
+Af1Beschreibung
+Aga
+Die Datei wird aus der Projektverwaltung gel”scht. Alle dieser Datei zugeordneten Makros und
+Resource-Instanzen werden gel”scht. Alle Verweise auf diese Datei werden gel”scht.
+
+Af1Parameter
+Aga
+AfplFileKey Schlssel der Datei.
+Aga
+Af1Anmerkungen
+Aga
+Diese Datei wird auch aus den Abh„ngigkeitslisten der anderen Dateien gel”scht. Wenn
+Abh„ngigkeiten auf Makros bestehen, dann werden sie durch Zahlen ersetzt.
+
+Af1Querverweise
+Aga
+Klassen: RscFile, RscFileTab.
+Methoden: RscTypCont::WriteSrc().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::FindDef()
+Aga
+AliRscDefine * RscDataBase::FindDef( const String & rName );
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode kann ein Makro ber seinen Namen gefunden werden.
+
+Af1Parameter
+Aga
+AfprName ist der Name des Makros.
+Aga
+Af1Return-Werte
+Aga
+Es wird ein Zeiger auf das Makro mit Namen rName zurckgegeben.
+AfpNULL Es wurde kein Makro gefunden.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscDataBase::GetFileKey()
+Aga
+AliULONG RscDataBase::GetFileKey( const String & rFileName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode sucht in der Projektverwaltung nach einem Datei mit Namen "rFileName".
+Wenn eine Datei unter diesem Namen in der Projektverwaltung steht wird der Schlssel dieser Datei
+zurckgegeben.
+
+Af1Parameter
+Aga
+AfprFileKey Der Dateiname nach dem gesucht wird.
+Aga
+Af1Return-Werte
+Aga
+Es wird die Schlssel der Datei zurckgeliefert.
+AfpNOFILE_INDEX dieser Wert zeigt an, daá der Dateiname nicht gefunden wurde.
+Aga
+Af1Anmerkungen
+Aga
+Groá-und Kleinschreibung wird bei der Suche beachtet.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+ Au0PARscHrc
+Aga
+Aliclass RscHrc {
+protected:
+ ULONG lFileKey;//Schluessel der Datei
+public:
+ RscHrc( RscDataBase *, ULONG lKey );
+ ~RscHrc();
+ ERRTYPE ReadFile();
+ ULONG GetFileKey();
+ void SetDirty();
+ BOOL IsDirty();
+ void SetPathName( const String & );
+ String GetPathName();
+ void SetFileName( const String & );
+ String GetPathName();
+ void InsertDepend( ULONG lKey, ULONG lPos );
+ RscDefineList * GetDefineList();
+ RscDefine * FindDef( const String & );
+ ERRTYPE NewDef( const String & rName,
+ long lValue, ULONG lPos );
+ ERRTYPE NewDef( const String & rName,
+ const String & rMacro,
+ ULONG lPos );
+ ERRTYPE ChangeDef( const String & rName,
+ long lValue );
+ ERRTYPE ChangeDef( const String & rName,
+ const String & rMacro );
+ BOOL IsDefUsed( const String & rName );
+ void DeleteDef( const String & rName );
+ ERRTYPE ChangeDefName( const String & rName,
+ const String & rNewName );
+
+ RscFile * GetFileStruct();
+ RscDependList * GetDependList();
+ ERRTYPE WriteFile();
+};
+Aga
+Af1Beschreibung
+AgaDiese Klasse enth„lt nur eine Referenz auf eine andere Klasse. Alle Operation werden also auf der
+referenzierten Klasse durchgefhrt. Diese Klasse ist nur eine Schnittstelle. Diese Klasse stellt eine
+Sicht auf eine hrc-Datei dar.
+
+Diese Klasse l”st folgende Aufgaben:
+ 1. Das Verwalten der Abh„ngigkeitsliste einer Datei.
+ 2. Das Verwalten der Makros in dieser Datei.
+ 3. Das Schreiben von ".hrc"-Dateien.
+
+Af1Querverweise
+Aga
+Klassen: RscTypCont, RscDependList, RscDefList, RscError, RscId.
+
+ Au0PARscHrc::RscHrc()
+Aga
+AliRscHrc::RscHrc( RscDataBase * pDataBase, ULONG lKey );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode erzeugt eine Instanz der Klasse RscHrc. Der Scope von dieser Instanz muá innerhalb
+des Scopes von pDataBase liegen.
+
+Af1Parameter
+Aga
+AfppDataBase Ein Zeiger auf eine Datenbasis.
+lKey Ist der Schlssel einer Datei.
+Aga
+Af1Querverweise
+Aga
+Klassen RscError, RscSrc, RscFileTab.
+
+Af1Beispiel
+Aga
+Ali.....
+/* aSrc ist ein bestehende Instanz der Klasse RscSrc */
+//Abhaengigkeitsliste holen
+RscDependList * pDepLst = aSrc.GetDependList();
+//Erstes Element holen
+RscDepend * pDep = pDepList->First();
+//Hrc-Instanz erzeugen, aHrc ist die Repraesentation der
+//ersten Datei in der Abhaengigkeitsliste
+RscHrc aHrc( pDataBase, pDep->GetFilekey() );
+.....
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Au0RscHrc::~RscHrc()
+Aga
+AliRscHrc::~RscHrc();
+Aga
+Af1Beschreibung
+Aga
+Der Destruktor hat keine Funktion.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::ReadFile()
+Aga
+AliERRTYPE RscHrc::ReadFile();
+Aga
+Af1Beschreibung
+Aga
+Es wird eine Datei eingelesen. Es wird in der Abh„ngigkeitsliste berprft ob alle Dateien geladen
+sind, sind sie nicht geladen, werden sie zuerst eingelesen. Tritt ein fehler auf, wurde die Fehlerhafte
+Datei nicht eingelesen. Der Fehler innerhalb der Datei muá mit einem Editor verbessert werden (siehe
+Rsc-Compiler Benutzerhandbuch).
+
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() Es ist kein Fehler aufgetreten.
+AfpERR_OPENFILE Die Datei konnte nicht g”ffnet werden.
+ anderer Wert Siehe Klasse RscError.
+Aga
+Af1Anmerkungen
+Aga
+Es sollte sichergestellt sein, daá die Datei mit dem Rsc-Compiler ohne Preprozessor bersetzt werden
+kann. Es k”nnen aber trotzdem Fehler auftreten wie zum Beispiel Identifierkonflikte mit vorher
+eingelesener Datei, oder die Include-Dateien wurden vorher nicht eingelesen (#define kann nicht
+aufgel”st werden).
+
+Af1Querverweise
+Aga
+Klassen: RscError, RscCompiler.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscHrc::GetFileKey()
+Aga
+AliULONG RscHrc::GetFileKey();
+Aga
+Af1Return-Werte
+Aga
+Liefert den Schlssel der Datei zurck.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::SetDirty()
+Aga
+Alivoid RscHrc::SetDirty( BOOL bSet );
+Aga
+Af1Beschreibung
+Aga
+Es wird das Attribut Dirty gesetzt. Das Attribut Dirty bewirkt nichts.
+
+Af1Parameter
+Aga
+AfpbSet Ist der Wert auf den das Attribut gesetzt werden soll.
+Aga
+Af1Querverweise
+Aga
+Methoden: IsDirty().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::IsDirty()
+Aga
+AliBOOL RscHrc::IsDirty();
+Aga
+Af1Beschreibung
+Aga
+Gibt an ob das Attribut Dirty gesetzt ist.
+
+Af1Return-Werte
+Aga
+AfpTRUE Dirty ist gesetzt.
+FALSE Dirty ist nicht gesetzt.
+ Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Au0RscHrc::SetPathName()
+Aga
+Alivoid RscHrc::SetPathName( const String & rPath );
+Aga
+Af1Beschreibung
+Aga
+Der Pfadname der Datei, die durch diese Instanz repr„sentiert wird, wird ge„ndert. Der Pfadname ist
+der Name, unter dem die Datei gespeichert wird.
+
+Af1Parameter
+Aga
+AfprPath Der Pfadname der Datei.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFile.
+Methoden: GetPathname(), SetFileName(), GetFileName()
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::GetPathName()
+Aga
+AliString RscHrc::GetPathName();
+Aga
+Af1Return-Werte
+Aga
+Der Pfadname der Datei wird zurckgeliefert.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFile.
+Methoden: SetPathName(), SetFileName(), GetFileName().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::SetFileName()
+Aga
+Alivoid RscHrc::SetFileName( const String & rPath );
+Aga
+Af1Beschreibung
+Aga
+Der Name der Datei, die durch diese Instanz repr„sentiert wird, wird ge„ndert. Unter diesem Namen
+wird die Datei zum Beispiel in den "#include <Name>" Anweisungen verwendet.
+
+Af1Parameter
+Aga
+AfprPath Der Name der Datei.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFile.
+Methoden: SetPathName(), GetPathname(), GetFileName()
+
+ AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::GetFileName()
+Aga
+AliString RscHrc::GetFileName();
+Aga
+Af1Return-Werte
+Aga
+Der Name der Datei wird zurckgeliefert.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFile.
+Methoden: SetPathName(), GetPathName(), SetFileName().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Aga
+Au0RscHrc::InsertDepend()
+Aga
+Alivoid RscHrc::InsertDepend( ULONG lFileKey, ULONG lPos );
+Aga
+Af1Beschreibung
+Aga
+Eine neue Include-Datei wird in die Abh„ngigkeitsliste eingefgt.
+
+Af1Parameter
+Aga
+AfplFileKey Dies ist der Schlssel der Include-Datei.
+lPos An dieser Position wird der Schlssel in die Abh„ngigkeitsliste
+"eingefgt.
+Aga
+Af1Return-Werte
+Aga
+Es wird der Schlssel der Datei zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Wenn eine Include-Datei unter diesem Schlssel schon in der Abh„ngigkeitsliste steht, wird er nicht
+noch einmal eingetragen.
+
+Af1Querverweise
+Aga
+Klassen: RscFile.
+Methoden: FillIncList().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::GetDefineList()
+Aga
+AliRscDefineList * RscHrc::GetDefineList();
+Aga
+Af1Beschreibung
+Aga
+In jeder Hrc-Datei gibt es Makros. Diese Makros werden in eine RscDefineList gestellt.
+
+Af1Return-Werte
+Aga
+Es wird ein Zeiger auf die Makro-Liste zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klassen: RscDefineList.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::FindDef()
+Aga
+AliRscDefine * RscHrc::FindDef( const String & rName );
+Aga
+Beschreibung
+Aga
+Mit dieser Methode kann ein Makro ber seinen Namen gefunden werden. Es wird nur in dieser Datei
+oder in den Dateien gesucht, von denen diese Datei abh„ngt.
+
+Af1Parameter
+Aga
+AfprName ist der Name des Makros.
+Aga
+Af1Return-Werte
+Aga
+Es wird ein Zeiger auf das Makro mit Namen rName zurckgegeben.
+AfpNULL Es wurde kein Makro gefunden.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+Af1Beispiel
+Aga
+Ali//Dateiname = t.src
+...
+#include <t1.hrc>
+#include <t2.hrc>
+
+#define TEST 1
+Aga
+Wenn aHrc2 die Datei t2.hrc repr„sentiert, dann werden die Makros in t2.hrc und t1.hrc gesucht. Sie
+werden nicht in t.src gesucht.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::NewDef()
+Aga
+AliERRTYPE RscHrc::NewDef( const String & rName,
+ long lValue, ULONG lPos );
+ERRTYPE RscHrc::NewDef( const String & rName,
+ const String & rMacro,
+ ULONG lPos );
+Aga
+Af1Beschreibung
+Aga
+ Mit dieser Methode k”nnen neue Makros angelegt werden. Die Makros werden der Datei zugeordnet,
+die durch diese Instanz repr„sentiert wird.
+
+Af1Parameter
+Aga
+AfprName Ist der Name des neuen Makros.
+lValue Ist der Wert des neuen Makros.
+rMacro Ist ein String der ausgewertet wird.
+lPos gibt die Position an, an welcher das Makro eingefgt werden soll.
+Aga
+Af1Return-Werte
+Aga
+In ERRTYPE steht, ob ein Fehler aufgetreten ist und um welchen es sich handelt.
+
+Af1Anmerkungen
+Aga
+Durch rMacro k”nnen Makros auch wieder durch Makros erkl„rt werden. Es wird sichergestellt, daá
+nur Makros verwendet werden, die vorher deklariert wurden. Ob sie vorher deklariert wurden, wird
+anhand der Abh„ngigkeitslisten entschieden.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+Methoden: ::MacroParser().
+
+Af1Beispiel
+Aga
+Ali//Datei demo.hrc in Projektverwaltung
+lFileKey = pBase->AddHrcFile( "demo.hrc" );
+//Sicht auf demo.hrc
+RscHrc aHrc( pBase, lFileKey );
+//Makro erzeugen
+aHrc.NewDef( String( "BASE" ), 1000 );
+//Makro erzeugen
+aHrc.NewDef( String( "DEF_TEST" ), String( "1000 + 2" ) );
+//Makro erzeugen
+aHrc.NewDef( String( "MENU_FILE" ),String( "BASE + 100" ));
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::ChangeDef()
+Aga
+AliERRTYPE RscHrc::ChangeDef( const String & rName,
+ const String & rMacro );
+ERRTYPE RscHrc::ChangeDef( const String & rName,
+ long lValue );
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode k”nnen Makros ge„ndert werden.
+
+Af1Parameter
+Aga
+AfprName Ist der Name des neuen Makros.
+rMacro Ist ein String der ausgewertet wird.
+lValue Ist der Wert des ge„nderten Makros.
+Aga
+Af1Return-Werte
+ Aga
+In ERRTYPE steht, ob ein Fehler aufgetreten ist und um welchen es sich handelt.
+
+Af1Anmerkungen
+Aga
+Durch rMacro k”nnen Makros auch wieder durch Makros erkl„rt werden. Es wird sichergestellt, daá
+nur Makros verwendet werden, die vorher deklariert wurden. Ob sie vorher deklariert wurden, wird
+anhand der Abh„ngigkeitslisten entschieden.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+Methoden: ::MacroParser(), NewDef().
+
+Af1Beispiel
+Aga
+Ali//Datei demo.hrc in Projektverwaltung
+lFileKey = pBase->AddHrcFile( "demo.hrc" );
+//Sicht auf demo.hrc
+RscHrc aHrc( pBase, lFileKey );
+//Makro erzeugen
+aHrc.NewDef( String( "BASE" ), 1000 );
+//Makro erzeugen
+aHrc.NewDef( String( "DEF_TEST" ), String( "1000 + 2" ) );
+//Makro aendern
+aHrc.ChangeDef( String( "DEF_TEST" ),
+ String( "BASE + 100" ) );
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::IsDefUsed()
+Aga
+AliBOOL RscHrc::IsDefUsed( const String & rName );
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode kann festgestellt werden ob ein Makro noch ben”tigt wird. Es wird ben”tigt, wenn
+Referenzen bestehen, z.B. das Makro wird zur Definition von anderen Makros verwendet.
+
+Af1Parameter
+Aga
+AfprName Ist der Name des Makros.
+Aga
+Af1Return-Werte
+Aga
+AfpTRUE Das Makro wird noch ben”tigt.
+FALSE Das Makro wird nicht mehr ben”tigt.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscHrc::DeleteDef()
+Aga
+Alivoid RscHrc::DeleteDef( const String & rName );
+ Aga
+Af1Beschreibung
+Aga
+Das Makro mit dem Namen rName wird gel”scht.
+
+Af1Parameter
+Aga
+AfprName Ist der Name des Makros.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::ChangeDefName()
+Aga
+AliERRTYPE RscHrc::ChangeDefName( const String & rName,
+ const String & rNewName );
+Aga
+Af1Beschreibung
+Aga
+Der Name des Makros wird umbenannt. Existiert der neue Name schon, oder ist der neue Name ein
+reserviertes Wort, wird ein Fehler zurckgeliefert.
+
+Af1Parameter
+Aga
+AfprName Der Name des Makros.
+rNewName Der neue Name des Makros.
+Aga
+Af1Return-Werte
+Aga
+In ERRTYPE steht, ob ein Fehler aufgetreten ist und um welchen es sich handelt.
+
+Af1Anmerkungen
+Aga
+Alle Objekte oder Makros, die das umbenannte Makro benutzen, enthalten den neuen Namen.
+
+Af1Querverweise
+Aga
+Klassen: RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscHrc::GetFileStruct()
+Aga
+AliRscFile * RscHrc::GetFileStruct();
+Aga
+Af1Return-Werte
+Aga
+Liefert einen Zeiger auf die interne Datenstruktur..
+
+Af1Querverweise
+Aga
+Klassen: RscFile, RscFileTab.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscHrc::GetDependList()
+Aga
+AliRscDependList * RscHrc::GetDependList();
+Aga
+Af1Beschreibung
+Aga
+Mit dieser Methode bekommt man die Abh„ngigkeitsliste der Datei.
+
+Af1Return-Werte
+Aga
+Die Methode liefert einen Zeiger auf die Abh„ngigkeitsliste zurck.
+Aga
+Af1Anmerkungen
+Aga
+Die Datei ist selbst als letztes Element in der Liste vermerkt.
+
+Af1Querverweise
+Aga
+Klassen: RscFile, RscFileTab.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscHrc::WriteFile()
+Aga
+AliERRTYPE RscHrc::WriteFile();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode schreibt eine Datei im src-Format. Alle Resourceinstanzen die zu dieser Datei geh”ren
+werden geschrieben. Es werden auch alle zugeh”rigen Makros geschrieben. Ein Datei ohne
+Resourceinstanzen ist eine hrc-Datei. Der Name unter dem die Datei geschrieben wird ist der
+Pfadname.
+
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() Die Daten wurden in die entsprechende Datei geschrieben.
+Afpanderer Wert Es ist ein Fehler aufgetreten. Die angegebene Datei wurde
+"eventuell unvollst„ndig geschrieben.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTypCont.
+Methoden: RscTypCont::WriteSrc(), RscDefineList::WriteAll(), SetPathName().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ Au0PARscSrc
+Aga
+Aliclass RscSrc {
+public:
+ RscSrc( RscDataBase * pDataBase, ULONG lKey );
+ ~RscSrc();
+ RscInstCopy CreateRscInst( RscTop * pClass );
+ ERRTYPE DeleteRscInst( RscTop * pTypeClass,
+ RscId & rName );
+ ERRTYPE SetRscInst( RscId & rInstName, RscInstCopy & );
+ RscInst GetRscInst( RscTop * pClass, RscId & rInst );
+ void FillNameIdList( REResourceList * pList );
+ ERRTYPE WriteCxxFile( const String &,
+ const String & rHxxFile );
+ ERRTYPE WriteHxxFile( const String & );
+};
+Aga
+Af1Beschreibung
+Aga
+Diese Klasse l”st folgende Aufgaben:
+ 1. Das Einlesen der Include-Dateien und der ".src"-Datei mit Erstellung der Datenbasis.
+ 2. Das Erzeugen von Resourceinstanzen.
+ 3. Das Finden und Herausgeben von Resourceinstanzen.
+ 4. Das Einsetzen von Resourceinstanzen.
+ 5. Das Schreiben von ".cxx"- und ".hxx"-Dateien.
+
+Af1Anmerkungen
+Aga
+Die von einer Instanz dieser Klasse herausgegebenen Resourceinstanzen sind von der Verwendeten
+Datenbasis abh„ngig, das heiát bevor die Datenbasis gel”scht wird, mssen alle Resourceinstanzen
+gel”scht oder wieder eingesetzt worden sein.
+
+Af1Querverweise
+Aga
+Klassen: RscTypCont, RscError, RscId, RscDataBase.
+Methoden: HashId, GetHashString.
+
+Af1Beispiel
+Aga
+Auszug aus der test.src Datei.
+Ali.....
+Color 1000 {
+ Red = 0; //kein Rotanteil
+ Green = 65535;
+ Blue = 65535;
+};
+.....
+
+AgaAuszug aus der ".cxx" Datei.
+Ali.....
+// Compilers initialisieren
+InitRscCompiler();
+.....
+RscError aErrorHandle; // Fehlerbehandlung
+RscdataBase aBase( aErrorHandle ); // Datenbasis erzeugen
+//src-Datei
+RscSrc aSrc( &aBase,
+ aBase->AddSrcFile( "test.src" ) );
+RscInst aInst; // eine ResourceInstanz
+ RscTop* pClassTyp; // ein Klassentyp
+
+// Einlesen der Resourcedatei test.src
+aSrc.ReadFile();
+// Typ einer Resource aus dem Namen erzeugen
+pClassTyp = aBase.GetClassType( HashId( "Color" ) );
+// Instanz holen
+aInst = aSrc.GetRscInst( pClassTyp, RscId( 1000 ) );
+// Instanz ver„ndern
+aInst.SetNumber( HashId( "Red" ), 65535 );
+// Da es sich bei aInst nur um eine Referenz in die
+// Datenbasis handelt, werden die Aenderungen sofort
+// uebernommen.
+
+// Ver„nderte test.src Datei schreiben
+aSrc.WriteFile();
+.....
+
+AgaAuszug aus der ver„nderten test.src Datei.
+Alle Kommentare werden gel”scht. Bei Preprozessoranweisungen wie #include oder #define kommt
+es zu Reihenfolge„nderungen.
+
+Ali.....
+Color 1000 {
+ Red = 65535;
+ Green = 65535;
+ Blue = 65535;
+};
+.....
+Aga
+
+ Au0PARscSrc::RscSrc()
+Aga
+AliRscSrc::RscSrc( RscDataBase * pDataBase,
+ ULONG lFileKey );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode erzeugt eine Instanz der Klasse RscSrc. Der Scope von dieser Instanz muá innerhalb
+des Scopes von pDataBase liegen.
+
+Af1Parameter
+Aga
+AfppDataBase Ein Zeiger auf eine Datenbasis.
+lFileKey Der Schlssel einer Datei.
+Aga
+Af1Querverweise
+Aga
+Klasse: RscError
+
+Af1Beispiel
+Aga
+Ali.....
+RscDataBase aDataBase(...);
+RscSrc aCmpInst( &aDataBase,
+ aDataBase.AddSrcFile( "t.src" ) );
+.....
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscSrc::RscSrc()
+Aga
+AliRscSrc::~RscSrc();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode hat keine Funktion.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscSrc::CreateRscInst()
+Aga
+AliRscInstCopy RscSrc::CreateRscInst( RscTop * pClass );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode erzeugt eine Instanz vom Typ pClass.
+
+Af1Parameter
+Aga
+AfppClass ist der Typ der Resource, die erzeugt werden soll.
+Aga
+Af1Return-Werte
+Aga
+Es wird eine RscInstCopy Instanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+ Ist der Typ der Klasse nicht bekannt, dann wird eine ungltige RscInstCopy zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klasse: RscInst, RscInstCopy.
+Methoden: RscInst::IsInst(), RscDataBase::GetClassType().
+
+Af1Beispiel
+Aga
+Ali.....
+RscInstCopy aColInst;
+RscTop * pColorType =
+ aBase.GetClassType( HashId( "Color" ) );
+
+// Resourceinstanz einer Farbe erzeugen
+aColInst = aCmpInst.CreateRscInst( pColorType );
+if( !aColInst.IsInst() )
+ printf( "Farbinstanz konnte nicht erzeugt werden!" );
+.....
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscSrc::DeleteRscInst()
+Aga
+AliERRTYPE RscSrc::DeleteRscInst( RscTop * pClass,
+ RscId & rInstName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode l”scht Resourceinstanz mit dem Namen rInstName aus der Datenbasis.
+
+Af1Parameter
+Aga
+AfppClass ist der Typ der Resourceinstanz.
+rInstName ist der Identifier der Resourceinstanz, die gel”scht werden soll.
+Aga
+Af1Return-Werte
+Aga
+Zeigt an ob ein Fehler und welcher Fehler aufgetreten ist.
+Aga
+Af1Querverweise
+Aga
+Klasse: RscId, RscError.
+
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscSrc::SetRscInst()
+Aga
+AliERRTYPE RscSrc::SetRscInst( RscId & rInstName,
+ RscInstCopy & rInst );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode setzt die Daten einer Instanz unter dem Namen rInstName in die Datenbasis ein. Ist
+eine andere Instanz unter diesem Namen gespeichert, wird sie gel”scht.
+
+ Af1Parameter
+Aga
+AfprInstName Identifier der Instanz.
+AfprInst Die Daten aus dieser Instanz werden in die Datenbasis eingesetzt.
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() die Instanz wurde eingesetzt.
+anderer Wert Es ist ein Fehler aufgetreten.
+Aga
+Af1Anmerkungen
+Aga
+Die Identifikation einer Instanz erfolgt ber den Typ und den Namen. Wird ein Fehler zurckgegeben,
+dann wurde die Instanz nicht eingesetzt.
+
+Af1Querverweise
+Aga
+Klassen: RscInstCopy, RscId.
+Methode: RscDataBase::DeleteRscInst(), GetRscInst().
+
+Af1Beispiel
+Aga
+Ali.....
+RscId aWindowName;// Identifier eines Fensters
+RscInst aWindow; // Instanz eines Fensters
+.....
+//Instanz einsetzen und die Alte l”schen, falls vorhanden
+aCmpInst.SetRscInst( aWindowName, aWindow );
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscSrc::GetRscInst()
+Aga
+AliRscInst RscSrc::GetRscInst( RscTop * pClass,
+ RscId & rInstName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode holt eine RscInst Instanz aus der Datenbasis.
+
+Af1Parameter
+Aga
+AfppClass der Typ der Instanz.
+AfprInstName der Identifier der Instanz.
+Aga
+Af1Return-Werte
+Aga
+Es wird eine RscInst Intanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Wenn unter dem Typ und Namen keine Instanz zu finden ist, dann ist die zurckgelieferte Instanz
+ungltig.
+
+Af1Querverweise
+Aga
+Klassen: RscInst, RscId.
+
+ Af1Beispiel
+Aga
+AliRscId aWindowName;// Identifier eines Fensters
+RscInst aWindow; // Instanz eines Fensters
+RscTop * pClassType;
+.....
+// Klassentyp holen
+pClassType = aBase.GetClassType( HashId( "Window" ) );
+// Instanz holen
+aWindow = aCmpInst.GetRscInst( aWindowName, pClassType ) );
+// Instanz gefunden
+if( aWindow.IsInst() )
+ printf( "Instanz gefunden!" );
+....
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscSrc::FillNameIdList()
+Aga
+Alivoid RscSrc::FillNameIdList( REResourceList * pList );
+Aga
+Af1Beschreibung
+Aga
+Fllt eine Liste mit den Namen und Typen von Resourceinstanzen, die in der Datenbasis stehen.
+
+Af1Parameter
+Aga
+AfppList Dies ist die Liste, die gefllt wird.
+Aga
+Af1Anmerkungen
+Aga
+pList ist eine Liste von Listen. Resourceinstanzen k”nnen beliebige weitere Resourceinstanzen
+beinhalten. Die Liste spiegelt diese Verschachtelung wieder.
+
+Af1Querverweise
+Aga
+Klasse: REResourceList.
+
+Af1Beispiel
+Aga
+Ali// Resourcedatei
+Window 1000 {
+ .....
+ PushButton 1 { ..... };
+ String 1 { ..... };
+ String 2 { ..... };
+};
+AliWindow 1001 { ..... };
+WorkWindow 1000 {
+ .....
+ String 1 { ..... };
+};
+AgaEine von diesen Resourcen erzeugte Liste h„tte folgende Struktur:
+Window 1000
+ PushButton 1
+ String 1
+ String 2
+Window 1001
+ WorkWindow 1000
+ String 1
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscSrc::Write...File()
+Aga
+AliERRTYPE RscSrc::WriteCxxFile( const String & rFileName
+ const String & rHxxName );
+ERRTYPE RscSrc::WriteHxxFile( const String & rFileName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methoden schreiben ein entsprechendes Format, der in der Datenbasis stehenden
+Resourceinstanzen, in die Dateien. WriteHxxFile schreibt die Include-Datei fr die ".cxx"-Dateien.
+
+Af1Parameter
+Aga
+AfprFileName Dies ist der Name der Datei in die das entsprechende Format
+"geschrieben werden soll.
+rHxxName Dies ist der Name "hxx"-Datei, die von der "cxx"-Datei eingefgt
+"wird.
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() Das Format wurde in die entsprechende Datei geschrieben.
+Afpanderer Wert Es ist ein Fehler aufgetreten. Die angegebene Datei wurde
+"eventuell unvollst„ndig geschrieben.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ Au0PARscInst
+Aga
+Aliclass RscInst {
+public:
+ RSCINST aInst;
+ RscInst();
+ RscInst( const RscInst & rInst );
+ RscInst( RSCINST aTmpI );
+ RscInst& operator = ( const RscInst& rRscInst );
+ ~RscInst();
+ void OverWrite( RscInstCopy & rInst );
+ BOOL IsInst();
+ // Listen Methoden
+ ERRTYPE SetElement( const RscId & rName,
+ RscInstCopy & rInst );
+ ERRTYPE SetPosEle( USHORT nPos,
+ RscInstCopy & rInst );
+ ERRTYPE SetPosRscId( USHORT nPos, const RscId & rId);
+ SUBINFO_STRUCT GetInfoEle( USHORT nPos );
+ USHORT GetCount();
+ RscInst GetElement( RscTop * pClass,
+ const RscId & rName );
+ RscInst GetPosEle( USHORT nPos );
+ ERRTYPE MovePosEle( USHORT nDestPos,
+ USHORT nSourcePos );
+ ERRTYPE DeleteElement( RscTop * pClass,
+ RscId & rName );
+ ERRTYPE DeletePosEle( USHORT nPos );
+ ERRTYPE SetVar( HASHID nVarName,
+ RscInstCopy & rInst );
+ ERRTYPE SetConst( HASHID nConstId );
+ ERRTYPE SetBool( BOOL bSet );
+ ERRTYPE SetNumber( long lValue );
+ ERRTYPE SetString( const char * pStr );
+ ERRTYPE SetRef( const RscId & rRscId );
+ ERRTYPE SetDefault( HASHID nVarName );
+
+ RscInst& GetVar( HASHID nVarName );
+ HASHID GetConst();
+ USHORT GetConstPos();
+ BOOL GetBool();
+ long GetNumber();
+ const char * GetString();
+ RscId GetRef();
+ BOOL IsDefault( HASHID nVarName );
+ BOOL IsConsistent( RscInconsList * pList );
+
+ HASHID GetClassEnum( USHORT nPos );
+ RscTop * GetClassType();
+ HASHID GetClassName();
+ ERRTYPE WriteRc( RscWriteRc & aMem );
+};
+Aga
+Af1Beschreibung
+Aga
+Diese Klasse stellt Methoden zur Verfgung, mit denen Resourceinstanzen erzeugt, ver„ndern und
+gel”scht werden k”nnen. Das Erzeugen von Instanzen erfolgt immer impliziet. Das heiát beim
+Anfordern einer Instanz wird sie erzeugt, wenn sie nicht vorhanden war.
+
+ Af1Ausnahmen
+Aga
+Eine Ausname bildet die Methode GetPosEle, wenn an der angegebenen Stelle keine Instanz steht, so
+wird eine ungltige Instanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Die Implementation ist nicht auf Geschwindigkeit und Speicherbedarf optimiert.
+
+Af1Querverweise
+Aga
+Klassen: RscDataBase, RscHrc, RscSrc, RSCINST, RscTop, RscId.
+
+Af1Beispiel
+AgaDas Beispiel zeigt, wie der Wert einer Variablen ge„ndert wird
+Ali.....
+RscInst aWindow;
+RscInst aBorder;
+RscTop* pWindowType;
+
+// Typ des Klasse Window
+pWindowType = aDataBase.GetClassType( HashId( "Window" ) );
+// Exemplar der Klasse Window erzeugen
+aWindow = aCompilerInst.CreateRscInst( pWindowType );
+// Exemplar mit Namen "Border" holen
+aBorder = aWindow.GetVar( HashId( "Border" ) );
+// Wert auf TRUE setzen
+aBorder.SetBool( TRUE );
+.....
+Aga
+ Au0PARscInst::RscInst()
+Aga
+AliRscInst::RscInst();
+RscInst::RscInst( const RscInst & rInst );
+RscInst::RscInst( RSCINST aTmpI );
+
+Af1Beschreibung
+Aga
+Diese Instanz beinhaltet nur eine Referenz auf die Resourcedaten.
+
+Af1Parameter
+Aga
+AfprInst ist die Instanz, aus der die Referenz bernommen wird.
+aTmpI Aus dieser Instanz wird eine RscInst erzeugt.
+
+Af1Anmerkungen
+Aga
+RscInst hat zwei verschiedene Zust„nde die mit der Methode IsInst() abgefragt werden k”nnen. Liefert
+IsInst() TRUE zurck, dann ist es eine gltige Instanz. Anderenfalls ist die Instanz ungltig und alle
+Methoden liefern Fehler oder weitere ungltige Instanzen.
+
+Af1Querverweise
+Aga
+Klassen: RSCINST, ERRTYPE.
+Methoden: IsInst(), GetClassType().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::operator = ()
+Aga
+AliRscInst & RscInst::operator = ( const RscInst & rInst );
+Aga
+Af1Beschreibung
+Aga
+Es werden die Referenzen von rInst bernommen.
+
+Af1Parameter
+Aga
+AfprInst Intanz von dem die Referenzen bernommen werden.
+Aga
+Af1Return-Werte
+Aga
+Es wird die eigene Instanz zurckgeliefert.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+
+Au0RscInst::~RscInst()
+Aga
+AliRscInst::~RscInst();
+Aga
+Af1Beschreibung
+Aga
+Im Destruktor passiert nichts.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+ Au0RscInst::OverWrite()
+Aga
+Alivoid RscInst::OverWrite( RscInstCopy & rInst );
+Aga
+Af1Beschreibung
+Aga
+Die Daten in der Instanz werden mit den Daten in rInst berschrieben.
+
+Af1Parameter
+Aga
+AfprInst ist die Instanz, deren Daten eingesetzt werden.
+Aga
+Af1Anmerkungen
+Aga
+Stimmen die Typen nicht berein, werden die Daten der gemeinsamen Oberklassen bernommen. Die
+anderen Daten werden auf Default gesetzt.
+
+Af1Querverweise
+Aga
+Klasse: RscTop.
+Methode: RscInstCopy::RscInstCopy(), RscTop::Create().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::IsInst()
+Aga
+AliBOOL RscInst::IsInst();
+Aga
+Af1Beschreibung
+Aga
+Zeigt an ob eine gltige Instanz vorligt.
+
+Af1Return-Werte
+Aga
+AfpTRUE heiát, es liegt eine gltige Instanz vor.
+FALSE heiát, es liegt keine gltige Instanz vor.
+Aga
+Af1Querverweise
+Aga
+Klasse: RSCINST
+Methode: RSCINST::IsInst();
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetElement()
+Aga
+AliERRTYPE RscInst::SetElement( const RscId & rName,
+ RscInstCopy & rInst);
+Aga
+Af1Beschreibung
+Aga
+Die Methode fgt eine Resourceinstanz unter dem Namen rName ein.
+
+Af1Parameter
+Aga
+AfprInst ist die Instanz die eingefgt werden soll.
+AfprName ist der Identifier unter dem die Instanz eingefgt wird.
+ Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() bedeutet, die Instanz wurde Eingefgt.
+anderer Wert bedeutet, daá ein Fehler aufgetreten ist.
+Aga
+Af1Anmerkungen
+Aga
+Wenn in der Liste unter diesem Namen und Typ schon eine Instanz steht, wird die Instanz gel”scht
+und die neue Instanz wird an der gleichen Stelle eingefgt. Wenn rName keine gltige Id enth„lt, wird
+die Instanz am Ende angefgt.
+
+Af1Querverweise
+Aga
+Klassen: ERRTYPE, RscId, RSCINST.
+Methoden: SetPosEle(), RscId::IsId().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetPosEle()
+Aga
+AliERRTYPE RscInst::SetPosEle( USHORT nPos,
+ RscInstCopy & rInst );
+Aga
+Af1Beschreibung
+Aga
+An der Position nPos wird eine Resourceinstanz durch rInst ersetzt.
+
+Af1Parameter
+Aga
+AfprInst ist die Instanz die an die Position nPos gesetzt wird.
+nPos ist die Position an die die Instanz gesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() bedeutet, die Instanz auf nPos wurde ersetzt.
+andere Wert bedeutet, die Instanz wurde nicht ersetzt.
+Aga
+Af1Anmerkungen
+Aga
+Wenn ein Fehler zurckgeliefert wird, so heiát das meistens, daá an der Position nPos keine
+Reourceinstanz steht.
+
+Af1Querverweise
+Aga
+Klassen: ERRTYPE, RSCINST.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetPosRscId()
+Aga
+AliERRTYPE RscInst::SetPosRscId( USHORT nPos,
+ const RscId & rId );
+Aga
+Af1Beschreibung
+Aga
+An der Position nPos wird der Identifier durch rId ersetzt.
+
+Af1Parameter
+Aga
+AfprId ist die Id die an die Position nPos gesetzt wird.
+nPos ist die Position, an die die Id gesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() bedeutet, die Id auf nPos wurde ersetzt.
+andere Wert bedeutet, die Id wurde nicht ersetzt.
+Aga
+Af1Anmerkungen
+Aga
+Wenn ein Fehler zurckgeliefert wird, so heiát das meistens, daá an der Position nPos keine
+Reourceinstanz steht.
+
+Af1Querverweise
+Aga
+Klassen: ERRTYPE, RSCINST.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+
+Aga
+Au0RscInst::GetInfoEle()
+Aga
+AliSUBINFO_STRUCT RscInst::GetInfoEle( USHORT nPos );
+Aga
+Af1Beschreibung
+Aga
+Es wird Information ber die Resourceinstanz, die auf nPos steht, zurckgeliefert.
+
+Af1Parameter
+Aga
+AfpnPos ist die Position der Resourceinstanz.
+Aga
+Af1Return-Werte
+Aga
+Die Information ber die Resourceinstanz wird zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Steht an der Stelle nPos keine Resourceinstanz, dann ist der Inhalt undefiniert.
+
+Af1Querverweise
+Aga
+Klassen: SUBINFO_STRUCT, RSCINST.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetCount()
+Aga
+AliUSHORT RscInst::GetCount();
+Aga
+Af1Beschreibung
+Aga
+Gibt die Anzahl der Resourceinstanzen zurck, die in der Liste gespeichert sind.
+
+Af1Return-Werte
+Aga
+Es wird die Anzahl der Resourceinstanzen zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klasse: RSCINST.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::GetElement()
+Aga
+AliRscInst RscInst::GetElement( RscTop * pClass,
+ const RscId & rName );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode liefert eine Referenz auf die Daten der Instanz zurck, die unter diesem Namen in der
+Liste steht. Wenn unter diesem Namen keine Instanz steht, dann wir sie erzeugt.
+
+Af1Parameter
+Aga
+AfppClass ist der Typ der Instanz.
+rName ist der Identifier der Instanz.
+Aga
+Af1Return-Werte
+Aga
+Es wird eine Instanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Besteht in der Liste eine Einschr„nkung auf bestimmte Resourceinstanzen, zum Beispiel nur Instanzen
+vom Typ Window oder abgeleitete Typen, dann kann es vorkommen, daá eine ungltige Instanz
+zurckgeliefert wird.
+
+Af1Querverweise
+Aga
+Klassen: RscTop, RscId.
+Methode: IsInst().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::GetPosEle()
+Aga
+AliRscInst RscInst::GetPosEle( USHORT nPos );
+Aga
+Af1Beschreibung
+Aga
+Es wird eine Referenz auf die Daten der Instanz an der angegebenen Stelle zurckgeliefert.
+
+Af1Parameter
+Aga
+AfpnPos ist die Position der Resourceinstanz.
+Aga
+Af1Return-Werte
+Aga
+ Es wird eine Resourceinstanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Wenn an der Position keine Instanz steht, dann wird eine ungltige Instanz zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klasse: RscInst.
+Methode: IsInst().
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::MovePosEle()
+Aga
+AliERRTYPE RscInst::MovePosEle( USHORT nDestPos
+ USHORT nSourcePos );
+Aga
+Af1Beschreibung
+Aga
+In einem Feld wird die Resourceinstanz an der Position nSourcePos an die Stelle nDestPos
+verschoben.
+
+Af1Parameter
+Aga
+AfpnDestPos An dieser Position wird die Instanz eingefgt.
+nSourcePos Von dieser Position wird die Instanz genommen.
+Aga
+Af1Return-Werte
+Aga
+Es wird ein Fehler zurckgegeben, wenn nSourcePos oder nDestPos ungltige Positionen sind.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+0Ä
+Aga
+Au0RscInst::DeleteElement()
+Aga
+AliERRTYPE RscInst::DeleteElement( RscTop * pClass,
+ RscId& rName );
+Aga
+Af1Beschreibung
+Aga
+In der Liste wird die erste Resourceinstanz mit dem entsprechenden Namen und dem Typ gel”scht.
+
+Af1Parameter
+Aga
+AfppClass ist der Typ der Resourceinstanz.
+rName ist der Identifier der Resourceinstanz.
+Aga
+Af1Return-Werte
+Aga
+Gibt es keinen Fehler, dann wurde die Resourceinstanz gel”scht.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTop, RscId.
+
+ AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::DeletePosEle()
+Aga
+AliERRTYPE RscInst::DeletePosEle( USHORT nPos );
+Aga
+Af1Beschreibung
+Aga
+Die Resourceinstanz an der Stelle nPos wird gel”scht.
+
+Af1Parameter
+Aga
+AfpnPos ist die Position der Resourceinstanz.
+Aga
+Af1Return-Werte
+Aga
+Gibt es keinen Fehler, dann wurde die Resourseinstanz gel”scht.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetVar()
+Aga
+AliERRTYPE RscInst::SetVar( HASHID nVarName,
+ RscInstCopy & rInst );
+Aga
+Af1Beschreibung
+Aga
+In die Variable mit Namen nVarName wird die Resourceinstanz rInst eingesetzt.
+
+Af1Parameter
+Aga
+AfpnVarName ist der Name der Variablen.
+rInst ist die Instanz, die eingesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde die Instanz eingesetzt.
+Aga
+Af1Anmerkungen
+Aga
+Ein Fehler tritt auf, wenn der Variablentyp und der Instanztyp nicht bereinstimmen.
+
+Af1Querverweise
+Aga
+Klasse: RscTop.
+Methode: GetVar().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetConst()
+Aga
+AliERRTYPE RscInst::SetConst( HASHID nConst );
+Aga
+Af1Beschreibung
+Aga
+ In die Instanz wird die Konstante nConst eingesetzt.
+
+Af1Parameter
+Aga
+AfpnConst ist die Konstante, die eingesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+Gibt es keinen Fehler, wurde die Konstante eingesetzt.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: GetConst().
+
+Af1Beispiel
+AgaŽnderung einer Konstanten.
+
+AliRscInstCopy aColorInst;
+RscInst aConst;
+RscTop* pColorType;
+.....
+// Erzeuge Farbinstanz
+aColorInst = aCmpInst.CreateRscInst( pColorType );
+//Const-Instanz holen
+aConst = aColorInst.GetVar( HashId( "Predefined" ) );
+// Farbe auf blau setzten
+aConst.SetConst( HashId( "COL_BLUE" ) );
+// Die gleiche Wirkung haette
+// aConst.SetNumber( COL_BLUE );
+// wobei COL_BLUE in sv.hxx definiert ist
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetBool()
+Aga
+AliERRTYPE RscInst::SetBool( BOOL bVal );
+Aga
+Af1Beschreibung
+Aga
+In die Instanz wird der Wert bVal eingesetzt.
+
+Af1Parameter
+Aga
+AfpbVal ist der Wert, der eingesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde der Wert eingesetzt.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: GetBool().
+
+Af1Beispiel
+AgaŽndern eines Wahrheitswertes.
+
+ AliRscInstCopy aWindowInst;
+RscInst aBool;
+RscTop* pWindowType;
+.....
+// Erzeuge Windowinstanz
+aWindowInst = aCmpInst.CreateRscInst( pWindowType );
+aBool = aWindowInst.GetVar( HashId( "Border" ) );
+// Fensterattribut Rand setzen
+aBool.SetBool( TRUE );
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+Au0RscInst::SetNumber()
+Aga
+AliERRTYPE RscInst::SetNumber( long lVal );
+Aga
+Af1Beschreibung
+Aga
+In die Instanz wird der Wert lVal eingesetzt.
+
+Af1Parameter
+Aga
+AfplVal ist der Wert, der eingesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde die Zahl eingesetzt.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: GetNumber().
+
+Af1Beispiel
+AgaŽndern eines Zahlenwertes.
+
+AliRscInstCopy aColorInst;
+RscInst aNumber;
+RscTop* pColorType;
+.....
+// Erzeuge Farbinstanz
+aColorInst = aCmpInst.CreateRscInst( pColorType );
+aNumber = aColorInst.GetVar( HashId( "RED" ) );
+// volle Rotintensit„t
+aNumber.SetNumber( 0xFFFF );
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::SetString()
+Aga
+AliERRTYPE RscInst::SetString( const char * pStr );
+Aga
+Af1Beschreibung
+Aga
+In die Instanz wird der String pStr eingesetzt.
+
+Af1Parameter
+ Aga
+AfppStr ist der String, der eingesetzt wird.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde der String eingesetzt.
+Aga
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: GetString();
+
+Af1Beispiel
+AgaŽndern einer Zeichenkette.
+
+AliRscInstCopy aFontInst;
+RscInst aStr;
+RscTop* pFontType;
+.....
+// Erzeuge Fontinstanz
+aFontInst = aCmpInst.CreateRscInst( pFontType );
+aStr = aFontInst.GetVar( HashId( "Text" ) );
+// Fontnamen setzen
+aStr.SetString( "Helvetica" );
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::SetRef()
+Aga
+AliERRTYPE RscInst::SetRef( const RscId & rRefName );
+Aga
+Af1Beschreibung
+Aga
+Beim Schreiben der verschiedenen Dateien wird nicht die Resourceinstanz verwendet, sondern eine
+Resourceinstanz vom selben Typ mit dem Namen rRefName. Diese Instanz wird in der Datenbasis
+gesucht.
+
+Af1Parameter
+Aga
+AfprRefName ist der Identifier der referenzierten Instanz.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde die Referenz eingesetzt.
+
+Af1Anmerkungen
+Aga
+Die referenzierte Instanz wird nur in der ersten Ebene der Datenbasis gesucht.
+Mit SetRef( RscId() ), werden die Referenzen wieder aufgehoben.
+
+Af1Querverweise
+Aga
+Klassen: RscTop, RscId.
+Methoden: GetRef().
+
+Af1Beispiel
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ Aga
+Au0RscInst::SetDefault()
+Aga
+AliERRTYPE RscInst::SetDefault( HASHID nVarName );
+Aga
+Af1Beschreibung
+Aga
+Die Instanz hinter der Variable nVarName wird auf ihre Defaultwerte gesetzt.
+
+Af1Parameter
+Aga
+AfpnVarName ist der Name der Variablen.
+Aga
+Af1Return-Werte
+Aga
+AgaGibt es keinen Fehler, wurde die Instanz nicht auf Default gesetzt.
+
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: IsDefault().
+
+Af1Beispiel
+Aga
+AliRscInst aColorInst;
+RscTop* pColorType;
+.....
+// Hole Farbinstanz
+aColorInst = aCmpInst.GetRscInst( pColorType,
+ RscId( 1000 ) );
+// Rot auf Default setzten
+aColorInst.SetDefault( HashId( "Red" ) );
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+
+Au0RscInst::GetVar()
+Aga
+AliRscInst RscInst::GetVar( HASHID nVarName );
+Aga
+Af1Beschreibung
+Aga
+Die Methode liefert eine Kopie des Inhaltes der Variablen nVarName.
+
+Af1Parameter
+Aga
+AfpnVarName ist der Name der Variablen.
+Aga
+Af1Return-Werte
+Aga
+Es wird eine Resourceinstanz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Existiert keine Variable unter diesem Namen, dann wird eine ungltige Instanz zurckgeliefert.
+
+Af1Querverweise
+ Aga
+Klassen: RscTop.
+Methoden: SetVar().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetConst()
+Aga
+AliHASHID RscInst::GetConst();
+Aga
+Af1Beschreibung
+Aga
+Die Methode liefert die Instanz als Konstante.
+
+Af1Return-Werte
+Aga
+Der Wert der Konstanten.
+Kann die Instanz nicht in eine Konstante umgewandelt werden, wird HASH_NONAME
+zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: SetConst().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetBool()
+Aga
+AliBOOL RscInst::GetBool();
+Aga
+Af1Beschreibung
+Aga
+Die Methode liefert die Instanz als Wahrheitswert.
+
+Af1Return-Werte
+Aga
+Es wird ein boolscher Wert zurckgeliefert.
+Kann die Instanz nicht in einen Wahrheitswert umgewandelt werden, wird FALSE zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: SetBool().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetNumber()
+Aga
+Alilong RscInst::GetNumber();
+Aga
+Af1Beschreibung
+Aga
+Die Methode liefert die Instanz als Zahl.
+
+ Af1Return-Werte
+Aga
+Es wird ein Wert zurckgeliefert.
+Kann die Instanz nicht in ein Zahl umgewandelt werden, wird 0 zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: SetNumber().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetString()
+Aga
+Aliconst char * RscInst::GetVar();
+Aga
+Af1Beschreibung
+Aga
+Die Methode liefert die Instanz als String.
+
+Af1Return-Werte
+Aga
+Es wird ein Zeiger auf eine Zeichenkette zurckgeliefert.
+Kann die Instanz nicht in einen String umgewandelt werden, wird NULL zurckgeliefert.
+
+Af1Querverweise
+Aga
+Klassen: RscTop.
+Methoden: SetString().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetRef()
+Aga
+AliRscId RscInst::GetRef();
+Aga
+Af1Beschreibung
+Aga
+Ist in der Instanz eine Referenz eingetragen, wird diese zurckgegeben.
+
+Af1Return-Werte
+Aga
+Es wird der Identifier der Referenz zurckgeliefert.
+
+Af1Anmerkungen
+Aga
+Der zurckgelieferte Identifier kann ungltig sein. Das ist der Fall, wenn keine Referenz besteht.
+
+Af1Querverweise
+Aga
+Klassen: RscTop, RscId.
+Methode: IsId(), SetDefault().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+ Au0RscInst::IsDefault()
+Aga
+AliBOOL RscInst::IsDefault( HASHID nVarName );
+Aga
+Af1Beschreibung
+Aga
+Stellt fest ob die genannte Variable noch die Defaulteinstellung besitzt.
+
+Af1Parameter
+Aga
+AfpnVarName ist der Name der Variablen.
+Aga
+Af1Return-Werte
+Aga
+AfpTRUE bedeutet, die Variable hat die Defaulteinstellung.
+FALSE bedeutet, sie wurde ver„ndert.
+Aga
+Af1Querverweise
+Aga
+Methoden: SetDefault().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::IsConsistent()
+Aga
+AliBOOL RscInst::IsConsistent( RscInconsList * pList );
+Aga
+Af1Beschreibung
+Aga
+Die Methode berprft ob diese Instanz noch konsistent ist.
+
+Af1Parameter
+Aga
+AfppList Eine Liste die mit den RscId-Objekten gefllt wird, die
+"Inkonsistenzen hervorrufen. pList darf Null sein.
+Aga
+Af1Return-Werte
+Aga
+AfpTRUE bedeutet die Instanz ist konsistent.
+FALSE bedeutet die Instanz ist inkonsistent.
+Aga
+Af1Anmerkungen
+Aga
+Ein RscId-Objekt kann aus Objekten zusammengesetzt sein, die global ver„ndert werden k”nnen.
+Nach einer solchen Ver„nderung muá die Konsistenz berprft werden.
+
+Af1Querverweise
+Aga
+Klassen: RscId, RscHrc, RscFileTab.
+Mehtoden: RscDataBase::MakeConsistent(), RscTop::IsConsistent().
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Au0
+Au0RscInst::GetClassEnum()
+Aga
+ AliHASHID RscInst::GetClassEnum( USHORT nPos );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode liefert den Namen der Konstanten zurck, die in einem Aufz„hlungstyp an der Position
+nPos definiert ist.
+
+Af1Parameter
+Aga
+AfpnPos Position der Konstante.
+Aga
+Af1Return-Werte
+Aga
+AfpHASH_NONAME Dieser Wert wird zurckgeliefert, wenn der Variablentyp kein
+"Aufz„hlungstyp war oder wenn nPos >= der Anzahl der
+"Konstanten.
+AgaSonst wird der Name der Konstanten zurckgeliefert.
+Aga
+Af1Beispiel
+Aga
+Das Beispiel zeigt wie die Namen eine Aufz„hlungstypen ermittelt werden k”nnen.
+AgaVariable ist ein Aufz„hlungstyp mit den Werten COL_WHITE, COL_RED und COL_BLACK. Die
+Konstanten haben die Name "White", "Red", "Black".
+Der Variablenname ist "Predefined".
+Die Klasse, in der diese Variable definiert ist, heiát "Color".
+Ali
+HASHID nConstName;
+HASHID nVarName;
+RscInst aColorInst;
+RscInst aConst;
+USHORT i;
+
+nVarName = HashId( "Predefined" ); //Variablennamen setzen
+// pCmpEd ist eine Compiler-Instanz
+aColorInst = pCmpEd->CreateRscInst(
+ pCmpEd->GetClassType( HashId( "Color" ) ) );
+ if( aColorInst.IsInst() ){ //Instanz wurde erzeugt
+ aConst = aColorInst.GetVar( nVarName );
+ i = 0;
+ nConstName = aConst.GetClassEnum( i );
+ while( HASH_NONAME != nConstName ){
+  printf( "%s\n", GetHashString( nConstName ) );
+  i++;
+  nConstName = aConst.GetClassEnum( i );
+ }
+}
+Aga
+Die Ausgabe ist:
+White
+Red
+Black
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetTypeClass()
+Aga
+AliRscTop * RscInst::GetTypeClass();
+Aga
+Af1Beschreibung
+ Aga
+Diese Methode liefert den Typ der Instanz zurck.
+
+Af1Return-Werte
+Aga
+Der Typ der Instanz wird zurckgeliefert.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInst::GetClassName()
+Aga
+AliHASHID RscInst::GetClassName();
+Aga
+Af1Beschreibung
+Aga
+Diese Methode liefert den Namen einer Klasse.
+
+Af1Return-Werte
+Aga
+AfpHASH_NONAME Dieser Wert wird zurckgeliefert, wenn die Klasse keinen Namen
+"hat.
+AgaAnsonsten wird der Name der Klasse zurckgeliefert.
+
+Af1Beispiel
+AgaDiese Funktion gibt zu einer Instanz den Klassennamen aus.
+
+Alivoid PrintClassName( RscInst & rInst ){
+// rInst, Instanz deren Klassenname ausgegeben werden soll
+HASHID nClassName;
+
+nClassName = rInst.GetClassName(); // Klassenname holen
+if( HASH_NONAME == nClassName )
+ printf( "Kein Klassenname\n" );
+else
+ printf( "%s\n", GetHashString( nClassName ) );
+}
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Au0
+Au0RscInst::WriteRc()
+Aga
+AliERRTYPE RscInst::WriteRc( RscWriteRc & aMem );
+Aga
+Af1Beschreibung
+Aga
+Diese Methode erzeugt eine Resource im StarView Resourceformat. Mit dieser Resource kann der
+Resourcekonstruktor der entsprechenden Klasse gerufen werden.
+
+Af1Parameter
+Aga
+AfpaMem ist die Instanz, die die Resourcedaten enth„lt.
+Aga
+Af1Return-Werte
+Aga
+AfpERRTYPE.IsOk() bedeutet, daá in aMem eine korrekte Resource steht.
+ anderer Wert bedeutet, das Format ist nicht korrekt.
+Aga
+Af1Ausnahmen
+Aga
+Die System abh„ngigen Resourcen Icon, Bitmap und Pointer werden nicht vollst„ndig geschrieben.
+Um einen Programmfehler zu vermeiden, mssen die StarView-Klassen entsprechend abgesichert sein.
+
+Af1Anmerkungen
+Aga
+Die Referenzen mssen zum Zeitpunkt von WriteRc aufgel”st werden k”nnen. K”nnen sie nicht
+aufgel”st werden, werden die Daten der Instanz benutzt, in der die Referenz angegeben ist.
+
+Af1Querverweise
+Aga
+Klassen: RscWriteRc, ERRTYPE.
+
+Af1Beispiel
+Aga
+AliRscInst aColor;
+RscTop* pColorType;
+Color aSvColor;
+
+// Farbinstanz erzeugen
+aColor = aCmpInst.CreateColor( pColorType );
+// Farbe auf Gelb setzten
+AliaColor.SetConst( HashId( "Predefined" ),
+ HashId( "COL_YELLOW" ) );
+
+RscWriteRc aMem;
+if( aColor.WriteRc( aMem ).IsOk() ){
+ aSvColor = Color( RscId( aMem.GetRes() ) );
+ .....
+};
+Aga
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ Au0PARscInstCopy
+Aga
+Aliclass RscInstCopy {
+public:
+ RscInstCopy();
+ RscInstCopy( const RscInstCopy & rInst );
+ RscInstCopy( const RscInst & rInst );
+ RscInstCopy( RSCINST aTmpI );
+ RscInstCopy( RscTop * pNewType,
+ const RscInst & rInst );
+ RscInstCopy& operator = (const RscInstCopy & rRscInst);
+ RscInstCopy& operator = ( const RscInst & rRscInst );
+ ~RscInstCopy();
+};
+Aga
+Af1Beschreibung
+Aga
+Mit Hilfe dieser Klasse wird eine Kopie einer Resourceinstanz angefertigt. Die Kopie enth„lt keine
+Referenz in die Datenbasis. Es kann somit auch nicht zu einem Fehler kommen, wenn eine
+Resourceinstanz in der Datenbasis gel”scht wird. Solch ein Fehler kann bei einer Instanz der Klasse
+RscInst auftreten.
+
+Af1Anmerkung
+Aga
+Alle Makros die in der Datenbasis ge„ndert werden, „ndern sich auch in dieser Instanz. Mit der
+Methode IsConsistent() kann diese Instanz auf Konsistenz berprft werden.
+
+Af1Querverweise
+Aga
+Klassen: RscDataBase, RscHrc, RscSrc, RSCINST, RscTop, RscId.
+
+Af1Beispiel
+AgaDas Beispiel zeigt, wie der Wert einer Variablen ge„ndert wird
+Ali.....
+RscInstCopy aWindow;
+RscInstCopy aBorder;
+RscTop* pWindowType;
+
+// Typ des Klasse Window
+pWindowType = aDataBase.GetClassType( HashId( "Window" ) );
+// Exemplar der Klasse Window erzeugen
+aWindow = aCompilerInst.CreateRscInst( pWindowType );
+// Exemplar mit Namen "Border" holen
+aBorder = aWindow.GetVar( HashId( "Border" ) );
+// Wert auf TRUE setzen
+aBorder.SetBool( TRUE );
+// wieder in aWindow einsetzen
+aWindow.SetVar( HashId( "Border" ), aBorder );
+.....
+Aga
+ Au0PARscInstCopy::RscInstCopy()
+Aga
+AliRscInstCopy::RscInstCopy();
+RscInstCopy::RscInstCopy( const RscInst & rInst );
+RscInstCopy::RscInstCopy( const RscInstCopy & rInst );
+RscInstCopy::RscInstCopy( RSCINST aTmpI );
+RscInstCopy::RscInstCopy( RscTop * pNewType,
+ const RscInst & rInst );
+Aga
+Af1Beschreibung
+Aga
+Im Konstruktor wird eine Instanz erzeugt oder kopiert.
+
+Af1Parameter
+Aga
+AfprInst ist die Instanz, die kopiert wird.
+aTmpI Aus dieser Instanz wird eine RscInstCopy erzeugt.
+pNewType Wenn dieser Konstruktor verwendet wird, wird eine Instanz mit
+"Typ pNewType erzeugt. Alle Daten ab der ersten gemeinsamen
+"Oberklasse von rInst und pNewType werden bernommen.
+Aga
+Af1Querverweise
+Aga
+Klassen: RSCINST, ERRTYPE.
+Methoden: IsInst(), GetClassType().
+
+Af1Beispiel
+AgaEs wird gezeigt wie aus einer Button-Instanz eine Edit-Instanz erzeugt wird.
+
+AliRscInstCopy aButton;
+RscInstCopy aEdit;
+RscTop * pEditType =
+ aDataBase.GetClassType( HashId( "Edit" ) );
+//Voraussetzung: In aButton ist gltige Button-Instanz
+//Erzeuge Edit-Instanz
+aEdit = RscInstCopy( pEditType, aButton );
+Aga
+Alle Daten oberhalb von der Klasse Control wurden nach aEdit kopiert.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Au0RscInstCopy::operator = ()
+Aga
+AliRscInstCopy & RscInstCopy::operator =
+ ( const RscInst & rInst );
+RscInstCopy & RscInstCopy::operator =
+ ( const RscInstCopy & rInst );
+Aga
+Af1Beschreibung
+Aga
+Es werden die Daten von rInst in die Instanzdaten kopiert.
+
+Af1Parameter
+Aga
+AfprInst Intanz von dem die Daten bernommen werden.
+Aga
+Af1Return-Werte
+Aga
+ Es wird die eigene Instanz zurckgeliefert.
+Aga
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+
+Au0RscInstCopy::~RscInstCopy()
+Aga
+AliRscInstCopy::~RscInstCopy();
+Aga
+Af1Beschreibung
+Aga
+Die Daten in der Instanz werden gel”scht.
+
+AgaÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+Aga
+ SsvPA
+Au0Stichwortverzeichnis
+Aga
+Asv
+RscDataBase 6
+RscDataBase::AddHrcFile() 11
+RscDataBase::AddSrcFile() 10
+RscDataBase::FindDef() 12
+RscDataBase::GetClassType() 7
+RscDataBase::GetFileKey() 12
+RscDataBase::GetFileStruct() 9
+RscDataBase::GetFileTab() 9
+RscDataBase::GetPathList() 10
+RscDataBase::MakeConsistent()  8
+RscDataBase::RemoveFile() 12
+RscDataBase::RscDataBase() 7
+RscDataBase::ScanForIncFiles()  11
+RscHrc #14
+RscHrc::ChangeDef() 20
+RscHrc::ChangeDefName() 22
+RscHrc::DeleteDef() 21
+RscHrc::FindDef() 19
+RscHrc::GetDefineList() 18
+RscHrc::GetDependList() 23
+RscHrc::GetFileKey() 16
+RscHrc::GetFileName() 18
+RscHrc::GetFileStruct() 22
+RscHrc::GetPathName() 17
+RscHrc::InsertDepend() 18
+RscHrc::IsDefUsed() 21
+RscHrc::IsDirty() 16
+RscHrc::NewDef() 19
+RscHrc::ReadFile() 15
+RscHrc::RscHrc() 15
+RscHrc::SetDirty() 16
+RscHrc::SetFileName() 17
+RscHrc::SetPathName() 17
+RscHrc::WriteFile() 23
+RscHrc::~RscHrc() 15
+RscInst "31
+RscInst::DeleteElement() 38
+RscInst::DeletePosEle() 39
+RscInst::GetBool() 44
+RscInst::GetClassEnum() 46
+RscInst::GetClassName() 48
+RscInst::GetConst() 44
+RscInst::GetCount() 36
+RscInst::GetElement() 37
+RscInst::GetInfoEle() 36
+RscInst::GetNumber() 44
+RscInst::GetPosEle() 37
+RscInst::GetRef() 45
+RscInst::GetString() 45
+RscInst::GetTypeClass() 47
+RscInst::GetVar() 43
+RscInst::IsConsistent() 46
+RscInst::IsDefault() 46
+RscInst::IsInst() 34
+RscInst::MovePosEle() 38
+RscInst::operator = () 33
+RscInst::OverWrite() 34
+RscInst::RscInst() 33
+RscInst::SetBool() 40
+RscInst::SetConst() 39
+RscInst::SetDefault() 43
+RscInst::SetElement() 34
+RscInst::SetNumber() 41
+RscInst::SetPosEle() 35
+RscInst::SetPosRscId() 35
+RscInst::SetRef() 42
+RscInst::SetString() 41
+RscInst::SetVar() 39
+RscInst::WriteRc() 48
+RscInst::~RscInst() 33
+RscInstCopy 50
+RscInstCopy::operator = () 51
+RscInstCopy::RscInstCopy() 51
+RscInstCopy::~RscInstCopy() 52
+RscSrc #24
+RscSrc::CreateRscInst() 26
+RscSrc::DeleteRscInst() 27
+RscSrc::FillNameIdList() 29
+RscSrc::GetRscInst() 28
+RscSrc::RscSrc() 26
+RscSrc::SetRscInst() 27
+RscSrc::Write...File() 30
+
+Aga
+ \ No newline at end of file
diff --git a/rsc/doku/schriftw.16/change.doc b/rsc/doku/schriftw.16/change.doc
new file mode 100644
index 000000000000..4a2120bd1d3c
--- /dev/null
+++ b/rsc/doku/schriftw.16/change.doc
@@ -0,0 +1,1105 @@
+.\\\ WRITER 5 \\\
+S:\APP\SW5\STARLAB.LAY
+S:\APP\SW5\TREIBER\PS.BIN
+12
+00012
+00010
+00940
+00001
+00001
+00001
+00002
+00002
+00000
+00000
+00000
+00000
+N 383284761 Mm
+S 383284859 484 116 4
+D 0 0
+N 383996714 Mm
+S 383996741 494 117 4
+D 0 0
+N 384006675 Mm
+S 384006697 502 117 4
+D 0 0
+N 384133637 Mm
+S 384133699 502 117 3
+D 384133693 3 PostScript
+
+
+
+
+
+
+
+
+
+
+16836
+11338
+0
+0
+JA
+0
+0
+0
+JA
+
+
+
+9
+20
+4
+Helvetica 14 Pt
+H1
+97
+20
+0
+Helvetica 12 Pt
+H2
+65
+23
+0
+Helvetia 10 Pt
+H3
+65
+20
+0
+Courier 10 Pt
+C1
+1
+23
+0
+Helvetica 14 Pt Fett
+F1
+65
+27
+2
+Helvetica 12 Pt Fett
+F2
+65
+23
+2
+Helvetia 10 Pt Fett
+F3
+65
+20
+0
+Tasten
+T1
+129
+27
+0
+Grundschrift
+GA
+97
+20
+0
+Grund - Absatzlayout V1.5-LSLP8
+GA
+0
+0
+0
+0
+9
+97
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Grundabsatzlayout-rechtsbndig
+GR
+0
+0
+0
+0
+9
+35
+20
+0
+2
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Listing
+LI
+0
+0
+0
+0
+0
+1
+23
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift
+U0
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+0
+NEIN
+JA
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift X.
+U1
+0
+0
+0
+0
+5
+35
+28
+2
+1
+0
+1
+0
+NEIN
+JA
+240
+1
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift X.X.
+U2
+0
+0
+0
+0
+6
+35
+24
+2
+1
+0
+1
+0
+NEIN
+JA
+240
+2
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift X.X.X.
+U3
+0
+0
+0
+0
+6
+35
+20
+2
+1
+0
+1
+0
+NEIN
+JA
+240
+3
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift X.X.X.X.
+U4
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+4
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+šberschrift X.X.X.X.X.
+U5
+0
+0
+0
+0
+7
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+5
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Einrckung 4 Sp / 4 Sp
+E1
+576
+576
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Einrckung 8 Sp / 8 Sp
+E2
+1150
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Einrckung 0 Sp / 4 Sp
+E3
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Einrckung 4 Sp / 8 Sp
+E4
+564
+1150
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Funktionsparameter
+FP
+0
+2891
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Inhaltsverzeichnis
+IV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+1
+7653
+0
+Stichwortverzeichnis
+SV
+0
+0
+0
+0
+9
+35
+20
+0
+1
+141
+1
+32
+NEIN
+NEIN
+240
+0
+1
+3744
+1
+Fettschrift einzeilig
+F1
+0
+0
+0
+0
+7
+65
+20
+2
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+576
+0
+1152
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Punktliste
+PL
+0
+564
+0
+0
+9
+35
+20
+0
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+13
+566
+0
+1133
+0
+1728
+0
+2304
+0
+2880
+0
+3456
+0
+4032
+0
+4608
+0
+5184
+0
+5760
+0
+6336
+0
+6912
+0
+7488
+0
+Fuázeile
+FZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+1
+7200
+1
+Kopfzeile
+KZ
+0
+0
+0
+0
+3
+97
+20
+2
+1
+0
+1
+0
+NEIN
+NEIN
+240
+0
+1
+7920
+1
+Grund-Seitenlayout
+GS
+566
+849
+2436
+679
+1416
+1416
+0
+0
+1
+0
+0
+0
+AkzBf3#_PFAD##_TEXTNAME# $-#_S#-
+Bf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+AfzBf3$Date: 05 Jul 1991 13:18:52 $ $Revision: 1.1 $
+
+Stichwortverzeichnis
+SV
+566
+849
+2437
+680
+1416
+1416
+566
+0
+2
+0
+0
+0
+AliBf3Stichwortverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali6Bf3- #_S# -B00
+
+GS - ohne Fuázeile
+KF
+566
+849
+2437
+680
+1416
+1416
+0
+0
+1
+0
+0
+0
+AliBf3#_KATEGORIE# / #_THEMA2#
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+
+Ali
+
+Inhaltsverzeichnis
+IV
+566
+849
+2437
+680
+1416
+1416
+0
+0
+1
+0
+0
+0
+AliBf3Inhaltsverzeichnis
+AliBf3ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
+ÄÄÄÄÄÄÄ
+
+Ali
+
+
+
+
+0
+
+0
+
+Au0Žnderungen von der rsc-Compilerversion 1.12 zur Version 1.13
+
+Aga- Die L„nge eines Strings in den Extradaten hat sich ver„ndert.
+- Das Schlsselwort RESOURCE kann angegeben werden.
+- Die Klasse InfoBox wurde gestrichen, sie kann ber MessageBox definiert werden.
+- Die Klasse String kann jetzt als lokale Resource angegeben werden.
+- Die Abkrzung ID fr IDENTIFIER wurde gestrichen.
+- Anstelle von ENABLE gibt es jetzt DISABLE mit gegenteiliger Bedeutung.
+- Anstelle von VISIBLE gibt es jetzt HIDE mit gegenteiliger Bedeutung.
+- Jede Konstruktion mit Hilfen von AUTO_ID wurde gestrichen.
+- Anstelle von Justify = LEFT oder CENTER oder RIGHT wird jetzt Left = TRUE oder Center =
+TRUE oder Right = TRUE geschrieben.
+- Innerhalb der Klasse Brush heiát es statt
+ Color BRUSHCOLOR {...}; jetzt
+ BrushColor = Color { ... };
+ und statt
+ Color FILLCOLOR { ... }; jetzt
+ FillColor = Color { ... };
+- Innerhalb der Klass Pen heiát es statt
+ Color { ... }; jetzt
+ PenColor = Color { ... };
+- Innerhalb der Klasse MapMode sind die Schlsselw”rter HORIZONTALSCALE und
+VERTICALSCAL weggefallen. XSCALE und YSCALE sind jetzt Tupel.
+- Innerhalb der Klasse Accelerator heiát es statt
+ Accelerator {
+  AcceleratorKey { ... };
+  AcceleratorKey { ... };
+    .
+    .
+    .
+ }; jetzt
+ Accelerator {
+  KeyList = {
+   AcceleratorKey { ... };
+   AcceleratorKey { ... };
+  };
+ };
+- Innerhalb der Klasse AcceleratorKey heiát es statt
+ AcceleratorKey {
+  Accelerator { ... };
+ }; jetzt
+ AcceleratorKey {
+  SubAccelerator = Accelerator { ... };
+ };
+- Innerhalb der Klasse OutputDevice heiát es statt
+ OutputDevice {
+  Pen { ... };
+  Brush BACKGROUNDBRUSH { ... };
+  Brush FILLINBRUSH { ... };
+  Font { ... };
+  MapMode { ... };
+ }; jetzt
+ OutputDevice {
+  OutputPen = Pen { ... };
+  BackGroundBrush = Brush { ... };
+  FillInBrush = Brush { ... };
+  OutputFont = Font { ... };
+  OutputMapMode = MapMode { ... };
+ };
+- Innerhalb der Klasse Window heiát es statt
+ Window {
+  Pointer { ... };
+ }; jetzt
+ WindowPointer = Pointer { ... };
+- Das Schlsselwort FOCUS wurde gestrichen.
+- Windows die automatisch geladen werden sollen werden jetzt durch
+ Window {
+  WinChilds = {
+   FixedText { ... };
+   FixedText { ... };
+  };
+ }; spezifiziert.
+- Innerhalb der Klasse WorkWindow heiát es statt
+ WorkWindow {
+  Icon { ... };
+ }; jetzt
+ WorkWindow {
+  WorkWindowIcon = Icon { ... };
+ };
+- In der Klasse DialogBox wird
+ Mode = SYSTEMMODAL oder Mode = APPLICATIONMODAL durch
+ AppModal = TRUE oder SysModal = TRUE ersetzt.
+
+- Innerhalb der Klasse Menu heiát es statt
+ Menu {
+  MenuItem { ... };
+  MenuItem { ... };
+    .
+    .
+    .
+ }; jetzt
+ Menu {
+  ItemList = {
+   MenuItem { ... };
+   MenuItem { ... };
+  };
+ };
+und statt
+ Menu { ... Separator; ... }; jetzt
+ Menu { ...
+  MenuItem { Seperator = TRUE; };
+  ...
+ };
+- Innerhalb der Klasse MenuItem heiát es statt
+ MenuItem {
+  Menu { ... };
+ }; jetzt
+ MenuItem {
+  SubMenu = Menu { ... };
+ };
+- Innerhalb der Klasse ListBox heiát es statt
+ ListBox {
+  StringList = "Ich", "heiáe", "Eddie";
+ }; jetzt
+ ListBox {
+  StringList = { "Ich"; "heiáe"; "Eddie"; };
+ };
+ \ No newline at end of file
diff --git a/rsc/source/parser/rscicpx.cxx b/rsc/source/parser/rscicpx.cxx
index f492f2eb7cd3..497dd91ecffd 100644
--- a/rsc/source/parser/rscicpx.cxx
+++ b/rsc/source/parser/rscicpx.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: rscicpx.cxx,v $
*
- * $Revision: 1.5 $
+ * $Revision: 1.6 $
*
- * last change: $Author: ssa $ $Date: 2002-07-02 14:41:12 $
+ * last change: $Author: hr $ $Date: 2003-03-26 15:50:46 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -2218,14 +2218,20 @@ RscTop * RscTypCont::InitClassToolBox( RscTop * pSuper,
pClassToolBox->SetVariable( nId, pClassImageList, NULL, 0,
RSC_TOOLBOX_ITEMIMAGELIST );
{
+ RscLangArray* pLA;
RscCont * pCont;
aBaseLst.Insert( pCont = new RscCont( pHS->Insert( "ContToolBoxItem" ),
RSC_NOTYPE ),
LIST_APPEND );
pCont->SetTypeClass( pClassToolBoxItem );
+ aBaseLst.Insert( pLA = new RscLangArray( pHS->Insert( "LangContToolBoxItem" ),
+ RSC_NOTYPE,
+ pCont,
+ &aLangType, &nLangTypeId, &nDfltLangTypeId ),
+ LIST_APPEND );
nId = aNmTb.Put( "ItemList", VARNAME );
- pClassToolBox->SetVariable( nId, pCont, NULL, 0,
+ pClassToolBox->SetVariable( nId, pLA, NULL, 0,
RSC_TOOLBOX_ITEMLIST );
}
INS_WINBIT(pClassToolBox,Scroll)
diff --git a/rsc/source/parser/rsclex.hxx b/rsc/source/parser/rsclex.hxx
index e1b4704746ca..b925a119a6bf 100644
--- a/rsc/source/parser/rsclex.hxx
+++ b/rsc/source/parser/rsclex.hxx
@@ -2,9 +2,9 @@
*
* $RCSfile: rsclex.hxx,v $
*
- * $Revision: 1.1.1.1 $
+ * $Revision: 1.2 $
*
- * last change: $Author: hr $ $Date: 2000-09-18 16:42:55 $
+ * last change: $Author: hr $ $Date: 2003-03-26 15:50:46 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -58,70 +58,6 @@
*
*
************************************************************************/
-/************************************************************************
-
- Source Code Control System - Update
-
- $Log: not supported by cvs2svn $
- Revision 1.18 2000/09/17 12:51:11 willem.vandorp
- OpenOffice header added.
-
- Revision 1.17 2000/07/26 17:13:21 willem.vandorp
- Headers/footers replaced
-
- Revision 1.16 1999/09/24 13:15:07 hr
- forward decl.
-
- Revision 1.15 1998/09/24 17:51:52 HR
- GCC braucht richtige Vorwaertsdeklaration
-
-
- Rev 1.14 24 Sep 1998 17:51:52 HR
- GCC braucht richtige Vorwaertsdeklaration
-
- Rev 1.13 27 Aug 1997 18:17:16 MM
- neue Headerstruktur
-
- Rev 1.12 18 Oct 1996 16:27:12 MM
- dynamische Member
-
- Rev 1.11 24 Jul 1996 12:49:02 mda
- IRIX
-
- Rev 1.10 18 Jun 1996 13:38:14 MM
- Header Anpassungen
-
- Rev 1.9 05 Jun 1996 19:22:40 PL
- Deklarationen fuer SCO
-
- Rev 1.8 21 Nov 1995 19:49:50 TLX
- Neuer Link
-
- Rev 1.7 10 Jan 1995 11:23:04 eg
- HP9000 yyerror( const char* )
-
- Rev 1.6 09 Sep 1994 12:08:06 MH
- Watcom
-
- Rev 1.5 25 Apr 1994 15:02:20 sv
- HP9000 needs different declarations for yyerror and yylex (extern C)
-
- Rev 1.4 12 Jan 1994 15:20:44 mm
- Alignementprobleme und Warnings fuer DEC-Alpha beseitigt
-
- Rev 1.3 21 Sep 1993 10:03:44 mm
- RS6000 needs different prototyps (extern "C")
-
- Rev 1.2 25 Aug 1993 15:25:02 mm
- Fehler und Warnings beseitigt
-
- Rev 1.1 23 Dec 1992 14:05:44 mm
- Sprachaenderung
-
- Rev 1.0 10 Aug 1992 07:22:46 MM
- Initial revision.
-
-**************************************************************************/
#include <tools/stack.hxx>
#define MINBUF 256
diff --git a/rsc/source/rscpp/cpp1.c b/rsc/source/rscpp/cpp1.c
index f4fb360c8efe..2cdcbe98cd99 100644
--- a/rsc/source/rscpp/cpp1.c
+++ b/rsc/source/rscpp/cpp1.c
@@ -2,9 +2,9 @@
*
* $RCSfile: cpp1.c,v $
*
- * $Revision: 1.1 $
+ * $Revision: 1.2 $
*
- * last change: $Author: nf $ $Date: 2001-04-18 10:31:56 $
+ * last change: $Author: hr $ $Date: 2003-03-26 15:50:48 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -66,13 +66,8 @@
#include "cppdef.h"
#include "cpp.h"
-/*#ifdef S390*/
FILE *pCppOut = NULL;
FILE *pCppIn = NULL;
-/* #else
-FILE *pCppOut = stdout;*/ /* BP */ /* in cpp1.c: file-pointer auf stdout oder file */
-/*FILE *pCppIn = stdin;
-#endif*/
#ifdef DEBUG
FILE *pDefOut = stdout; /* ER evtl. #define's dump */
diff --git a/rsc/source/rscpp/cppdef.h b/rsc/source/rscpp/cppdef.h
index 8c3f92ffbcc2..8b2fa3c3c23c 100644
--- a/rsc/source/rscpp/cppdef.h
+++ b/rsc/source/rscpp/cppdef.h
@@ -2,9 +2,9 @@
*
* $RCSfile: cppdef.h,v $
*
- * $Revision: 1.3 $
+ * $Revision: 1.4 $
*
- * last change: $Author: pl $ $Date: 2002-11-01 12:31:50 $
+ * last change: $Author: hr $ $Date: 2003-03-26 15:50:48 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -260,12 +260,8 @@
* (Or is it the other way around?) -- Warning: BIG_ENDIAN code is untested.
*/
#ifndef BIG_ENDIAN
-#ifdef S390
-#define BIG_ENDIAN TRUE
-#else
#define BIG_ENDIAN FALSE
#endif
-#endif
/*
* COMMENT_INVISIBLE may be defined to allow "old-style" comment
diff --git a/rsc/source/rscpp/makefile.mk b/rsc/source/rscpp/makefile.mk
index e115c3ece3a7..78cda023aedc 100644
--- a/rsc/source/rscpp/makefile.mk
+++ b/rsc/source/rscpp/makefile.mk
@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
-# $Revision: 1.2 $
+# $Revision: 1.3 $
#
-# last change: $Author: nf $ $Date: 2001-04-18 10:33:29 $
+# last change: $Author: hr $ $Date: 2003-03-26 15:50:48 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -93,6 +93,7 @@ OBJFILES= \
$(OBJ)$/cpp6.obj \
.IF "$(cpp)" == ""
+LIBSALCPPRT=$(0)
APP1TARGET= $(TARGET)
APP1LIBS=$(LB)$/$(TARGET).lib
APP1STACK= 32768
diff --git a/rsc/source/tools/rscchar.cxx b/rsc/source/tools/rscchar.cxx
index 3862ca88b616..537b6a0877f7 100644
--- a/rsc/source/tools/rscchar.cxx
+++ b/rsc/source/tools/rscchar.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: rscchar.cxx,v $
*
- * $Revision: 1.2 $
+ * $Revision: 1.3 $
*
- * last change: $Author: pl $ $Date: 2001-10-10 11:51:29 $
+ * last change: $Author: hr $ $Date: 2003-03-26 15:50:49 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -223,8 +223,9 @@ char * RscChar::MakeUTF8( char * pStr, UINT16 nTextEncoding )
rtl_destroyTextToUnicodeConverter( hConv );
- delete pUniCode;
- delete pOrgStr;
+ delete[] pUniCode;
+ delete[] pOrgStr;
+
return pUtf8;
};
@@ -338,6 +339,7 @@ char * RscChar::MakeUTF8FromL( char * pStr )
sal_Size nMaxUtf8Len = nUniPos * 6;
if( nUniPos * 6 > 0xFFFF )
RscExit( 10 );
+
char * pUtf8 = (char *)RscMem::Malloc( (USHORT)nMaxUtf8Len );
rtl_TextToUnicodeConverter hConv = rtl_createUnicodeToTextConverter( RTL_TEXTENCODING_UTF8 );
@@ -354,7 +356,8 @@ char * RscChar::MakeUTF8FromL( char * pStr )
rtl_destroyUnicodeToTextConverter( hConv );
- delete pUniCode;
+ delete[] pUniCode;
+
return pUtf8;
};