|
@@ -7,7 +7,7 @@
|
|
|
Author : Kike Pérez
|
|
|
Version : 1.4
|
|
|
Created : 07/01/2019
|
|
|
- Modified : 16/01/2019
|
|
|
+ Modified : 21/01/2019
|
|
|
|
|
|
This file is part of QuickLib: https://github.com/exilon/QuickLib
|
|
|
|
|
@@ -62,7 +62,7 @@ type
|
|
|
property Value : string read GetValue write SetValue;
|
|
|
end;
|
|
|
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
IValueAnsiString = interface
|
|
|
['{75775F25-6F7A-49F0-A1E0-BDE1F55EC378}']
|
|
|
function GetValue : AnsiString;
|
|
@@ -183,7 +183,7 @@ type
|
|
|
{$ENDIF}
|
|
|
fDataType : TValueDataType;
|
|
|
function CastToString : string;
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
function CastToAnsiString : AnsiString;
|
|
|
function CastToWideString : WideString;
|
|
|
{$ENDIF}
|
|
@@ -199,7 +199,7 @@ type
|
|
|
function CastToVariant: Variant;
|
|
|
function CastToCardinal : Cardinal;
|
|
|
procedure SetAsString(const Value : string);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
procedure SetAsAnsiString(const Value : AnsiString);
|
|
|
procedure SetAsWideString(const Value : WideString);
|
|
|
{$ENDIF}
|
|
@@ -217,7 +217,7 @@ type
|
|
|
constructor Create(const Value: TVarRec);
|
|
|
property DataType : TValueDataType read fDataType;
|
|
|
property AsString : string read CastToString write SetAsString;
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
property AsAnsiString : AnsiString read CastToAnsiString write SetAsAnsiString;
|
|
|
property AsWideString : WideString read CastToWideString write SetAsWideString;
|
|
|
{$ENDIF}
|
|
@@ -268,7 +268,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := '';
|
|
|
dtString : Result := (fDataIntf as IValueString).Value;
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := string((fDataIntf as IValueAnsiString).Value);
|
|
|
dtWideString : Result := (fDataIntf as IValueWideString).Value;
|
|
|
{$ENDIF}
|
|
@@ -287,7 +287,7 @@ begin
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
-{$IFNDEF NEXTGEN}
|
|
|
+{$IFDEF MSWINDOWS}
|
|
|
function TFlexValue.CastToAnsiString: AnsiString;
|
|
|
begin
|
|
|
try
|
|
@@ -316,7 +316,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := '';
|
|
|
dtString : Result := Widestring((fDataIntf as IValueString).Value);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := Widestring((fDataIntf as IValueAnsiString).Value);
|
|
|
dtWideString : Result := (fDataIntf as IValueWideString).Value;
|
|
|
{$ENDIF}
|
|
@@ -341,7 +341,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := False;
|
|
|
dtString : Result := StrToBool((fDataIntf as IValueString).Value);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := StrToBool(string((fDataIntf as IValueAnsiString).Value));
|
|
|
dtWideString : Result := StrToBool((fDataIntf as IValueWideString).Value);
|
|
|
{$ENDIF}
|
|
@@ -385,7 +385,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := 0.0;
|
|
|
dtString : Result := StrToDateTime((fDataIntf as IValueString).Value);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := StrToDateTime(string((fDataIntf as IValueAnsiString).Value));
|
|
|
dtWideString : Result := StrToDateTime((fDataIntf as IValueWideString).Value);
|
|
|
{$ENDIF}
|
|
@@ -408,7 +408,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := 0.0;
|
|
|
dtString : Result := StrToFloat((fDataIntf as IValueString).Value);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := StrToFloat(string((fDataIntf as IValueAnsiString).Value));
|
|
|
dtWideString : Result := StrToFloat((fDataIntf as IValueWideString).Value);
|
|
|
{$ENDIF}
|
|
@@ -432,7 +432,7 @@ begin
|
|
|
case fDataType of
|
|
|
dtNull : Result := 0;
|
|
|
dtString : Result := StrToInt((fDataIntf as IValueString).Value);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
dtAnsiString : Result := StrToInt(string((fDataIntf as IValueAnsiString).Value));
|
|
|
dtWideString : Result := StrToInt((fDataIntf as IValueWideString).Value);
|
|
|
{$ENDIF}
|
|
@@ -519,13 +519,15 @@ begin
|
|
|
case Value.VType of
|
|
|
{$IFNDEF NEXTGEN}
|
|
|
vtString : AsString := string(Value.VString^);
|
|
|
- {$ENDIF}
|
|
|
vtChar : AsString := string(Value.VChar);
|
|
|
- {$IFNDEF NEXTGEN}
|
|
|
+ {$ENDIF}
|
|
|
+ {$IFDEF MSWINDOWS}
|
|
|
vtAnsiString : AsAnsiString := AnsiString(Value.VAnsiString);
|
|
|
vtWideString : AsWideString := WideString(Value.VWideString);
|
|
|
{$ENDIF}
|
|
|
+ {$IFDEF UNICODE}
|
|
|
vtUnicodeString: AsString := string(Value.VUnicodeString);
|
|
|
+ {$ENDIF UNICODE}
|
|
|
vtInteger : AsInteger := Value.VInteger;
|
|
|
vtInt64 : AsInt64 := Value.VInt64^;
|
|
|
vtExtended : AsExtended := Value.VExtended^;
|
|
@@ -640,7 +642,7 @@ begin
|
|
|
Result := fDataType = dtVariant;
|
|
|
end;
|
|
|
|
|
|
-{$IFNDEF NEXTGEN}
|
|
|
+{$IFDEF MSWINDOWS}
|
|
|
procedure TFlexValue.SetAsAnsiString(const Value: AnsiString);
|
|
|
begin
|
|
|
Clear;
|
|
@@ -726,7 +728,7 @@ begin
|
|
|
fDataType := TValueDataType.dtVariant;
|
|
|
end;
|
|
|
|
|
|
-{$IFNDEF NEXTGEN}
|
|
|
+{$IFDEF MSWINDOWS}
|
|
|
procedure TFlexValue.SetAsWideString(const Value: WideString);
|
|
|
begin
|
|
|
Clear;
|
|
@@ -781,7 +783,7 @@ end;
|
|
|
|
|
|
{ TValueAnsiStringData }
|
|
|
|
|
|
-{$IFNDEF NEXTGEN}
|
|
|
+{$IFDEF MSWINDOWS}
|
|
|
constructor TValueAnsiString.Create(const Value: AnsiString);
|
|
|
begin
|
|
|
fData := Value;
|