1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
import QtQuick 2.0
import QuickFlux 1.1
import QtQuick.Dialogs 1.2
import "../actions"
import "../stores"
Middleware {
property RootStore store: MainStore
MessageDialog {
id: dialog
title: "Confirmation"
text: "Are you sure want to show completed tasks?"
standardButtons: StandardButton.Ok | StandardButton.Cancel
onAccepted: {
next(ActionTypes.setShowCompletedTasks, {value: true});
}
onRejected: {
/// Trigger the changed signal even it is unchanged. It forces the checkbox to be turned off.
store.userPrefs.showCompletedTasksChanged();
}
}
function dispatch(type, message) {
if (type === ActionTypes.setShowCompletedTasks &&
message.value === true) {
// If user want to show completed tasks, drop the action and show a dialog
dialog.open();
return;
}
/// Pass the action to next middleware / store
next(type, message);
}
}
|