Go to main content

man pages section 3: Extended Library Functions, Volume 1

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

wxCalendarCtrl (3erl)

Name

wxCalendarCtrl - Functions for wxCalendarCtrl class

Synopsis

Please see following description for synopsis

Description

wxCalendarCtrl(3)          Erlang Module Definition          wxCalendarCtrl(3)



NAME
       wxCalendarCtrl - Functions for wxCalendarCtrl class

DESCRIPTION
       The  calendar control allows the user to pick a date. The user can move
       the current selection using the keyboard and select the date  (generat-
       ing EVT_CALENDAR event) by pressing <Return> or double clicking it.

       Generic  calendar  has  advanced possibilities for the customization of
       its display, described below. If you want to use these possibilities on
       every platform, use wxGenericCalendarCtrl instead of wxCalendarCtrl.

       All global settings (such as colours and fonts used) can, of course, be
       changed. But also, the display style for each day in the month  can  be
       set independently using wxCalendarDateAttr class.

       An item without custom attributes is drawn with the default colours and
       font and without border, but setting custom attributes  with  setAttr/3
       allows  modifying its appearance. Just create a custom attribute object
       and set it for the day you want to be displayed  specially  (note  that
       the  control will take ownership of the pointer, i.e. it will delete it
       itself). A day may be marked as being a holiday, even if it is not rec-
       ognized  as  one by wx_datetime() using the wxCalendarDateAttr:setHoli-
       day/2 method.

       As the attributes are specified for each day, they may change when  the
       month  is  changed, so you will often want to update them in EVT_CALEN-
       DAR_PAGE_CHANGED event handler.

       If neither the wxCAL_SUNDAY_FIRST or wxCAL_MONDAY_FIRST style is given,
       the  first  day  of the week is determined from operating system's set-
       tings, if possible. The native wxGTK calendar chooses the first weekday
       based on locale, and these styles have no effect on it.

       Styles

       This class supports the following styles:

       Note:  Changing  the  selected  date  will trigger an EVT_CALENDAR_DAY,
       MONTH or YEAR event as well as an EVT_CALENDAR_SEL_CHANGED event.

       See: Examples, wxCalendarDateAttr, wxCalendarEvent, wxDatePickerCtrl

       This class is derived (and can use functions) from: wxControl  wxWindow
       wxEvtHandler

       wxWidgets docs: wxCalendarCtrl

EVENTS
       Event  types  emitted  from  this  class:  calendar_sel_changed, calen-
       dar_weekday_clicked

DATA TYPES
       wxCalendarCtrl() = wx:wx_object()

