SavvyUI C++ UI Library
Loading...
Searching...
No Matches
Calendar Class Reference

A UI component for displaying and interacting with calendar dates. More...

#include <Calendar.h>

Inheritance diagram for Calendar:
Component

Public Member Functions

 Calendar ()
 Constructs a Calendar component.
virtual ~Calendar ()
 Destroys the Calendar component.
void setAsPopup (BOOL isPopup)
 Sets whether the calendar is used in a popup context.
BOOL isPopup ()
 Return TRUE if this component is displayed as a popup (e.g. DateTimePicker).
void setOrientation (const wstring &orientation)
 Sets the orientation of the calendar.
void setSelectedDate (const wstring &dateYYYYMMDD)
 Sets the selected date using a string formatted as YYYYMMDD.
void setSelectedDate (int year, int month, int day)
 Sets the selected date using year, month, and day integers.
wstring getSelectedDate ()
 Gets the selected date as a string formatted as YYYYMMDD.
wstring getSelectedDate (int &year, int &month, int &day)
 Gets the selected date components.
void onPaint (Graphics *g)
 Paints the calendar to the provided device context.
void onWindowResized ()
 Called when the window has been resized.
void onFocusGained ()
 Called when the calendar gains focus.
void onFocusLost ()
 Called when the calendar loses focus.
void onKeyBackSpace (BOOL shiftPressed, BOOL ctrlPressed)
 Handles Backspace key input.
void onKeyTyped (wchar_t ch, BOOL shiftPressed, BOOL ctrlPressed)
 Handles typed character input.
void onMousePressed (WinHandle hWnd, int x, int y, int clickCount, BOOL shiftPressed, BOOL ctrlPressed)
 Handles mouse press events.
BOOL onMouseWheel (WinHandle hWnd, int x, int y, int delta)
 Handles mouse wheel events.
void addSelectionChangedListener (SelectionChangeListener *l)
 Adds a listener for selection change events.
Public Member Functions inherited from Component
 Component ()
 Constructs a new Component instance.
virtual ~Component ()
 Virtual destructor.
long getId ()
 Gets the unique ID assigned to this component.
void setParent (Component *parent)
ComponentgetParent ()
wstring getComponentType ()
 Gets the component type string.
BOOL isWindowCreated ()
 Returns whether the native window has been created.
WinHandle getWindowHandle ()
 Returns the native WinHandle for this component.
int createComponent (WinHandle hParent, Bounds rect, long nCmd=-1, BOOL isVisible=TRUE)
 Creates the component's native window as a child of hParent.
void setFont (long fontSize, BOOL isBold=FALSE, BOOL isItalic=FALSE, BOOL isUnderlined=FALSE, const wstring &fontName=L"Arial")
 Sets the font for the component.
void showBorder (BOOL bShow=TRUE)
void setEnabled (BOOL bEnable=TRUE)
 Enables or disables the component.
void setVisible (BOOL bShow=TRUE)
 Shows or hides the component.
void GetClientRect (Bounds &rect)
void GetWindowRect (Bounds &rect)
void moveWindow (long x, long y, long width, long height, BOOL bRedraw=TRUE)
 Moves and resizes the component window.
void reconfigureScrollBar ()
 Forces the component to recalculate the scrollbar info.
void setMouseWheelDelta (int delta)
 Sets the accumulated mouse wheel delta.
int getMouseWheelDelta ()
 Gets the current mouse wheel delta.
virtual int getMinimumHeight ()
 Returns the minimum height the component can have.
virtual int getPreferredHeight ()
 Returns the preferred height of the component.
void repaint (WinHandle hWnd=NULL)
 Requests the component to repaint itself.
void clearQueuedPaintRequest ()
 clears the queued paint request. This function should only be called internally from the library.
virtual void onWindowMoved ()
 Called when the component's window is moved.
virtual void onAction (WinHandle hTarget, long actionId, const ProcParams &procParams)
 Called when an action occurs on the component.
virtual void onSelectionChanged (WinHandle hTarget, int itemIndex, const wstring &itemText, BOOL itemChecked, const ProcParams &procParams)
 Called when the selection changes.
virtual void onDataChanged (WinHandle hTarget, const wstring &newValue, const ProcParams &procParams)
 Called when data changes in the component.
