Changing settings dialog logic and menu changes
[impuzzle] / src / settings.cpp
1 /*
2   Image Puzzle - A set your pieces straight game
3   Copyright (C) 2009  Timo Härkönen
4
5   This program is free software: you can redistribute it and/or modify
6   it under the terms of the GNU General Public License as published by
7   the Free Software Foundation, either version 3 of the License, or
8   (at your option) any later version.
9
10   This program is distributed in the hope that it will be useful,
11   but WITHOUT ANY WARRANTY; without even the implied warranty of
12   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13   GNU General Public License for more details.
14
15   You should have received a copy of the GNU General Public License
16   along with this program.  If not, see <http://www.gnu.org/licenses/>.
17  */
18
19 #include "settings.h"
20 #include "defines.h"
21
22 Settings *Settings::instance_ = 0;
23
24 Settings::Settings(QObject *parent) :
25         QObject(parent)
26 {
27     pieceCount_ = EASY_PIECE_COUNT;
28     image_ = 0;
29     imagePath_ = "";
30 }
31
32 Settings *Settings::instance()
33 {
34     if(!instance_) {
35         instance_ = new Settings;
36     }
37
38     return instance_;
39 }
40
41 int Settings::pieceCount() const
42 {
43     return pieceCount_;
44 }
45
46 void Settings::setPieceCount(const int pieces)
47 {
48     pieceCount_ = pieces;
49 }
50
51 QPixmap Settings::image() const
52 {
53     return image_;
54 }
55
56 void Settings::setImage(const QPixmap &image)
57 {
58     image_ = image;
59 }
60
61 QString Settings::imagePath() const
62 {
63     return imagePath_;
64 }
65
66 void Settings::setImagePath(const QString &path)
67 {
68     imagePath_ = path;
69 }