pub struct RemindersManager { /* private fields */ }Expand description
The main reminders manager providing access to EventKit functionality
Implementations§
Source§impl RemindersManager
impl RemindersManager
Gets the current authorization status for reminders
Sourcepub fn request_access(&self) -> Result<bool>
pub fn request_access(&self) -> Result<bool>
Requests full access to reminders (blocking)
Returns Ok(true) if access was granted, Ok(false) if denied
Ensures we have authorization, requesting if needed
Sourcepub fn list_calendars(&self) -> Result<Vec<CalendarInfo>>
pub fn list_calendars(&self) -> Result<Vec<CalendarInfo>>
Lists all reminder calendars (lists)
Sourcepub fn list_sources(&self) -> Result<Vec<SourceInfo>>
pub fn list_sources(&self) -> Result<Vec<SourceInfo>>
Lists all available sources (iCloud, Local, Exchange, etc.)
Sourcepub fn default_calendar(&self) -> Result<CalendarInfo>
pub fn default_calendar(&self) -> Result<CalendarInfo>
Gets the default calendar for new reminders
Sourcepub fn fetch_all_reminders(&self) -> Result<Vec<ReminderItem>>
pub fn fetch_all_reminders(&self) -> Result<Vec<ReminderItem>>
Fetches all reminders (blocking)
Sourcepub fn fetch_reminders(
&self,
calendar_titles: Option<&[&str]>,
) -> Result<Vec<ReminderItem>>
pub fn fetch_reminders( &self, calendar_titles: Option<&[&str]>, ) -> Result<Vec<ReminderItem>>
Fetches reminders from specific calendars (blocking)
Sourcepub fn fetch_incomplete_reminders(&self) -> Result<Vec<ReminderItem>>
pub fn fetch_incomplete_reminders(&self) -> Result<Vec<ReminderItem>>
Fetches incomplete reminders
Sourcepub fn create_reminder(
&self,
title: &str,
notes: Option<&str>,
calendar_title: Option<&str>,
priority: Option<usize>,
due_date: Option<DateTime<Local>>,
start_date: Option<DateTime<Local>>,
) -> Result<ReminderItem>
pub fn create_reminder( &self, title: &str, notes: Option<&str>, calendar_title: Option<&str>, priority: Option<usize>, due_date: Option<DateTime<Local>>, start_date: Option<DateTime<Local>>, ) -> Result<ReminderItem>
Creates a new reminder
§Arguments
title- The reminder titlenotes- Optional notes/descriptioncalendar_title- Optional calendar/list name (uses default if None)priority- Optional priority (0 = none, 1-4 = high, 5 = medium, 6-9 = low)due_date- Optional due date for the reminderstart_date- Optional start date (when to start working on it)
Sourcepub fn update_reminder(
&self,
identifier: &str,
title: Option<&str>,
notes: Option<&str>,
completed: Option<bool>,
priority: Option<usize>,
due_date: Option<Option<DateTime<Local>>>,
start_date: Option<Option<DateTime<Local>>>,
calendar_title: Option<&str>,
) -> Result<ReminderItem>
pub fn update_reminder( &self, identifier: &str, title: Option<&str>, notes: Option<&str>, completed: Option<bool>, priority: Option<usize>, due_date: Option<Option<DateTime<Local>>>, start_date: Option<Option<DateTime<Local>>>, calendar_title: Option<&str>, ) -> Result<ReminderItem>
Updates an existing reminder
All fields are optional - only provided fields will be updated.
Pass Some(None) for due_date/start_date to clear them.
Use calendar_title to move the reminder to a different list.
Sourcepub fn complete_reminder(&self, identifier: &str) -> Result<ReminderItem>
pub fn complete_reminder(&self, identifier: &str) -> Result<ReminderItem>
Marks a reminder as complete
Sourcepub fn uncomplete_reminder(&self, identifier: &str) -> Result<ReminderItem>
pub fn uncomplete_reminder(&self, identifier: &str) -> Result<ReminderItem>
Marks a reminder as incomplete
Sourcepub fn delete_reminder(&self, identifier: &str) -> Result<()>
pub fn delete_reminder(&self, identifier: &str) -> Result<()>
Deletes a reminder
Sourcepub fn get_reminder(&self, identifier: &str) -> Result<ReminderItem>
pub fn get_reminder(&self, identifier: &str) -> Result<ReminderItem>
Gets a reminder by its identifier
Sourcepub fn get_alarms(&self, identifier: &str) -> Result<Vec<AlarmInfo>>
pub fn get_alarms(&self, identifier: &str) -> Result<Vec<AlarmInfo>>
Lists all alarms on a reminder.
Sourcepub fn add_alarm(&self, identifier: &str, alarm: &AlarmInfo) -> Result<()>
pub fn add_alarm(&self, identifier: &str, alarm: &AlarmInfo) -> Result<()>
Adds an alarm to a reminder.
Sourcepub fn remove_all_alarms(&self, identifier: &str) -> Result<()>
pub fn remove_all_alarms(&self, identifier: &str) -> Result<()>
Removes all alarms from a reminder.
Sourcepub fn remove_alarm(&self, identifier: &str, index: usize) -> Result<()>
pub fn remove_alarm(&self, identifier: &str, index: usize) -> Result<()>
Removes a specific alarm from a reminder by index.
Sourcepub fn set_url(&self, identifier: &str, url: Option<&str>) -> Result<()>
pub fn set_url(&self, identifier: &str, url: Option<&str>) -> Result<()>
Set or clear the URL on a reminder.
Sourcepub fn get_recurrence_rules(
&self,
identifier: &str,
) -> Result<Vec<RecurrenceRule>>
pub fn get_recurrence_rules( &self, identifier: &str, ) -> Result<Vec<RecurrenceRule>>
Gets recurrence rules on a reminder.
Sourcepub fn set_recurrence_rule(
&self,
identifier: &str,
rule: &RecurrenceRule,
) -> Result<()>
pub fn set_recurrence_rule( &self, identifier: &str, rule: &RecurrenceRule, ) -> Result<()>
Sets a recurrence rule on a reminder (replaces any existing rules).
Sourcepub fn remove_recurrence_rules(&self, identifier: &str) -> Result<()>
pub fn remove_recurrence_rules(&self, identifier: &str) -> Result<()>
Removes all recurrence rules from a reminder.
Sourcepub fn create_calendar(&self, title: &str) -> Result<CalendarInfo>
pub fn create_calendar(&self, title: &str) -> Result<CalendarInfo>
Creates a new reminder list (calendar)
The list will be created in the default source (usually iCloud or Local).
Sourcepub fn rename_calendar(
&self,
identifier: &str,
new_title: &str,
) -> Result<CalendarInfo>
pub fn rename_calendar( &self, identifier: &str, new_title: &str, ) -> Result<CalendarInfo>
Renames an existing reminder list (calendar) Rename a reminder list (backward compat wrapper).
Sourcepub fn update_calendar(
&self,
identifier: &str,
new_title: Option<&str>,
color_rgba: Option<(f64, f64, f64, f64)>,
) -> Result<CalendarInfo>
pub fn update_calendar( &self, identifier: &str, new_title: Option<&str>, color_rgba: Option<(f64, f64, f64, f64)>, ) -> Result<CalendarInfo>
Update a reminder list — name, color, or both.
Sourcepub fn delete_calendar(&self, identifier: &str) -> Result<()>
pub fn delete_calendar(&self, identifier: &str) -> Result<()>
Deletes a reminder list (calendar)
Warning: This will delete all reminders in the list!
Sourcepub fn get_calendar(&self, identifier: &str) -> Result<CalendarInfo>
pub fn get_calendar(&self, identifier: &str) -> Result<CalendarInfo>
Gets a calendar by its identifier