virtual BOOL onHorzScroll (WinHandle hTarget, const ProcParams &procParams)
 Called on horizontal scroll events.
virtual BOOL onDrawMeasureItem (LPMEASUREITEMSTRUCT dis, const ProcParams &procParams)
 Called when measuring an item for owner-draw controls.
virtual BOOL onDrawItem (LPDRAWITEMSTRUCT dis, const ProcParams &procParams)
 Called when drawing an item for owner-draw controls.
virtual void onMouseReleased (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed)
 Called when the mouse button is released within the component.
virtual void onMouseRightClicked (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed)
 Called when the right mouse button is clicked within the component.
virtual void onMouseMoved (WinHandle hWnd, int x, int y, BOOL shiftPressed, BOOL ctrlPressed)
 Called when the mouse is moved within the component.
virtual void onArrowLeft (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onArrowRight (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onArrowUp (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onArrowDown (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onPageUp (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onPageDown (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyHome (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyEnd (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyInsert (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyDelete (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyTab (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyEnter (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF1 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF2 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF3 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF4 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF5 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF6 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF7 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF8 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF9 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF10 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF11 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onKeyF12 (BOOL shiftPressed, BOOL ctrlPressed)
virtual void onTimer (unsigned int timerId)
 Called on timer events.
virtual BOOL getScrollingInfo (__int64 &scrollMin, __int64 &scrollMax, __int64 &pageSize)
 Provides scrolling information if supported.
virtual void setScrollbarTopOffset (__int64 firstVisibleRow)
 Sets the scrollbar's top offset.
void updateScrollbarTopOffset (__int64 firstVisibleRow)
 Updates the scrollbar's top offset based on the current first visible row.

Protected Member Functions

BOOL getCreateWindowOptions (wstring &title, UINT &widownStyles, wstring &wndClassName, BOOL &isCustomWndProc)
 Retrieves options needed to create the calendar window.
void windowCreated ()
 Called after the window has been successfully created.
Protected Member Functions inherited from Component
long getActionId ()
 Returns the component's action command ID.
void doNotSubclass ()
 Marks this component's native window to avoid subclassing.
void startTimer (unsigned int timerId, unsigned int milliseconds)
 Starts a timer with the given ID and interval.
void stopTimer (unsigned int timerId)
 Stops the timer identified by timerId.
void protectedAddDataChangedListener (DataChangeListener *l)
 Adds a data change listener.
void protectedAddSelectionChangedListener (SelectionChangeListener *l)
 Adds a selection change listener.
void protectedAddActionListener (ActionListener *l)
 Adds an action listener.
void protectedAddItemDoubleClickedListener (RowDoubleClickListener *l)
 Adds a row double-click listener.
void protectedFireDataChangedEvent (const wstring &oldValue, const wstring &newValue)
 Fires a data changed event to registered listeners.
void protectedFireSelectionChangedEvent (long selectionIndex=-1, const wstring &selectionValue=L"", BOOL checked=FALSE)
 Fires a selection changed event to registered listeners.
void protectedFireActionEvent (long actionId=-1, const wstring &actionName=L"")
 Fires an action event to registered listeners.
void protectedFireItemDoubleClickedEvent (__int64 rowIndex)
 Fires a row double-click event to registered listeners.

Additional Inherited Members

Protected Attributes inherited from Component
WinHandle _hWnd
 Handle to the native window associated with this component.
wstring _componentType
 String representing the component type (e.g., "Button", "ComboBox").
BOOL _showBorder

Detailed Description

A UI component for displaying and interacting with calendar dates.

Inherits from Component and provides functionality to display months, handle user input, and manage selected dates.

Constructor & Destructor Documentation

◆ Calendar()

Calendar::Calendar ( )

Constructs a Calendar component.

◆ ~Calendar()

virtual Calendar::~Calendar ( )
virtual

Destroys the Calendar component.

Member Function Documentation

◆ addSelectionChangedListener()

void Calendar::addSelectionChangedListener ( SelectionChangeListener * l)

Adds a listener for selection change events.

Parameters
lPointer to a SelectionChangeListener to notify on selection change.

◆ getCreateWindowOptions()

BOOL Calendar::getCreateWindowOptions ( wstring & title,
UINT & widownStyles,
wstring & wndClassName,
BOOL & isCustomWndProc )
protectedvirtual

Retrieves options needed to create the calendar window.

Parameters
titleThe window title.
widownStylesThe style flags for the window.
wndClassNameThe class name of the window.
isCustomWndProcWhether a custom window procedure is used.
Returns
TRUE if successful, FALSE otherwise.

Implements Component.

◆ getSelectedDate() [1/2]

wstring Calendar::getSelectedDate ( )

Gets the selected date as a string formatted as YYYYMMDD.

Returns
The currently selected date string.

◆ getSelectedDate() [2/2]

wstring Calendar::getSelectedDate ( int & year,
int & month,
int & day )

Gets the selected date components.

Parameters
yearOutput parameter for the selected year.
monthOutput parameter for the selected month.
dayOutput parameter for the selected day.
Returns
The currently selected date as a string in the format "YYYYMMDD".

◆ isPopup()

BOOL Calendar::isPopup ( )

Return TRUE if this component is displayed as a popup (e.g. DateTimePicker).

◆ onFocusGained()

void Calendar::onFocusGained ( )
virtual

Called when the calendar gains focus.

Reimplemented from Component.

◆ onFocusLost()

void Calendar::onFocusLost ( )
virtual

Called when the calendar loses focus.

Reimplemented from Component.

◆ onKeyBackSpace()

void Calendar::onKeyBackSpace ( BOOL shiftPressed,
BOOL ctrlPressed )
virtual

Handles Backspace key input.

Parameters
shiftPressedWhether the Shift key is pressed.
ctrlPressedWhether the Ctrl key is pressed.

Reimplemented from Component.

◆ onKeyTyped()

void Calendar::onKeyTyped ( wchar_t ch,
BOOL shiftPressed,
BOOL ctrlPressed )
virtual

Handles typed character input.

Parameters
chThe character typed.
shiftPressedWhether the Shift key is pressed.
ctrlPressedWhether the Ctrl key is pressed.

Reimplemented from Component.

◆ onMousePressed()

void Calendar::onMousePressed ( WinHandle hWnd,
int x,
int y,
int clickCount,
BOOL shiftPressed,
BOOL ctrlPressed )
virtual

Handles mouse press events.

Parameters
hWndHandle to the window receiving the event.
xThe x-coordinate of the mouse event.
yThe y-coordinate of the mouse event.
clickCountNumber of mouse clicks.
shiftPressedWhether the Shift key is pressed.
ctrlPressedWhether the Ctrl key is pressed.

Reimplemented from Component.

◆ onMouseWheel()

BOOL Calendar::onMouseWheel ( WinHandle hWnd,
int x,
int y,
int delta )
virtual

Handles mouse wheel events.

Parameters
hWndHandle to the window receiving the event.
xThe x-coordinate of the mouse event.
yThe y-coordinate of the mouse event.
deltaThe scroll delta.
Returns
TRUE if the event was handled, FALSE otherwise.

Reimplemented from Component.

◆ onPaint()

void Calendar::onPaint ( Graphics * g)
virtual

Paints the calendar to the provided device context.

Parameters
hDCHandle to the device context.

Reimplemented from Component.

◆ onWindowResized()

void Calendar::onWindowResized ( )
virtual

Called when the window has been resized.

Reimplemented from Component.

◆ setAsPopup()

void Calendar::setAsPopup ( BOOL isPopup)

Sets whether the calendar is used in a popup context.

Parameters
isPopupTRUE to mark the calendar as a popup, FALSE otherwise.

◆ setOrientation()

void Calendar::setOrientation ( const wstring & orientation)

Sets the orientation of the calendar.

Parameters
orientationA string indicating the orientation ("vertical" or "horizontal").

◆ setSelectedDate() [1/2]

void Calendar::setSelectedDate ( const wstring & dateYYYYMMDD)

Sets the selected date using a string formatted as YYYYMMDD.

Parameters
dateYYYYMMDDDate string in the format "YYYYMMDD".

◆ setSelectedDate() [2/2]

void Calendar::setSelectedDate ( int year,
int month,
int day )

Sets the selected date using year, month, and day integers.

Parameters
yearThe year to select.
monthThe month to select.
dayThe day to select.

◆ windowCreated()

void Calendar::windowCreated ( )
protectedvirtual

Called after the window has been successfully created.

Implements Component.


The documentation for this class was generated from the following file: