Todo List Demo App
import Felgo 3.0
import QtQuick 2.7
import "../ui"
Page {
id: page
title: viewHelper.formatTodoId(todoData)
rightBarItem: NavigationBarRow {
ActivityIndicatorBarItem {
id: activityBarItem
visible: dataModel.isBusy && !dataModel.isStoringTodos
showItem: showItemAlways
}
IconButtonBarItem {
id: saveBarItem
icon: IconType.save
visible: isDraft
showItem: showItemAlways
onClicked: logic.storeDraftTodo(todoData)
}
}
property int todoId: 0
property var todoData: dataModel.todoDetails[todoId]
readonly property bool isDraft: dataModel.isDraft(todoData)
onTodoIdChanged: {
logic.fetchTodoDetails(todoId)
}
Connections {
target: dataModel
enabled: isDraft
onTodoStored: {
if(page.todoId === draftId)
page.todoId = todoId
}
onStoreDraftTodoFailed: {
if(page.todoId === todo.id)
nativeUtils.displayMessageBox(qsTr("Failed to store ")+viewHelper.formatTodoId(todo))
}
}
TodoDetailContent { }
Rectangle {
visible: dataModel.isStoringTodos
anchors.fill: parent
color: Qt.rgba(1, 1, 1, 0.2)
AppActivityIndicator {
anchors.centerIn: parent