Ready to be packaged
[kitchenalert] / src / selectsounddialog.cpp
1 /**************************************************************************
2         KitchenAlert
3
4         Copyright (C) 2010  Heli Hyvättinen
5         
6         This file is part of KitchenAlert.
7
8         Kitchen Alert is free software: you can redistribute it and/or modify
9         it under the terms of the GNU General Public License as published by
10         the Free Software Foundation, either version 3 of the License, or
11         (at your option) any later version.
12
13         This program is distributed in the hope that it will be useful,
14         but WITHOUT ANY WARRANTY; without even the implied warranty of
15         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16         GNU General Public License for more details.
17
18         You should have received a copy of the GNU General Public License
19         along with this program.  If not, see <http://www.gnu.org/licenses/>.
20
21 **************************************************************************/
22
23
24
25
26
27 #include "selectsounddialog.h"
28 #include "ui_selectsounddialog.h"
29 #include <QFileDialog>
30 #include <QSettings>
31 #include <QDebug>
32
33 SelectSoundDialog::SelectSoundDialog(QWidget *parent) :
34     QDialog(parent),
35     ui(new Ui::SelectSoundDialog)
36 {
37     ui->setupUi(this);
38     connect(ui->browseButton,SIGNAL(clicked()),this,SLOT(browse()));
39
40     QSettings settings("KitchenAlert","KitchenAlert");
41     QString filename = settings.value("soundfile").toString();
42     ui->lineEdit->setText(filename);
43
44     bool useDefaultSoundFile = settings.value("UseDefaultSound",true).toBool();
45     if (useDefaultSoundFile == true)
46     {
47         ui->DefaultSoundRadioButton->setChecked(true);
48         ui->browseButton->setDisabled(true);
49         ui->lineEdit->setDisabled(true);
50     }
51     else ui->CustomSoundRadioButton->setChecked(true);
52     qDebug() << "UseDefaultSoundfile is " << useDefaultSoundFile;
53 }
54
55 SelectSoundDialog::~SelectSoundDialog()
56 {
57     delete ui;
58 }
59
60 void SelectSoundDialog::browse()
61 {
62     QString filename = QFileDialog::getOpenFileName(this, tr("Choose a sound file"),"/home/user/"); //Filters: to use or not...? //MAEMO specific dir here...
63     if (!filename.isEmpty()) //Empty string returned by the dialog if user pressed cancel...
64     {
65         ui->lineEdit->setText(filename);
66     }
67 }
68
69 QString SelectSoundDialog::getSoundFileName()
70 {
71     if (ui->CustomSoundRadioButton->isChecked() == true)
72         return ui->lineEdit->displayText();
73     else return QString();
74 }
75
76 bool SelectSoundDialog::isDefaultSoundChecked()
77 {
78     return ui->DefaultSoundRadioButton->isChecked();
79 }