Add a Calendar view on the right side

This commit is contained in:
Vyn 2024-10-29 15:02:46 +01:00
parent a80515ff90
commit f1ac8a42d1
18 changed files with 406 additions and 130 deletions

View file

@ -36,6 +36,8 @@ class MarkdownDataProvider : public DataProvider
std::string toMarkdown();
MarkdownData parseMarkdown(const std::string &content);
std::string path() const;
void save() override;
void load() override;

View file

@ -53,6 +53,8 @@ class Source
void load();
std::string name() const;
std::string type() const;
DataProvider *dataProvider();
void createTask(const createTaskParams &task);
void removeTask(const Task &task);

View file

@ -18,6 +18,11 @@
namespace mirai
{
std::string MarkdownDataProvider::path() const
{
return filePath_;
}
std::string MarkdownDataProvider::name() const
{
return data.name;

View file

@ -82,6 +82,8 @@ void Source::createEvent(const createEventParams &eventToCreate)
.id = generateUniqueId(),
.dayId = day.value().id,
.title = eventToCreate.title,
.startsAt = eventToCreate.startsAt,
.endsAt = eventToCreate.endsAt,
});
};
@ -144,4 +146,15 @@ std::string Source::name() const
{
return data->name();
}
std::string Source::type() const
{
// There is only 1 type for now
return "MarkdownFile";
}
DataProvider *Source::dataProvider()
{
return data;
}
} // namespace mirai

View file

@ -43,6 +43,9 @@ std::vector<Task> View::getTasksForDate(const Date &date)
std::vector<Event> View::getEventsForDate(const Date &date)
{
if (!dates.contains(date)) {
return {};
}
return dates.at(date).events;
}

2
external/selenite vendored

@ -1 +1 @@
Subproject commit cbab9dabe784bd3c799d23ead5d2b4d942ec4081
Subproject commit 33d6a9dee8437979b5a9bf5a716a4053f3ebf2fa