|
| iMatix home page | << | < | > | >> |
SFLVersion 2.11 |
#include "sflconv.h" /* We supply the dialog file as the source long conv_str_time (const char *p_string)
Converts a string to a time. The string must have this format: hour[<delim>minute[<delim>second[<delim>centi ]]][a[m]|p[m]] Any non-digit is accepted as delimiter. Each component may be one or two digits. The input string must be null-terminated. Returns -1 in case of an invalid date or format. If the string was empty (contains no usable digits, returns 0. The am/pm indicator can occur one anywhere in the string.
{
After-Init:
(--) Ok -> Expect-Hour
+ Get-Next-Component
Expect-Hour:
(--) Number -> Expect-Minute
+ Have-Hour
+ Get-Next-Component
(--) Am-Pm -> Expect-Hour
+ Have-Am-Pm-Indicator
+ Get-Next-Component
Expect-Minute:
(--) Number -> Expect-Second
+ Have-Minute
+ Get-Next-Component
(--) Am-Pm -> Expect-Minute
+ Have-Am-Pm-Indicator
+ Get-Next-Component
Expect-Second:
(--) Number -> Expect-Centisecond
+ Have-Second
+ Get-Next-Component
(--) Am-Pm -> Expect-Second
+ Have-Am-Pm-Indicator
+ Get-Next-Component
Expect-Centisecond:
(--) Number -> Allow-Am-Pm
+ Have-Centisecond
+ Get-Next-Component
(--) Am-Pm -> Expect-Centisecond
+ Have-Am-Pm-Indicator
+ Get-Next-Component
Allow-Am-Pm:
(--) Am-Pm -> Expect-Finished
+ Have-Am-Pm-Indicator
+ Get-Next-Component
Expect-Finished:
(--) Finished ->
+ Have-Complete-Time
+ Terminate-The-Program
Defaults:
(--) Number ->
+ Have-Invalid-Time
+ Terminate-The-Program
(--) Am-Pm ->
+ Have-Invalid-Time
+ Terminate-The-Program
(--) Finished ->
+ Have-Complete-Time
+ Terminate-The-Program
(--) Delimiter ->
+ Have-Delimiter
+ Get-Next-Component
(--) Error ->
+ Have-Invalid-Time
+ Terminate-The-Program
}
| | << | < | > | >> |
|