mirai/src/windows/AppWindow/views/CalendarView.slint

50 lines
1.6 KiB
Text
Raw Normal View History

2025-06-17 17:03:07 +02:00
import { AppWindowModels, TaskData } from "../Models.slint";
import { AppWindowActions, NewTaskData, SaveTaskData } from "../Actions.slint";
import { Button, VerticalBox, CheckBox, ScrollView, ComboBox } from "std-widgets.slint";
import { TaskLine } from "../../../components/TaskLine.slint";
import { EventGroup } from "../../../components/EventGroup.slint";
import { Calendar } from "../../../components/Calendar.slint";
2025-06-24 10:03:50 +02:00
import { VDatePicker, VTimePicker, VCheckBox, VButton, VTag, VText, VTextInput, Svg, Palette } from "@selenite";
2025-06-17 17:03:07 +02:00
import { CreateTaskOrEvent } from "../../../components/CreateTaskOrEvent.slint";
import { Utils } from "../../../shared/Utils.slint";
import { VActionButton } from "../../../../external/selenite/components/index.slint";
2025-06-24 10:03:50 +02:00
import { AddEventModal } from "../../../modals/AddEventModal.slint";
2025-06-17 17:03:07 +02:00
export component CalendarView inherits Rectangle {
private property<string> icon-visible: Svg.visible;
private property<string> icon-not-visible: Svg.not-visible;
private property<bool> completed-tasks-visible: false;
2025-06-24 10:03:50 +02:00
createEventPopup := AddEventModal {}
2025-06-17 17:03:07 +02:00
VerticalLayout {
padding: 16px;
spacing: 16px;
2025-06-17 17:03:07 +02:00
HorizontalLayout {
alignment: start;
VButton {
text: "New event";
icon-svg: Svg.plus;
icon-colorize: greenyellow;
clicked => {
createEventPopup.show();
}
}
}
Rectangle {
horizontal-stretch: 1;
background: Palette.background.brighter(0.2);
height: 1px;
}
2025-06-17 17:03:07 +02:00
Calendar {
2025-06-24 10:13:49 +02:00
delete-event-request(source-id, event-id) => {
AppWindowActions.delete-event(source-id, event-id)
}
2025-06-17 17:03:07 +02:00
days: AppWindowModels.calendar;
current-date: Utils.current-date;
current-time: Utils.current-time;
}
}
}