mirai/ui/Backend.slint

57 lines
1.1 KiB
Text
Raw Normal View History

2024-08-16 21:35:12 +02:00
import { Date, Time } from "std-widgets.slint";
export struct TaskData {
sourceId: int,
id: int,
title: string,
checked: bool,
tags: [string],
}
export struct Event {
sourceId: int,
id: int,
title: string,
startsAt: Time,
endsAt: Time,
tasks: [TaskData],
}
export struct Day {
sourceId: int,
id: int,
date: Date,
events: [Event],
tasks: [TaskData],
isLate: bool,
isToday: bool
}
struct OpenNewTaskFormParams {
eventSourceId: int,
eventId: int,
}
export global Backend {
in-out property<[string]> sources;
2024-08-16 21:35:12 +02:00
in-out property<[string]> tags;
in-out property<[Day]> visible_tasks;
2024-10-08 16:36:01 +02:00
in-out property<[TaskData]> unscheduled-tasks;
2024-08-16 21:35:12 +02:00
callback task_clicked(int, int);
callback source_clicked(int);
callback tag_clicked(int);
callback open_new_task_form(OpenNewTaskFormParams);
callback open_edit_task_form(int, int);
callback open_new_event_form();
callback open_edit_event_form(int, int);
callback toggle_show_completed_tasks();
callback delete_task_clicked(int, int);
callback delete_event_clicked(int, int);
pure callback formatDate(Date) -> string;
}