* Fix bug ID #0036246, delphi compatibility property

git-svn-id: trunk@43353 -
This commit is contained in:
michael 2019-11-02 10:25:42 +00:00
parent ae04e5d7f0
commit 30bc217d55
2 changed files with 15 additions and 0 deletions

View File

@ -625,6 +625,7 @@ type
function GetCommaText: string; function GetCommaText: string;
function GetMissingNameValueSeparatorAction: TMissingNameValueSeparatorAction; function GetMissingNameValueSeparatorAction: TMissingNameValueSeparatorAction;
function GetName(Index: Integer): string; function GetName(Index: Integer): string;
function GetTrailingLineBreak: Boolean;
function GetValue(const Name: string): string; function GetValue(const Name: string): string;
Function GetLBS : TTextLineBreakStyle; Function GetLBS : TTextLineBreakStyle;
procedure SetDefaultEncoding(const ADefaultEncoding: TEncoding); procedure SetDefaultEncoding(const ADefaultEncoding: TEncoding);
@ -634,6 +635,7 @@ type
procedure SetCommaText(const Value: string); procedure SetCommaText(const Value: string);
procedure SetMissingNameValueSeparatorAction(AValue: TMissingNameValueSeparatorAction); procedure SetMissingNameValueSeparatorAction(AValue: TMissingNameValueSeparatorAction);
procedure SetStringsAdapter(const Value: IStringsAdapter); procedure SetStringsAdapter(const Value: IStringsAdapter);
procedure SetTrailingLineBreak(AValue: Boolean);
procedure SetValue(const Name, Value: string); procedure SetValue(const Name, Value: string);
procedure SetDelimiter(c:Char); procedure SetDelimiter(c:Char);
procedure SetQuoteChar(c:Char); procedure SetQuoteChar(c:Char);
@ -733,6 +735,8 @@ type
property Objects[Index: Integer]: TObject read GetObject write PutObject; property Objects[Index: Integer]: TObject read GetObject write PutObject;
property QuoteChar: Char read GetQuoteChar write SetQuoteChar; property QuoteChar: Char read GetQuoteChar write SetQuoteChar;
Property SkipLastLineBreak : Boolean Read GetSkipLastLineBreak Write SetSkipLastLineBreak; Property SkipLastLineBreak : Boolean Read GetSkipLastLineBreak Write SetSkipLastLineBreak;
// Same as SkipLastLineBreak but for Delphi compatibility. Note it has opposite meaning.
Property TrailingLineBreak : Boolean Read GetTrailingLineBreak Write SetTrailingLineBreak;
Property StrictDelimiter : Boolean Read FStrictDelimiter Write FStrictDelimiter; Property StrictDelimiter : Boolean Read FStrictDelimiter Write FStrictDelimiter;
property Strings[Index: Integer]: string read Get write Put; default; property Strings[Index: Integer]: string read Get write Put; default;
property StringsAdapter: IStringsAdapter read FAdapter write SetStringsAdapter; property StringsAdapter: IStringsAdapter read FAdapter write SetStringsAdapter;

View File

@ -163,6 +163,7 @@ begin
end; end;
Function TStrings.GetNameValueSeparator :Char; Function TStrings.GetNameValueSeparator :Char;
begin begin
CheckSpecialChars; CheckSpecialChars;
@ -292,6 +293,11 @@ begin
GetNameValue(Index,Result,V); GetNameValue(Index,Result,V);
end; end;
function TStrings.GetTrailingLineBreak: Boolean;
begin
Result:=Not SkipLastLineBreak;
end;
Function TStrings.GetValue(const Name: string): string; Function TStrings.GetValue(const Name: string): string;
Var Var
@ -476,6 +482,11 @@ Procedure TStrings.SetStringsAdapter(const Value: IStringsAdapter);
begin begin
end; end;
procedure TStrings.SetTrailingLineBreak(AValue: Boolean);
begin
SkipLastLineBreak:=Not aValue;
end;
Procedure TStrings.SetDefaultEncoding(const ADefaultEncoding: TEncoding); Procedure TStrings.SetDefaultEncoding(const ADefaultEncoding: TEncoding);