Forráskód Böngészése

* Add AddDelimitedText,AddCommatext by Werner Pamler (bug ID 36249)

git-svn-id: trunk@43405 -
michael 5 éve
szülő
commit
3b867da924
2 módosított fájl, 37 hozzáadás és 0 törlés
  1. 3 0
      rtl/objpas/classes/classesh.inc
  2. 34 0
      rtl/objpas/classes/stringl.inc

+ 3 - 0
rtl/objpas/classes/classesh.inc

@@ -696,6 +696,9 @@ type
     procedure AddStrings(const TheStrings: array of string); overload; virtual;
     procedure AddStrings(const TheStrings: array of string; ClearFirst : Boolean); overload;
     Procedure AddText(Const S : String); virtual;
+    procedure AddCommaText(const S: String);
+    procedure AddDelimitedText(const S: String; ADelimiter: char; AStrictDelimiter: Boolean); overload;
+    procedure AddDelimitedtext(const S: String); overload;
     procedure Append(const S: string);
     procedure Assign(Source: TPersistent); override;
     procedure BeginUpdate;

+ 34 - 0
rtl/objpas/classes/stringl.inc

@@ -926,6 +926,40 @@ begin
   DoSetTextStr(S,False);
 end;
 
+procedure TStrings.AddCommaText(const S: String);
+var
+  L: TStringList;
+begin
+  L := TStringList.Create;
+  try
+    L.CommaText := S;
+    AddStrings(L);
+  finally
+    L.Free;
+  end;
+end;
+
+procedure TStrings.AddDelimitedText(const S: String; ADelimiter: Char;
+  AStrictDelimiter: Boolean);
+var
+  L: TStringList;
+begin
+  L := TStringList.Create;
+  try
+    L.Delimiter := ADelimiter;
+    L.StrictDelimiter := AStrictDelimiter;
+    L.DelimitedText := S;
+    AddStrings(L);
+  finally
+    L.Free;
+  end;
+end;
+
+procedure TStrings.AddDelimitedText(const S: String);
+begin
+  AddDelimitedText(S, FDelimiter, FStrictDelimiter);
+end;
+
 Procedure TStrings.SetUpdateState(Updating: Boolean);
 
 begin