VooCalendar class

Highly customizable Material 3 calendar widget

Inheritance

Constructors

VooCalendar({Key? key, VooCalendarController? controller, DateTime? initialDate, DateTime? firstDate, DateTime? lastDate, VooCalendarView initialView = VooCalendarView.month, VooCalendarSelectionMode selectionMode = VooCalendarSelectionMode.single, List<VooCalendarView> availableViews = const [VooCalendarView.month, VooCalendarView.week, VooCalendarView.day], bool showViewSwitcher = true, bool showHeader = true, bool showWeekNumbers = false, int firstDayOfWeek = 1, Widget headerBuilder(BuildContext context, DateTime focusedDate)?, void onDateSelected(DateTime date)?, void onRangeSelected(DateTime? start, DateTime? end)?, void onViewChanged(VooCalendarView view)?, void onEventTap(VooCalendarEvent event)?, Widget dayBuilder(BuildContext context, DateTime date, bool isSelected, bool isToday, bool isOutsideMonth, List<VooCalendarEvent> events)?, Widget eventBuilder(BuildContext context, VooCalendarEvent event)?, Widget eventBuilderWithInfo(BuildContext context, VooCalendarEvent event, VooCalendarEventRenderInfo renderInfo)?, BoxDecoration? decoration, VooCalendarTheme? theme, bool compact = false, bool enableSwipeNavigation = true, VooCalendarGestureConfig? gestureConfig, VooDayViewConfig? dayViewConfig, VooWeekViewConfig? weekViewConfig, VooMonthViewConfig? monthViewConfig, VooYearViewConfig? yearViewConfig, VooScheduleViewConfig? scheduleViewConfig})
const

Properties

availableViews → List<VooCalendarView>
Available views for view switcher
final
compact → bool
Compact mode for smaller displays
final
controller → VooCalendarController?
Controller for the calendar
final
dayBuilder → Widget Function(BuildContext context, DateTime date, bool isSelected, bool isToday, bool isOutsideMonth, List<VooCalendarEvent> events)?
Custom day builder
final
dayViewConfig → VooDayViewConfig?
Configuration for day view customization
final
decoration → BoxDecoration?
Calendar decoration
final
enableSwipeNavigation → bool
Enable swipe gestures for navigation
final
eventBuilder → Widget Function(BuildContext context, VooCalendarEvent event)?
Custom event builder (legacy - use eventBuilderWithInfo for better layout support)
final
eventBuilderWithInfo → Widget Function(BuildContext context, VooCalendarEvent event, VooCalendarEventRenderInfo renderInfo)?
Event builder with render info (recommended for day view) Provides allocated dimensions and layout context for proper rendering
final
firstDate → DateTime?
First selectable date
final
firstDayOfWeek → int
First day of week (1 = Monday, 7 = Sunday)
final
gestureConfig → VooCalendarGestureConfig?
Gesture configuration for advanced selection
final
hashCode → int
The hash code for this object.
no setterinherited
headerBuilder → Widget Function(BuildContext context, DateTime focusedDate)?
Custom header builder
final
initialDate → DateTime?
Initial date to display
final
initialView → VooCalendarView
Initial view type
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
lastDate → DateTime?
Last selectable date
final
monthViewConfig → VooMonthViewConfig?
Configuration for month view customization
final
onDateSelected → void Function(DateTime date)?
Date selected callback
final
onEventTap → void Function(VooCalendarEvent event)?
Event tap callback
final
onRangeSelected → void Function(DateTime? start, DateTime? end)?
Date range selected callback
final
onViewChanged → void Function(VooCalendarView view)?
View changed callback
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
scheduleViewConfig → VooScheduleViewConfig?
Configuration for schedule view customization
final
selectionMode → VooCalendarSelectionMode
Selection mode
final
showHeader → bool
Show navigation header
final
showViewSwitcher → bool
Show view switcher
final
showWeekNumbers → bool
Show week numbers
final
theme → VooCalendarTheme?
Calendar theme
final
weekViewConfig → VooWeekViewConfig?
Configuration for week view customization
final
yearViewConfig → VooYearViewConfig?
Configuration for year view customization
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<VooCalendar>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited