Add new 'Add task/event' bar directly in the main view

This commit is contained in:
Vyn 2024-10-09 17:07:17 +02:00
parent 534da46a26
commit 2aa039e5fc
18 changed files with 399 additions and 51 deletions

View file

@ -1,6 +1,42 @@
import { Date, Time } from "std-widgets.slint";
export struct NewTaskData {
sourceId: int,
eventId: int,
title: string,
scheduled: bool,
date: Date
}
export struct SaveTaskData {
sourceId: int,
id: int,
title: string,
scheduled: bool,
date: Date,
}
export struct NewEventParams {
sourceId: int,
title: string,
date: Date,
startsAt: Time,
endsAt: Time
}
export struct SaveEventParams {
sourceId: int,
id: int,
title: string,
date: Date,
startsAt: Time,
endsAt: Time
}
export struct Source {
name: string,
selected: bool
}
export struct TaskData {
sourceId: int,
@ -36,7 +72,9 @@ struct OpenNewTaskFormParams {
}
export global Backend {
in-out property<[Source]> sources-selected;
in-out property<[string]> sources;
in-out property<bool> no-source-selected;
in-out property<[string]> tags;
in-out property<[Day]> visible_tasks;
in-out property<[TaskData]> unscheduled-tasks;
@ -53,5 +91,10 @@ export global Backend {
callback delete_task_clicked(int, int);
callback delete_event_clicked(int, int);
callback createTask(NewTaskData);
callback saveTask(SaveTaskData);
callback createEvent(NewEventParams);
callback saveEvent(SaveEventParams);
pure callback formatDate(Date) -> string;
}