Missed one file
[pierogi] / pirpreferencesform.cpp
1 #include "pirpreferencesform.h"
2 #include "ui_pirpreferencesform.h"
3 #include "pirkeysetmanager.h"
4
5 #include "mainwindow.h"
6
7 #include <QSettings>
8
9 //#include <iostream>
10
11 PIRPreferencesForm::PIRPreferencesForm(
12   QWidget *parent,
13   const PIRKeysetManager *keysetManager)
14   : QWidget(parent),
15     ui(new Ui::PIRPreferencesForm),
16     defaultKeyset(0),
17     useDefaultForVolume(false)
18 {
19   ui->setupUi(this);
20
21   mainWindow = dynamic_cast<MainWindow *>(parent);
22
23   setAttribute(Qt::WA_Maemo5StackedWindow);
24   setWindowFlags(windowFlags() | Qt::Window);
25
26   QSettings settings("pietrzak.org", "Pierogi");
27
28   settings.beginGroup("Preferences");
29
30   if (settings.contains("defaultKeysetName"))
31   {
32     keysetManager->findKeysetID(
33       settings.value("defaultKeysetMake").toString(),
34       settings.value("defaultKeysetName").toString(),
35       defaultKeyset);
36
37     QString displayName = settings.value("defaultKeysetMake").toString();
38     displayName.append(" ");
39     displayName.append(settings.value("defaultKeysetName").toString());
40
41     ui->defaultKeysetNameLabel->setText(displayName);
42     ui->useDefaultCheckBox->setEnabled(true);
43   }
44
45   if (settings.contains("useDefaultForVolume"))
46   {
47     useDefaultForVolume = settings.value("useDefaultForVolume").toBool();
48
49     if (useDefaultForVolume)
50     {
51       ui->useDefaultCheckBox->setChecked(true);
52     }
53   }
54
55   if (settings.contains("useAltMain"))
56   {
57     if (settings.value("useAltMain").toBool())
58     {
59       ui->altMainCheckBox->setChecked(true);
60       mainWindow->useAltMainPanel();
61     }
62   }
63
64   settings.endGroup();
65 }
66
67
68 PIRPreferencesForm::~PIRPreferencesForm()
69 {
70   delete ui;
71 }
72
73
74 void PIRPreferencesForm::on_setDefaultButton_clicked()
75 {
76   QString make = mainWindow->getCurrentMake();
77   QString name = mainWindow->getCurrentName();
78   defaultKeyset = mainWindow->getCurrentKeyset();
79   ui->useDefaultCheckBox->setEnabled(true);
80
81   QString displayName = make;
82   displayName.append(" ");
83   displayName.append(name);
84   ui->defaultKeysetNameLabel->setText(displayName);
85
86   QSettings settings("pietrzak.org", "Pierogi");
87   settings.beginGroup("Preferences");
88   settings.setValue("defaultKeysetMake", make);
89   settings.setValue("defaultKeysetName", name);
90   settings.endGroup();
91
92   mainWindow->enableButtons();
93 }
94
95 void PIRPreferencesForm::on_clearDefaultButton_clicked()
96 {
97   defaultKeyset = 0;
98   ui->defaultKeysetNameLabel->setText("None");
99   ui->useDefaultCheckBox->setEnabled(false);
100
101   QSettings settings("pietrzak.org", "Pierogi");
102   settings.beginGroup("Preferences");
103   settings.remove("defaultKeysetMake");
104   settings.remove("defaultKeysetName");
105   settings.endGroup();
106
107   mainWindow->enableButtons();
108 }
109
110
111 void PIRPreferencesForm::on_useDefaultCheckBox_stateChanged(int arg1)
112 {
113   QSettings settings("pietrzak.org", "Pierogi");
114   settings.beginGroup("Preferences");
115
116   if (arg1 == Qt::Checked)
117   {
118     useDefaultForVolume = true;
119     settings.setValue("useDefaultForVolume", true);
120   }
121   else
122   {
123     useDefaultForVolume = false;
124     settings.setValue("useDefaultForVolume", false);
125   }
126
127   settings.endGroup();
128
129   mainWindow->enableButtons();
130 }
131
132
133 void PIRPreferencesForm::on_altMainCheckBox_stateChanged(
134   int arg1)
135 {
136   QSettings settings("pietrzak.org", "Pierogi");
137
138   settings.beginGroup("Preferences");
139
140   if (arg1 == Qt::Checked)
141   {
142     settings.setValue("useAltMain", true);
143
144     mainWindow->useAltMainPanel();
145   }
146   else
147   {
148     settings.setValue("useAltMain", false);
149
150     mainWindow->useMainPanel();
151   }
152
153   settings.endGroup();
154 }