Calendar Widgets¶
Custom calendar widgets for date selection and milestone display.
Available Widgets¶
MilestoneCalendarWidget¶
Custom QCalendarWidget for displaying milestones with visual indicators.
from src.main_hub.features.home_system.bound_subsystems.milestone_calendar.milestone_calendar import (
MilestoneCalendarWidget,
)
# Create widget
calendar = MilestoneCalendarWidget(parent)
# Connect to signals
calendar.milestoneClicked.connect(self.on_milestone_clicked)
calendar.noMilestoneClicked.connect(self.show_default_content)
# Add milestones
calendar.add_milestone({
"date": QDate(2026, 1, 26),
"title": "Project Deadline",
"description": "Final delivery",
"icon": "milestone_icon",
})
# Set text browser for details
calendar.set_text_browser(self.ui.text_browser)
# Set default markdown content (when no milestone selected)
calendar.set_default_markdown(PathDef("documents/welcome.md"))
Signals¶
| Signal | Emitted When |
|---|---|
milestoneClicked(dict) |
User clicks a date with a milestone |
noMilestoneClicked() |
User clicks a date without a milestone |
Files¶
calendar/
__init__.py
README.md
milestone_calendar/
__init__.py
milestone_calender.py # MilestoneCalendarWidget
What Belongs Here¶
Put here: - Calendar-based widgets - Date picker variants - Timeline widgets
Do NOT put here:
- General date utilities (use shared_services/utils/)
- Non-calendar date widgets