ultimatepp/uppsrc/Core/src.tpp/DateFmt$en-us.tpp
cxl 66931ae8d0 *Core: Jsonize fixes, Date docs, ide: Fixed issue with save on deactivation
git-svn-id: svn://ultimatepp.org/upp/trunk@5088 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2012-06-29 12:29:42 +00:00

83 lines
No EOL
4 KiB
C++

topic "Date formatting and scanning";
[2 $$0,0#00000000000000000000000000000000:Default]
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
[l288;2 $$2,0#27521748481378242620020725143825:desc]
[0 $$3,0#96390100711032703541132217272105:end]
[H6;0 $$4,0#05600065144404261032431302351956:begin]
[i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item]
[l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement]
[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
[b42;2 $$9,9#13035079074754324216151401829390:normal]
[{_}%EN-US
[s0;%- [*@3;4 Date formatting and scanning]&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Global functions]]}}&]
[s3;%- &]
[s5;:StrToDate`(Date`&`,const char`*`):%- [@(0.0.255) const]_[@(0.0.255) char]_`*[* StrToDa
te]([_^Date^ Date][@(0.0.255) `&]_[*@3 d], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 s])&]
[s2; Scans a string for a Date. Order of day, month and year is specified
using SetDateScan. In place of month both number and text is
accepted `- text must match abbreviated or full name of month.&]
[s7; [%-*C@3 d]-|Found date.&]
[s7; [%-*C@3 s]-|String to scan.&]
[s7; [*/ Return value]-|NULL if no date is found in s or pointer to
character right after the date.&]
[s3; &]
[s4;%- &]
[s5;:Format`(Date`):%- [_^String^ String]_[* Format]([_^Date^ Date]_[*@3 date])&]
[s2; Formats date. Date is formated using the standard [^topic`:`/`/Core`/src`/Format`$en`-us^ F
ormat] function, where the string set by SetDateFormat is used
as formating string, and the three supplied integer value arguments
are year, month and day.&]
[s7; [%-*C@3 date]-|Date to format.&]
[s7; [*/ Return value]-|Formatted date.&]
[s3; &]
[s4;%- &]
[s5;:CharFilterDate`(int`):%- [@(0.0.255) int]_[* CharFilterDate]([@(0.0.255) int]_[*@3 c])&]
[s2; Character filter for dates. Its behaviour is specified by SetDateFilter
function.&]
[s7; [%-*C@3 c]-|Character to filter.&]
[s7; [*/ Return value]-|Filtered character.&]
[s3; &]
[s4;%- &]
[s5;:SetDateFormat`(const char`*`):%- [@(0.0.255) void]_[* SetDateFormat]([@(0.0.255) const
]_[@(0.0.255) char]_`*[*@3 fmt])&]
[s2; Sets formating string for dates. When used for formatting, there
are 3 integer arguments passed to [^topic`:`/`/Core`/src`/Format`$en`-us^ Format]
with this string. First is year, second is month and third is
day. This is per`-thread setting with threads inheriting the
setting of main thread.&]
[s3; &]
[s4;%- &]
[s5;:SetDateScan`(const char`*`):%- [@(0.0.255) void]_[* SetDateScan]([@(0.0.255) const]_[@(0.0.255) c
har]_`*[*@3 scan])&]
[s2; Sets date scan string `- this string represents order of [* d]ay,
[* m]onth and [* y]ear for StrToDate function. Letters `'[* d]`', `'[* m]`'
and `'[* y]`' are used in [%-*@3 scan] to designate the order. This
is per`-thread setting with threads inheriting the setting of
main thread.&]
[s2; Example:&]
[s2; [*C@3 ][*C `"mdy`"]&]
[s7; The month is first, day second and year third.&]
[s3; &]
[s4;%- &]
[s5;:SetDateFilter`(const char`*`):%- [@(0.0.255) void]_[* SetDateFilter]([@(0.0.255) const
]_[@(0.0.255) char]_`*[*@3 seps])&]
[s2; Specifies CharFilterDate behaviour. Digits are always allowed
in CharFilterDate. If there is `"a`" at the beginning of seps
string, letters are allowed. If there is `"A`", letters are allowed
and converted to upper`-case. After this optional character,
list of characters allowed as separator follows. `"`\r`" after
character designates `"replace`" character `- if used, all characters
up to next `"amend`" character or `'`\0`' are replaced by it.
This is per`-thread setting with threads inheriting the setting
of main thread.&]
[s2; Example:&]
[s2; [*C@3 ][*C `"a.][*C@3 `\r][*C@5 ,][*C@3 `\r][*C /][*C@3 `\r][*C@5 :;][*C `"]&]
[s2; CharFilterDate would allow letters but not convert them to uppercase,
it will allow characters `'[* .]`' and `'/`' and it will convert
`'[*@5 ,]`' to `'[* .]`' and `'[*@5 :]`' or `'[*@5 ;]`' to `'[* /]`'.&]
[s3; &]
[s0; ]]