Skip to content

Commit c27cced

Browse files
authored
0.2
1 parent 9434e67 commit c27cced

File tree

1 file changed

+21
-7
lines changed

1 file changed

+21
-7
lines changed

panes/keyboard/keyboard.cpp

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,11 @@ void KeyboardPane::addLayout(QString layoutName, QListWidget* layoutList) {
2323
layoutName));
2424
}
2525

26-
void KeyboardPane::setCurrentSettings(QListWidget* layoutList,
26+
void KeyboardPane::setCurrentSettings(QCheckBox* useCountryFlagCheckBox,
27+
QListWidget* layoutList,
2728
QListWidget* layoutSwitchShortcut) {
29+
useCountryFlagCheckBox->setChecked(keyboardPaneConfig["useCountryFlag"].toBool());
30+
2831
layoutList->clear();
2932

3033
QString toggleMethod = keyboardPaneConfig["kbLayoutToggle"].toString();
@@ -43,7 +46,8 @@ void KeyboardPane::setCurrentSettings(QListWidget* layoutList,
4346
}
4447
}
4548

46-
void KeyboardPane::saveSettings(QListWidget* layoutList,
49+
void KeyboardPane::saveSettings(QCheckBox* useCountryFlagCheckBox,
50+
QListWidget* layoutList,
4751
QListWidget* layoutSwitchShortcut) {
4852
QString activeLayouts = "";
4953
for (qint8 i = 0; i < layoutList->count(); ++i) {
@@ -57,6 +61,8 @@ void KeyboardPane::saveSettings(QListWidget* layoutList,
5761
layoutSwitchShortcut->selectedItems()[0]->text());
5862
keyboardPaneConfig["kbLayoutToggle"] = QJsonValue(toggleMethod);
5963

64+
keyboardPaneConfig["useCountryFlag"] = QJsonValue(useCountryFlagCheckBox->isChecked());
65+
6066
Pane::saveConfig(keyboardPaneConfig);
6167
}
6268

@@ -114,6 +120,9 @@ QWidget* KeyboardPane::createUI(QWidget* controlCenter) {
114120
backPushButton->setIcon(QIcon::fromTheme("go-previous"));
115121
keyboardPane->layout()->addWidget(backPushButton);
116122

123+
QCheckBox* useCountryFlagCheckBox = new QCheckBox("Use country flag instead of layout code");
124+
layout->addWidget(useCountryFlagCheckBox);
125+
117126
QHBoxLayout* manageLanguagesLayout = new QHBoxLayout;
118127
QVBoxLayout* buttonsLayout = new QVBoxLayout;
119128

@@ -145,7 +154,8 @@ QWidget* KeyboardPane::createUI(QWidget* controlCenter) {
145154
keyboardPane->layout()->addWidget(savePushButton);
146155

147156
prepareUI(toggleMethodsListWidget);
148-
setCurrentSettings(activeLayoutsListWidget, toggleMethodsListWidget);
157+
setCurrentSettings(useCountryFlagCheckBox, activeLayoutsListWidget,
158+
toggleMethodsListWidget);
149159

150160

151161
LayoutDialog* layoutDg = new LayoutDialog;
@@ -154,13 +164,17 @@ QWidget* KeyboardPane::createUI(QWidget* controlCenter) {
154164

155165
// Make connections
156166
keyboardPane->connect(savePushButton, &QPushButton::clicked, keyboardPane,
157-
[this, activeLayoutsListWidget, toggleMethodsListWidget]() {
158-
saveSettings(activeLayoutsListWidget, toggleMethodsListWidget);
167+
[this, useCountryFlagCheckBox,
168+
activeLayoutsListWidget, toggleMethodsListWidget]() {
169+
saveSettings(useCountryFlagCheckBox, activeLayoutsListWidget,
170+
toggleMethodsListWidget);
159171
});
160172

161173
keyboardPane->connect(revertPushButton, &QPushButton::clicked, keyboardPane,
162-
[this, activeLayoutsListWidget, toggleMethodsListWidget]() {
163-
setCurrentSettings(activeLayoutsListWidget, toggleMethodsListWidget);
174+
[this, useCountryFlagCheckBox, activeLayoutsListWidget,
175+
toggleMethodsListWidget]() {
176+
setCurrentSettings(useCountryFlagCheckBox, activeLayoutsListWidget,
177+
toggleMethodsListWidget);
164178
});
165179

166180
keyboardPane->connect(backPushButton, &QPushButton::clicked, keyboardPane,

0 commit comments

Comments
 (0)