| Copyright | Will Thompson and Iñaki García Etxebarria |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.Gtk.Objects.Calendar
Description
Displays a Gregorian calendar, one month at a time.
<picture> <source srcset="calendar-dark.png" media="(prefers-color-scheme: dark)"> <img alt="An example GtkCalendar" src="calendar.png"> </picture>
A GtkCalendar can be created with calendarNew.
The selected date can be retrieved from a GtkCalendar using
calendarGetDate.
It can be altered with calendarSetDate.
To place a visual marker on a particular day, use
calendarMarkDay and to remove the marker,
calendarUnmarkDay. Alternative, all
marks can be cleared with calendarClearMarks.
Users should be aware that, although the Gregorian calendar is the legal calendar in most countries, it was adopted progressively between 1582 and 1929. Display before these dates is likely to be historically incorrect.
Shortcuts and Gestures
GtkCalendar supports the following gestures:
- Scrolling up or down will switch to the previous or next month.
- Date strings can be dropped for setting the current day.
CSS nodes
calendar.view
├── header
│ ├── button
│ ├── stack.month
│ ├── button
│ ├── button
│ ├── label.year
│ ╰── button
╰── grid
╰── label[.day-name][.week-number][.day-number][.other-month][.today]GtkCalendar has a main node with name calendar. It contains a subnode
called header containing the widgets for switching between years and months.
The grid subnode contains all day labels, including week numbers on the left (marked with the .week-number css class) and day names on top (marked with the .day-name css class).
Day labels that belong to the previous or next month get the .other-month style class. The label of the current day get the .today style class.
Marked day labels get the :selected state assigned.
Synopsis
- newtype Calendar = Calendar (ManagedPtr Calendar)
- class (GObject o, IsDescendantOf Calendar o) => IsCalendar o
- toCalendar :: (MonadIO m, IsCalendar o) => o -> m Calendar
- calendarClearMarks :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m ()
- calendarGetDate :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m DateTime
- calendarGetDay :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Int32
- calendarGetDayIsMarked :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Word32 -> m Bool
- calendarGetMonth :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Int32
- calendarGetShowDayNames :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Bool
- calendarGetShowHeading :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Bool
- calendarGetShowWeekNumbers :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Bool
- calendarGetYear :: (HasCallStack, MonadIO m, IsCalendar a) => a -> m Int32
- calendarMarkDay :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Word32 -> m ()
- calendarNew :: (HasCallStack, MonadIO m) => m Calendar
- calendarSelectDay :: (HasCallStack, MonadIO m, IsCalendar a) => a -> DateTime -> m ()
- calendarSetDate :: (HasCallStack, MonadIO m, IsCalendar a) => a -> DateTime -> m ()
- calendarSetDay :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Int32 -> m ()
- calendarSetMonth :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Int32 -> m ()
- calendarSetShowDayNames :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Bool -> m ()
- calendarSetShowHeading :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Bool -> m ()
- calendarSetShowWeekNumbers :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Bool -> m ()
- calendarSetYear :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Int32 -> m ()
- calendarUnmarkDay :: (HasCallStack, MonadIO m, IsCalendar a) => a -> Word32 -> m ()
- constructCalendarDate :: (IsCalendar o, MonadIO m) => DateTime -> m (GValueConstruct o)
- getCalendarDate :: (MonadIO m, IsCalendar o) => o -> m (Maybe DateTime)
- setCalendarDate :: (MonadIO m, IsCalendar o) => o -> DateTime -> m ()
- constructCalendarDay :: (IsCalendar o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getCalendarDay :: (MonadIO m, IsCalendar o) => o -> m Int32
- setCalendarDay :: (MonadIO m, IsCalendar o) => o -> Int32 -> m ()
- constructCalendarMonth :: (IsCalendar o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getCalendarMonth :: (MonadIO m, IsCalendar o) => o -> m Int32
- setCalendarMonth :: (MonadIO m, IsCalendar o) => o -> Int32 -> m ()
- constructCalendarShowDayNames :: (IsCalendar o, MonadIO m) => Bool -> m (GValueConstruct o)
- getCalendarShowDayNames :: (MonadIO m, IsCalendar o) => o -> m Bool
- setCalendarShowDayNames :: (MonadIO m, IsCalendar o) => o -> Bool -> m ()
- constructCalendarShowHeading :: (IsCalendar o, MonadIO m) => Bool -> m (GValueConstruct o)
- getCalendarShowHeading :: (MonadIO m, IsCalendar o) => o -> m Bool
- setCalendarShowHeading :: (MonadIO m, IsCalendar o) => o -> Bool -> m ()
- constructCalendarShowWeekNumbers :: (IsCalendar o, MonadIO m) => Bool -> m (GValueConstruct o)
- getCalendarShowWeekNumbers :: (MonadIO m, IsCalendar o) => o -> m Bool
- setCalendarShowWeekNumbers :: (MonadIO m, IsCalendar o) => o -> Bool -> m ()
- constructCalendarYear :: (IsCalendar o, MonadIO m) => Int32 -> m (GValueConstruct o)
- getCalendarYear :: (MonadIO m, IsCalendar o) => o -> m Int32
- setCalendarYear :: (MonadIO m, IsCalendar o) => o -> Int32 -> m ()
- type CalendarDaySelectedCallback = IO ()
- afterCalendarDaySelected :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarDaySelectedCallback) -> m SignalHandlerId
- onCalendarDaySelected :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarDaySelectedCallback) -> m SignalHandlerId
- type CalendarNextMonthCallback = IO ()
- afterCalendarNextMonth :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarNextMonthCallback) -> m SignalHandlerId
- onCalendarNextMonth :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarNextMonthCallback) -> m SignalHandlerId
- type CalendarNextYearCallback = IO ()
- afterCalendarNextYear :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarNextYearCallback) -> m SignalHandlerId
- onCalendarNextYear :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarNextYearCallback) -> m SignalHandlerId
- type CalendarPrevMonthCallback = IO ()
- afterCalendarPrevMonth :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarPrevMonthCallback) -> m SignalHandlerId
- onCalendarPrevMonth :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarPrevMonthCallback) -> m SignalHandlerId
- type CalendarPrevYearCallback = IO ()
- afterCalendarPrevYear :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarPrevYearCallback) -> m SignalHandlerId
- onCalendarPrevYear :: (IsCalendar a, MonadIO m) => a -> ((?self :: a) => CalendarPrevYearCallback) -> m SignalHandlerId
Exported types
Memory-managed wrapper type.
Constructors
| Calendar (ManagedPtr Calendar) |
Instances
| Eq Calendar Source # | |
| GObject Calendar Source # | |
Defined in GI.Gtk.Objects.Calendar | |
| ManagedPtrNewtype Calendar Source # | |
Defined in GI.Gtk.Objects.Calendar Methods | |
| TypedObject Calendar Source # | |
| HasParentTypes Calendar Source # | |
Defined in GI.Gtk.Objects.Calendar | |
| IsGValue (Maybe Calendar) Source # | Convert |
| type ParentTypes Calendar Source # | |
Defined in GI.Gtk.Objects.Calendar | |
class (GObject o, IsDescendantOf Calendar o) => IsCalendar o Source #
Type class for types which can be safely cast to Calendar, for instance with toCalendar.
Instances
| (GObject o, IsDescendantOf Calendar o) => IsCalendar o Source # | |
Defined in GI.Gtk.Objects.Calendar | |
toCalendar :: (MonadIO m, IsCalendar o) => o -> m Calendar Source #
Methods
Click to display all available methods, including inherited ones
Methods
actionSetEnabled, activate, activateAction, activateDefault, addController, addCssClass, addMnemonicLabel, addTickCallback, allocate, announce, bindProperty, bindPropertyFull, childFocus, clearMarks, computeBounds, computeExpand, computePoint, computeTransform, contains, createPangoContext, createPangoLayout, disposeTemplate, dragCheckThreshold, errorBell, forceFloating, freezeNotify, getv, grabFocus, hasCssClass, hasDefault, hasFocus, hasVisibleFocus, hide, inDestruction, initTemplate, insertActionGroup, insertAfter, insertBefore, isAncestor, isDrawable, isFloating, isFocus, isSensitive, isVisible, keynavFailed, listMnemonicLabels, map, markDay, measure, mnemonicActivate, notify, notifyByPspec, observeChildren, observeControllers, pick, queueAllocate, queueDraw, queueResize, realize, ref, refSink, removeController, removeCssClass, removeMnemonicLabel, removeTickCallback, resetProperty, resetRelation, resetState, runDispose, selectDay, shouldLayout, show, sizeAllocate, snapshotChild, stealData, stealQdata, thawNotify, translateCoordinates, triggerTooltipQuery, unmap, unmarkDay, unparent, unrealize, unref, unsetStateFlags, updateNextAccessibleSibling, updatePlatformState, updateProperty, updateRelation, updateState, watchClosure.
Getters
getAccessibleId, getAccessibleParent, getAccessibleRole, getAllocatedBaseline, getAllocatedHeight, getAllocatedWidth, getAllocation, getAncestor, getAtContext, getBaseline, getBounds, getBuildableId, getCanFocus, getCanTarget, getChildVisible, getClipboard, getColor, getCssClasses, getCssName, getCursor, getData, getDate, getDay, getDayIsMarked, getDirection, getDisplay, getFirstAccessibleChild, getFirstChild, getFocusChild, getFocusOnClick, getFocusable, getFontMap, getFontOptions, getFrameClock, getHalign, getHasTooltip, getHeight, getHexpand, getHexpandSet, getLastChild, getLayoutManager, getLimitEvents, getMapped, getMarginBottom, getMarginEnd, getMarginStart, getMarginTop, getMonth, getName, getNative, getNextAccessibleSibling, getNextSibling, getOpacity, getOverflow, getPangoContext, getParent, getPlatformState, getPreferredSize, getPrevSibling, getPrimaryClipboard, getProperty, getQdata, getRealized, getReceivesDefault, getRequestMode, getRoot, getScaleFactor, getSensitive, getSettings, getShowDayNames, getShowHeading, getShowWeekNumbers, getSize, getSizeRequest, getStateFlags, getStyleContext, getTemplateChild, getTooltipMarkup, getTooltipText, getValign, getVexpand, getVexpandSet, getVisible, getWidth, getYear.
Setters
setAccessibleParent, setCanFocus, setCanTarget, setChildVisible, setCssClasses, setCursor, setCursorFromName, setData, setDataFull, setDate, setDay, setDirection, setFocusChild, setFocusOnClick, setFocusable, setFontMap, setFontOptions, setHalign, setHasTooltip, setHexpand, setHexpandSet, setLayoutManager, setLimitEvents, setMarginBottom, setMarginEnd, setMarginStart, setMarginTop, setMonth, setName, setOpacity, setOverflow, setParent, setProperty, setReceivesDefault, setSensitive, setShowDayNames, setShowHeading, setShowWeekNumbers, setSizeRequest, setStateFlags, setTooltipMarkup, setTooltipText, setValign, setVexpand, setVexpandSet, setVisible, setYear.
clearMarks
Arguments
| :: (HasCallStack, MonadIO m, IsCalendar a) | |
| => a |
|
| -> m () |
Remove all visual markers.
getDate
Arguments
| :: (HasCallStack, MonadIO m, IsCalendar a) | |
| => a |
|
| -> m DateTime | Returns: the |
Returns a GDateTime representing the shown
year, month and the selected day.
The returned date is in the local time zone.
getDay
Arguments
| :: (HasCallStack, MonadIO m, IsCalendar a) | |
| => a |
|
| -> m |