0.7.1
[fapman] / settings.h
1 /*
2         This file is part of Faster Application Manager.
3
4         Faster Application Manager is free software: you can redistribute it and/or modify
5         it under the terms of the GNU General Public License as published by
6         the Free Software Foundation, either version 3 of the License, or
7         (at your option) any later version.
8
9         Faster Application Manager is distributed in the hope that it will be useful,
10         but WITHOUT ANY WARRANTY; without even the implied warranty of
11         MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12         GNU General Public License for more details.
13
14         You should have received a copy of the GNU General Public License
15         along with Faster Application Manager.  If not, see <http://www.gnu.org/licenses/>.
16
17         (C) Heikki Holstila 2010
18 */
19
20 #ifndef SETTINGS_H
21 #define SETTINGS_H
22
23 #include <QtGui>
24 #include <QtNetwork>
25
26 class AAptInterface;
27 class PackageView;
28
29 namespace Ui {
30     class Settings;
31 }
32
33 class Settings : public QDialog
34 {
35     Q_OBJECT
36
37 public:
38     explicit Settings(QWidget *parent = 0);
39         virtual ~Settings();
40         void openWin();
41         void setAptInterface(AAptInterface* apt) { iAptInterface=apt; }
42         void setPackageView(PackageView* v_) { iPackageView=v_; }
43
44         /*
45 #ifdef Q_WS_MAEMO_5             // workaround for buggy Qt autorotation
46         void open() {
47                 QRect r = dynamic_cast<QWidget*>(this->parent())->rect();
48                 if(r.width() < r.height())
49                         this->setAttribute(Qt::WA_Maemo5PortraitOrientation);
50                 else {
51                         if( dynamic_cast<QWidget*>(this->parent())->testAttribute( Qt::WA_Maemo5AutoOrientation ) )
52                                 this->setAttribute( Qt::WA_Maemo5AutoOrientation );
53                         else
54                                 this->setAttribute( Qt::WA_Maemo5LandscapeOrientation );
55                 }
56                 QDialog::open();
57         }
58 #endif
59         */
60
61         QSettings* qsettings() { return iQSettings; }
62
63         static QNetworkProxy createProxyFromString(QString proxystr);
64
65 protected:
66     void changeEvent(QEvent *e);
67
68 private:
69         Settings(const Settings& old);
70         Settings operator= (const Settings& old);
71
72     Ui::Settings *ui;
73         QSettings* iQSettings;
74         AAptInterface* iAptInterface;
75         PackageView* iPackageView;
76
77 private slots:
78         void on_pushButton_searchOptions_clicked();
79         void on_pushButton_picksound_clicked();
80         void on_btn_OK_clicked();
81 };
82
83 #endif // SETTINGS_H