22 import org.kde.plasma.components 0.1
26 property int settingsPageMargins: 15;
29 id: anagramResolveTimeUserGuideDialog;
30 content: i18n(
"<b>Anagram resolve time</b>: Maximum allowed time for resolving the anagram");
34 id: hintShowDurationUserGuideDialog;
35 content: i18n(
"<b>Hint show duration:</b> The duration for showing the hint for the current anagram");
39 id: soundsUserGuideDialog;
40 content: i18n(
"<b>Sounds:</b> Turn all the sounds on or off inside the game");
43 function pushPage(file) {
44 var component = Qt.createComponent(file)
45 if (component.status == Component.Ready)
46 pageStack.push(component);
48 console.log(
"Error loading component:", component.errorString());
52 id: languageSelectionDialog;
53 titleText: i18n(
"Select a language");
54 selectedIndex: kanagramGame.dataLanguageSelectedIndex();
56 model: kanagramGame.languageNames();
58 onSelectedIndexChanged: {
59 kanagramGame.dataLanguage = model[selectedIndex];
60 rootWindow.languageSelectionChanged =
true;
65 target: kanagramEngineHelper;
67 onHintHideTimeChanged: {
68 hintAppearanceSlider.value = kanagramEngineHelper.hintHideTime;
71 onResolveTimeChanged: {
72 resolveTimeSlider.value = kanagramEngineHelper.resolveTime;
76 soundsSwitch.checked = kanagramEngineHelper.useSounds;
80 Component.onCompleted: {
81 hintAppearanceSlider.value = kanagramEngineHelper.hintHideTime;
82 resolveTimeSlider.value = kanagramEngineHelper.resolveTime;
83 soundsSwitch.checked = kanagramEngineHelper.useSounds;
88 id: settingsPageMainRectangle;
95 margins: settingsPageMargins;
98 contentWidth: settingsPageMainColumn.width;
99 contentHeight: settingsPageMainColumn.height;
102 id: settingsPageMainColumn;
103 width: settingsPageMainRectangle.width - 2*settingsPageMargins;
109 text: i18n(
"Kanagram Settings");
117 fillMode: Image.TileHorizontally;
118 source:
"separator.png";
126 height: childrenRect.height;
130 id: hintAppearanceLabel;
134 verticalCenter: parent.verticalCenter;
137 text: i18n(
"Hint show duration in seconds");
142 iconSource:
"image://theme/icon-l-user-guide-main-view"
146 verticalCenter: parent.verticalCenter;
150 hintShowDurationUserGuideDialog.open();
156 id: hintAppearanceSlider;
157 width: parent.width - 10;
159 valueIndicatorVisible:
true;
162 anchors.horizontalCenter: parent.horizontalCenter;
165 kanagramEngineHelper.hintHideTime = value;
174 fillMode: Image.TileHorizontally;
175 source:
"separator.png";
183 height: childrenRect.height;
187 id: resolveTimeLabel;
191 verticalCenter: parent.verticalCenter;
194 text: i18n(
"Anagram resolve time in seconds");
199 iconSource:
"image://theme/icon-l-user-guide-main-view"
203 verticalCenter: parent.verticalCenter;
207 anagramResolveTimeUserGuideDialog.open();
213 id: resolveTimeSlider;
214 width: parent.width - 10;
216 valueIndicatorVisible:
true;
219 anchors.horizontalCenter: parent.horizontalCenter;
222 kanagramEngineHelper.resolveTime = value;
231 fillMode: Image.TileHorizontally;
232 source:
"separator.png";
236 height: childrenRect.height;
242 verticalCenter: parent.verticalCenter;
245 text: i18n(
"Sounds");
250 iconSource:
"image://theme/icon-l-user-guide-main-view"
253 right: soundsSwitch.left;
254 verticalCenter: parent.verticalCenter;
258 soundsUserGuideDialog.open();
266 verticalCenter: parent.verticalCenter;
270 kanagramEngineHelper.useSounds = checked;
279 fillMode: Image.TileHorizontally;
280 source:
"separator.png";
284 iconSource:
"preferences-desktop-locale.png";
285 titleText: i18n(
"Language");
286 subtitleText: kanagramGame.dataLanguage ? kanagramGame.dataLanguage :
"English";
287 iconId:
"textinput-combobox-arrow";
289 mousePressed: languageSelectionMouseArea.pressed;
292 id: languageSelectionMouseArea;
293 anchors.fill: parent;
295 languageSelectionDialog.open();