EXPORTS
       new() -> wxCalendarCtrl()

              Default constructor.

       new(Parent, Id) -> wxCalendarCtrl()

              Types:

                 Parent = wxWindow:wxWindow()
                 Id = integer()

       new(Parent, Id, Options :: [Option]) -> wxCalendarCtrl()

              Types:

                 Parent = wxWindow:wxWindow()
                 Id = integer()
                 Option =
                     {date, wx:wx_datetime()} |
                     {pos, {X :: integer(), Y :: integer()}} |
                     {size, {W :: integer(), H :: integer()}} |
                     {style, integer()}

              Does the same as create/4 method.

       create(This, Parent, Id) -> boolean()

              Types:

                 This = wxCalendarCtrl()
                 Parent = wxWindow:wxWindow()
                 Id = integer()

       create(This, Parent, Id, Options :: [Option]) -> boolean()

              Types:

                 This = wxCalendarCtrl()
                 Parent = wxWindow:wxWindow()
                 Id = integer()
                 Option =
                     {date, wx:wx_datetime()} |
                     {pos, {X :: integer(), Y :: integer()}} |
                     {size, {W :: integer(), H :: integer()}} |
                     {style, integer()}

              Creates the control.

              See wxWindow:new/3 for the meaning of  the  parameters  and  the
              control overview for the possible styles.

       destroy(This :: wxCalendarCtrl()) -> ok

              Destroys the control.

       setDate(This, Date) -> boolean()

              Types:

                 This = wxCalendarCtrl()
                 Date = wx:wx_datetime()

              Sets the current date.

              The  date  parameter  must  be  valid and in the currently valid
              range as set by SetDateRange() (not implemented in  wx),  other-
              wise  the  current  date is not changed and the function returns
              false and, additionally, triggers an assertion  failure  if  the
              date is invalid.

       getDate(This) -> wx:wx_datetime()

              Types:

                 This = wxCalendarCtrl()

              Gets the currently selected date.

       enableYearChange(This) -> ok

              Types:

                 This = wxCalendarCtrl()

       enableYearChange(This, Options :: [Option]) -> ok

              Types:

                 This = wxCalendarCtrl()
                 Option = {enable, boolean()}

              Deprecated:

              This    function    should   be   used   instead   of   changing
              wxCAL_NO_YEAR_CHANGE style bit directly. It allows or  disallows
              the  user  to  change  the  year  interactively. Only in generic
              wxCalendarCtrl.

       enableMonthChange(This) -> boolean()

              Types:

                 This = wxCalendarCtrl()

       enableMonthChange(This, Options :: [Option]) -> boolean()

              Types:

                 This = wxCalendarCtrl()
                 Option = {enable, boolean()}

              This   function   should   be   used   instead    of    changing
              wxCAL_NO_MONTH_CHANGE style bit.

              It  allows  or  disallows  the user to change the month interac-
              tively. Note that if the month cannot be changed, the year  can-
              not be changed neither.

              Return: true if the value of this option really changed or false
              if it was already set to the requested value.

       enableHolidayDisplay(This) -> ok

              Types:

                 This = wxCalendarCtrl()

       enableHolidayDisplay(This, Options :: [Option]) -> ok

              Types:

                 This = wxCalendarCtrl()
                 Option = {display, boolean()}

              This function should be used instead of changing wxCAL_SHOW_HOL-
              IDAYS style bit directly.

              It enables or disables the special highlighting of the holidays.

       setHeaderColours(This, ColFg, ColBg) -> ok

              Types:

                 This = wxCalendarCtrl()
                 ColFg = ColBg = wx:wx_colour()

              Set the colours used for painting the weekdays at the top of the
              control.

              This method is currently only implemented  in  generic  wxCalen-
              darCtrl and does nothing in the native versions.

       getHeaderColourFg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Gets  the  foreground  colour of the header part of the calendar
              window.

              This method is currently only implemented  in  generic  wxCalen-
              darCtrl and always returns wxNullColour in the native versions.

              See: setHeaderColours/3

       getHeaderColourBg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Gets  the  background  colour of the header part of the calendar
              window.

              This method is currently only implemented  in  generic  wxCalen-
              darCtrl and always returns wxNullColour in the native versions.

              See: setHeaderColours/3

       setHighlightColours(This, ColFg, ColBg) -> ok

              Types:

                 This = wxCalendarCtrl()
                 ColFg = ColBg = wx:wx_colour()

              Set  the  colours  to  be  used  for  highlighting the currently
              selected date.

              This method is currently only implemented  in  generic  wxCalen-
              darCtrl and does nothing in the native versions.

       getHighlightColourFg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Gets the foreground highlight colour.

              Only in generic wxCalendarCtrl.

              This  method  is  currently only implemented in generic wxCalen-
              darCtrl and always returns wxNullColour in the native versions.

              See: setHighlightColours/3

       getHighlightColourBg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Gets the background highlight colour.

              Only in generic wxCalendarCtrl.

              This method is currently only implemented  in  generic  wxCalen-
              darCtrl and always returns wxNullColour in the native versions.

              See: setHighlightColours/3

       setHolidayColours(This, ColFg, ColBg) -> ok

              Types:

                 This = wxCalendarCtrl()
                 ColFg = ColBg = wx:wx_colour()

              Sets the colours to be used for the holidays highlighting.

              This  method  is  only implemented in the generic version of the
              control and does nothing in the native ones. It should also only
              be  called if the window style includes wxCAL_SHOW_HOLIDAYS flag
              or enableHolidayDisplay/2 had been called.

       getHolidayColourFg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Return the foreground colour currently used  for  holiday  high-
              lighting.

              Only  useful with generic wxCalendarCtrl as native versions cur-
              rently don't support holidays display at all and  always  return
              wxNullColour.

              See: setHolidayColours/3

       getHolidayColourBg(This) -> wx:wx_colour4()

              Types:

                 This = wxCalendarCtrl()

              Return  the  background  colour currently used for holiday high-
              lighting.

              Only useful with generic wxCalendarCtrl as native versions  cur-
              rently  don't  support holidays display at all and always return
              wxNullColour.

              See: setHolidayColours/3

       getAttr(This, Day) -> wxCalendarDateAttr:wxCalendarDateAttr()

              Types:

                 This = wxCalendarCtrl()
                 Day = integer()

              Returns the attribute for the given date (should be in the range
              1...31).

              The  returned  pointer may be NULL. Only in generic wxCalendarC-
              trl.

       setAttr(This, Day, Attr) -> ok

              Types:

                 This = wxCalendarCtrl()
                 Day = integer()
                 Attr = wxCalendarDateAttr:wxCalendarDateAttr()

              Associates the attribute with the specified date (in  the  range
              1...31).

              If  the pointer is NULL, the items attribute is cleared. Only in
              generic wxCalendarCtrl.

       setHoliday(This, Day) -> ok

              Types:

                 This = wxCalendarCtrl()
                 Day = integer()

              Marks the specified day as being a holiday in the current month.

              This method is only implemented in the generic  version  of  the
              control and does nothing in the native ones.

       resetAttr(This, Day) -> ok

              Types:

                 This = wxCalendarCtrl()
                 Day = integer()

              Clears  any  attributes  associated  with  the given day (in the
              range 1...31).

              Only in generic wxCalendarCtrl.

       hitTest(This, Pos) -> Result

              Types:

                 Result =
                     {Res :: wx:wx_enum(),
                      Date :: wx:wx_datetime(),
                      Wd :: wx:wx_enum()}
                 This = wxCalendarCtrl()
                 Pos = {X :: integer(), Y :: integer()}

              Returns  one  of  wxCalendarHitTestResult  constants  and  fills
              either date or wd pointer with the corresponding value depending
              on the hit test code.

              Not implemented in wxGTK currently.



wxWidgets team.                    wx 2.1.1                  wxCalendarCtrl(3)