summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mystringlistunit.pas18
1 files changed, 14 insertions, 4 deletions
diff --git a/mystringlistunit.pas b/mystringlistunit.pas
index 45963d4..398e86d 100644
--- a/mystringlistunit.pas
+++ b/mystringlistunit.pas
@@ -5,7 +5,7 @@ unit mystringlistunit;
interface
uses
- Classes, SysUtils, RegExpr, Process, Math, lowlevelunit;
+ Classes, SysUtils, RegExpr, Process, Math, lowlevelunit, protokollunit;
type
tMyStringlist = class;
@@ -22,8 +22,10 @@ type
tMyStringlist = class (tStringlist)
private
line: longint;
+ prot: tProtokollant;
public
- constructor create;
+ constructor create; overload;
+ constructor create(protokollant: tProtokollant); overload;
procedure loadFromFile(const s: ansiString); override;
procedure loadFromGz(const s: ansiString);
procedure saveToGz(const s: ansiString);
@@ -77,7 +79,13 @@ end;
constructor tMyStringlist.create;
begin
+ create(nil);
+end;
+
+constructor tMyStringlist.create(protokollant: tProtokollant);
+begin
inherited create;
+ prot:=tProtokollant.create(protokollant,'tMyStringlist');
line:=0;
end;
@@ -328,7 +336,8 @@ begin
'<': istWahr:=strtofloat(u)<strtofloat(t);
'>': istWahr:=strtofloat(u)>strtofloat(t);
else begin
- gibAus('Operator '''+binops[j]+''' ist nicht implementiert!',3);
+ if assigned(prot) then prot.schreibe('Operator '''+binops[j]+''' ist nicht implementiert!',true)
+ else gibAus('Operator '''+binops[j]+''' ist nicht implementiert!',3);
exit;
end;
end{of case};
@@ -337,7 +346,8 @@ begin
break;
end;
if not gefunden then begin
- gibAus('Ich kann keinen gültigen Operator in Bedingung '''+t+''' finden!',3);
+ if assigned(prot) then prot.schreibe('Ich kann keinen gültigen Operator in Bedingung '''+t+''' finden!',true)
+ else gibAus('Ich kann keinen gültigen Operator in Bedingung '''+t+''' finden!',3);
exit;
end;
if not istWahr then