diff --git a/src/Backend.cpp b/src/Backend.cpp index 577dbea..02bb410 100644 --- a/src/Backend.cpp +++ b/src/Backend.cpp @@ -18,7 +18,7 @@ #include #include -Backend::Backend() : view(&mirai) +Backend::Backend() : todoView(&mirai) { cpputils::debug::Timer startDuration; std::cout << "Backend created" << std::endl; @@ -64,7 +64,7 @@ Backend::Backend() : view(&mirai) } cpputils::debug::Timer updatingViewDuration; - view.update(); + todoView.update(); updatingViewDuration.printTimeElapsed("Updating view duration"); cpputils::debug::Timer rebuildQMLTasksListDuration; rebuildQMLTasksList(); @@ -76,7 +76,7 @@ void Backend::addTodo(QString newTodo, QString date) { mirai.addTask(newTodo.toStdString(), date.toStdString()); mirai.save(); - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tasksChanged(); } @@ -92,42 +92,42 @@ void Backend::addTodoFromRawFormat(QString filePath, QString text, QString date) mirai::TodoMdFormat::stringToTask(text.toStdString(), date.toStdString()) ); mirai.save(); - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tasksChanged(); } void Backend::addTagFilter(QString tag) { - view.addTagFilter(tag.toStdString()); + todoView.addTagFilter(tag.toStdString()); rebuildQMLTasksList(); emit tasksChanged(); } void Backend::removeTagFilter(QString tag) { - view.removeTagFilter(tag.toStdString()); + todoView.removeTagFilter(tag.toStdString()); rebuildQMLTasksList(); emit tasksChanged(); } void Backend::addFileFilter(QString fileName) { - view.addFileFilter(fileName.toStdString()); + todoView.addFileFilter(fileName.toStdString()); rebuildQMLTasksList(); emit tasksChanged(); } void Backend::removeFileFilter(QString fileName) { - view.removeFileFilter(fileName.toStdString()); + todoView.removeFileFilter(fileName.toStdString()); rebuildQMLTasksList(); emit tasksChanged(); } void Backend::removeFilters() { - view.removeFilters(); + todoView.removeFilters(); rebuildQMLTasksList(); emit tasksChanged(); } @@ -139,7 +139,7 @@ void Backend::updateTodoFromRawFormat(int todoIndex, QString text, QString date) *(taskItem.taskItem) = mirai::TodoMdFormat::stringToTask(text.toStdString(), date.toStdString()); mirai.save(); - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tasksChanged(); } @@ -155,7 +155,7 @@ void Backend::updateTodo(int todoIndex, QString state, QString text, QString dat taskItem.taskItem->setText(text.toStdString()); taskItem.taskItem->setDate(date.toStdString()); mirai.save(); - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tasksChanged(); } @@ -165,7 +165,7 @@ void Backend::removeTodo(int todoIndex) QMLTaskItem &taskItem = QMLTasks[todoIndex]; mirai.removeTask(taskItem.taskItem); mirai.save(); - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tasksChanged(); } @@ -191,8 +191,8 @@ void Backend::rebuildQMLTasksList() std::tm tm = *std::localtime(&t); std::stringstream currentDate; currentDate << std::put_time(&tm, "%Y-%m-%d"); - for (int i = 0; i < view.count(); ++i) { - mirai::TaskItem &task = view[i]; + for (int i = 0; i < todoView.count(); ++i) { + mirai::TaskItem &task = todoView[i]; if (shouldHideCompletedTasks_ && task.getState() == mirai::DONE && task.hasDate() && task.getDate() < currentDate.str()) { continue; @@ -220,12 +220,12 @@ void Backend::rebuildQMLTasksList() } QMLActiveTagsFilter.clear(); - for (auto &activeTagFilter : view.getActiveTagsFilter()) { + for (auto &activeTagFilter : todoView.getActiveTagsFilter()) { QMLActiveTagsFilter.push_back(QString::fromStdString(activeTagFilter)); } QMLActiveFilesFilter.clear(); - for (auto &activeFileFilter : view.getActiveFilesFilter()) { + for (auto &activeFileFilter : todoView.getActiveFilesFilter()) { QMLActiveFilesFilter.push_back(QString::fromStdString(activeFileFilter)); } } @@ -297,7 +297,7 @@ void Backend::saveFilesPath(QVariant modifiedFilesPath) for (auto path : paths) { mirai.loadFile(path.toStdString()); } - view.update(); + todoView.update(); rebuildQMLTasksList(); emit tagsChanged(); emit tasksChanged(); diff --git a/src/Backend.h b/src/Backend.h index 8ff242c..e6d0a0f 100644 --- a/src/Backend.h +++ b/src/Backend.h @@ -70,7 +70,8 @@ class Backend : public QObject void saveConfig(); mirai::Mirai mirai; - mirai::TasksView view; + // Both Todo and Calendar view use the todoView for now. + mirai::TasksView todoView; QList QMLTasks; QList QMLTasksFiles; diff --git a/src/qml/Main.qml b/src/qml/Main.qml index 9e3643a..07e73ff 100644 --- a/src/qml/Main.qml +++ b/src/qml/Main.qml @@ -83,13 +83,19 @@ Window { tabs: [ { - label: "List", - onClick: () => { root.selectedView = "list" }, + label: "Todo", + onClick: () => { + backend.hideCompletedTasks(true) // Little workaround for now. + root.selectedView = "list" + }, selected: root.selectedView === "list" }, { label: "Calendar", - onClick: () => { root.selectedView = "calendar" }, + onClick: () => { + backend.hideCompletedTasks(false) // Little workaround for now. + root.selectedView = "calendar" + }, selected: root.selectedView === "calendar" } ]