* extended xsdFormatBoolean to write either 0/1 or false/true

git-svn-id: trunk@12541 -
This commit is contained in:
ivost 2009-01-11 17:09:58 +00:00
parent 9d6694a692
commit 490167ba16

View File

@ -16,7 +16,7 @@ uses
SysUtils;
{ Format functions }
function xsdFormatBoolean(Value: Boolean): String;
function xsdFormatBoolean(Value: Boolean; UseWords: Boolean = False): String;
function xsdFormatDate(Year: Longint; Month, Day: Longword): String;
function xsdFormatDate(Value: TDateTime): String;
function xsdFormatTime(Hour, Minute, Second: Longword): String;
@ -57,7 +57,7 @@ function xsdParseUnsignedLong(Value: String; var P: QWord): Boolean;
{ Node creation functions }
function xsdNewChildString(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: String): xmlNodePtr;
function xsdNewChildBoolean(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean): xmlNodePtr;
function xsdNewChildBoolean(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean; UseWords: Boolean = False): xmlNodePtr;
function xsdNewChildDate(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Year, Month, Day: Longword): xmlNodePtr;
function xsdNewChildTime(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Hour, Minute, Second: Longword): xmlNodePtr;
function xsdNewChildDateTime(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Year, Month, Day, Hour, Minute, Second: Longword): xmlNodePtr;
@ -75,7 +75,7 @@ function xsdNewChildUnsignedLong(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlChar
{ Property creation functions }
function xsdNewPropString(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: String): xmlAttrPtr;
function xsdNewPropBoolean(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean): xmlAttrPtr;
function xsdNewPropBoolean(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean; UseWords: Boolean = False): xmlAttrPtr;
function xsdNewPropDate(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Year, Month, Day: Longword): xmlAttrPtr;
function xsdNewPropTime(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Hour, Minute, Second: Longword): xmlAttrPtr;
function xsdNewPropDateTime(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Year, Month, Day, Hour, Minute, Second: Longword): xmlAttrPtr;
@ -150,12 +150,18 @@ function xsdRemoveBlanks(content: xmlCharPtr; out cleaned: string): boolean;
implementation
function xsdFormatBoolean(Value: Boolean): String;
function xsdFormatBoolean(Value: Boolean; UseWords: Boolean): String;
begin
if Value then
Result := 'true'
if UseWords then
if Value then
Result := 'true'
else
Result := 'false'
else
Result := 'false';
if Value then
Result := '1'
else
Result := '0';
end;
function xsdFormatDate(Year: Longint; Month, Day: Longword): String;
@ -438,11 +444,11 @@ begin
Result := xmlNewChild(parent, ns, name, BAD_CAST(Value));
end;
function xsdNewChildBoolean(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean): xmlNodePtr;
function xsdNewChildBoolean(parent: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean; UseWords: Boolean): xmlNodePtr;
var
Tmp: String;
begin
Tmp := xsdFormatBoolean(Value);
Tmp := xsdFormatBoolean(Value, UseWords);
Result := xmlNewChild(parent, ns, name, BAD_CAST(Tmp));
end;
@ -563,11 +569,11 @@ begin
Result := xmlNewNsProp(node, ns, name, BAD_CAST(Value));
end;
function xsdNewPropBoolean(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean): xmlAttrPtr;
function xsdNewPropBoolean(node: xmlNodePtr; ns: xmlNsPtr; name: xmlCharPtr; Value: Boolean; UseWords: Boolean): xmlAttrPtr;
var
Tmp: String;
begin
Tmp := xsdFormatBoolean(Value);
Tmp := xsdFormatBoolean(Value, UseWords);
Result := xmlNewNsProp(node, ns, name, BAD_CAST(Tmp));
end;