1/* GCompris - ActivityConfig.qml
2 *
3 * SPDX-FileCopyrightText: 2020 Johnny Jazeix <jazeix@gmail.com>
4 *
5 * Authors:
6 *   Johnny Jazeix <jazeix@gmail.com>
7 *
8 *   SPDX-License-Identifier: GPL-3.0-or-later
9 */
10import QtQuick 2.9
11import QtQuick.Controls 1.5
12import GCompris 1.0
13
14import "../../core"
15
16Item {
17    id: activityConfiguration
18    property Item background
19
20    readonly property string coloredNotes: "coloredNotes"
21    readonly property string coloredlessNotes: "colorlessNotes"
22    property string mode: coloredNotes
23    width: if(background) background.width
24
25    ExclusiveGroup {
26        id: configOptions
27    }
28
29    Column {
30        spacing: 10 * ApplicationInfo.ratio
31        width: parent.width
32        GCDialogCheckBox {
33            id: coloredNotesModeBox
34            width: parent.width - 50
35            text: qsTr("Display colored notes.")
36            checked: activityConfiguration.mode === coloredNotes
37            exclusiveGroup: configOptions
38            onCheckedChanged: {
39                if(coloredNotesModeBox.checked) {
40                    activityConfiguration.mode = coloredNotes
41                }
42            }
43        }
44
45        GCDialogCheckBox {
46            id: colorlessNotesModeBox
47            width: coloredNotesModeBox.width
48            text: qsTr("Display colorless notes.")
49            checked: activityConfiguration.mode === coloredlessNotes
50            exclusiveGroup: configOptions
51            onCheckedChanged: {
52                if(colorlessNotesModeBox.checked) {
53                    activityConfiguration.mode = coloredlessNotes
54                }
55            }
56        }
57    }
58
59    property var dataToSave
60
61    function setDefaultValues() {
62        if(dataToSave["mode"] === undefined) {
63            dataToSave["mode"] = coloredNotes;
64        }
65        activityConfiguration.mode = dataToSave["mode"];
66        if(activityConfiguration.mode === coloredNotes) {
67            coloredNotesModeBox.checked = true
68        }
69        else {
70            colorlessNotesModeBox.checked = true
71        }
72    }
73
74    function saveValues() {
75        dataToSave = {"mode": activityConfiguration.mode};
76    }
77}
78