Add Unscheduled tasks

This commit is contained in:
Vyn 2024-10-08 16:36:01 +02:00
parent 07081bb27b
commit 53b1280115
13 changed files with 134 additions and 12 deletions

View file

@ -39,7 +39,9 @@ class BaseSource
const std::string &getName() const;
void addDay(const DayData &dayData);
void addUnscheduledTask(const TaskItemData &taskData);
Day *day(const Date &date);
std::vector<std::unique_ptr<TaskItem>> *unscheduledTasks();
std::vector<std::unique_ptr<Day>> *days();
TaskItem *getTaskById(int taskId);
Event *getEventById(int eventId);
@ -55,6 +57,7 @@ class BaseSource
int id_ = nextId_++;
std::string name_;
std::vector<std::unique_ptr<Day>> days_;
std::vector<std::unique_ptr<TaskItem>> unscheduledTasks_;
bool isDirty_ = false;
};

View file

@ -33,6 +33,7 @@ class TasksView
TasksView(Mirai *mirai);
FilteredDay &operator[](int index);
std::vector<TaskItem *> &filteredUnscheduledTasks();
size_t count() const;
void update();
@ -49,6 +50,7 @@ class TasksView
private:
std::vector<FilteredDay> filteredDays;
std::vector<TaskItem *> filteredUnscheduledTasks_;
Mirai *mirai;
Tags tagsFilter;

View file

@ -6,6 +6,7 @@
#pragma once
#include "BaseSource.h"
#include "DateTime.h"
#include "Day.h"
#include "Event.h"
@ -23,13 +24,13 @@ namespace mirai
struct MiraiMarkdownFormatParseResult {
std::string name;
std::vector<DayData> days;
std::vector<TaskItemData> unscheduledTasks;
};
class TodoMdFormat
{
public:
static std::string
stringify(const std::string &name, const std::vector<std::unique_ptr<Day>> &days);
static std::string stringify(BaseSource &source);
static MiraiMarkdownFormatParseResult parse(const std::string &content);