NAME
Prima::Calendar - standard calendar widget
SYNOPSIS
use Prima qw(Calendar Application);
my $cal = Prima::Calendar-> new(
useLocale => 1,
size => [ 150, 150 ],
onChange => sub {
print $_[0]-> date_as_string, "\n";
},
);
$cal-> date_from_time( localtime );
$cal-> month( 5);
run Prima;
DESCRIPTION
Provides interactive selection for dates between the years 1900 and 2099. The main property, date, is a three-integer array of day, month, and year, in the format of perl localtime ( see "localtime" in perlfunc ) - day's range is between 1 and 31, month's 0 to 11, year's from 0 to 199.
API
Events
- Change
-
Called when the date property is changed.
Properties
- date DAY, MONTH, YEAR
-
Accepts three integers in the format of
localtime
. DAY can be from 1 to 31, MONTH from 0 to 11, YEAR from 0 to 199.Default value: today's date.
- day INTEGER
-
Selects the day in the month.
- firstDayOfWeek INTEGER
-
Selects the first day of the week, an integer between 0 and 6, where 0 is Sunday as the first day, 1 is Monday, etc.
Default value: 0
- month
-
Selects the month
- useLocale BOOLEAN
-
If 1, the locale-specific names of months and days of week are used. These are read by calling
POSIX::strftime
. If an invocation of the POSIX module fails, the property is automatically assigned to 0.If 0, the English names of months and days of week are used.
Default value: 1
See also: date_as_string
- year
-
Selects the year.
Methods
- can_use_locale
-
Returns a boolean value, whether the locale information can be retrieved by calling
strftime
or not. - month2str MONTH
-
Returns the MONTH name according to the useLocale value.
- make_months
-
Returns an array of the 12 month names according to the useLocale value.
- day_of_week DAY, MONTH, YEAR, [ USE_FIRST_DAY_OF_WEEK = 1 ]
-
Returns an integer value between 0 and 6, the day of week on DAY, MONTH, YEAR date. If boolean USE_FIRST_DAY_OF_WEEK is set, the value of the
firstDayOfWeek
property is taken into account, so f ex the result of 0 means that this is a Sunday shifted forward byfirstDayOfWeek
days.The switch from the Julian to the Gregorian calendar is ignored.
- date_as_string [ DAY, MONTH, YEAR ]
-
Returns string representation of date on DAY, MONTH, YEAR according to the useLocale property value.
- date_from_time SEC, MIN, HOUR, M_DAY, MONTH, YEAR, ...
-
Copies date from
localtime
orgmtime
results. This helper method allows the following syntax:$calendar-> date_from_time( localtime( time));
AUTHOR
Dmitry Karasik, <dmitry@karasik.eu.org>.
SEE ALSO
Prima, Prima::Widget, POSIX, "localtime" in perlfunc, "time" in perlfunc, examples/calendar.pl.