source: tspsg/src/settingsdialog.h @ c8ed26ddf1

appveyorimgbotreadme
Last change on this file since c8ed26ddf1 was c8ed26ddf1, checked in by Oleksii Serdiuk, 12 years ago

Implemented color selection from Settings Dialog.

Changing background color appeared to be much harder than expected, so
this feature was removed for now. It is possible to change background
color of the solution output area. However, this background change
doesn't affect printing and export - there background color always stays
white. Will investigate possible workarounds later...

Closes ticket:13 - All colors should be configurable through Settings Dialog

  • Property mode set to 100644
File size: 2.6 KB
Line 
1/*!
2 * \file settingsdialog.h
3 * \author Copyright &copy; 2007-2012 Oleksii Serdiuk <contacts[at]oleksii[dot]name>
4 *
5 *  $Id: $Format:%h %ai %an$ $
6 *  $URL: http://tspsg.info/ $
7 *
8 * \brief Defines SettingsDialog class.
9 *
10 *  <b>TSPSG: TSP Solver and Generator</b>
11 *
12 *  This file is part of TSPSG.
13 *
14 *  TSPSG is free software: you can redistribute it and/or modify
15 *  it under the terms of the GNU General Public License as published by
16 *  the Free Software Foundation, either version 3 of the License, or
17 *  (at your option) any later version.
18 *
19 *  TSPSG is distributed in the hope that it will be useful,
20 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
21 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
22 *  GNU General Public License for more details.
23 *
24 *  You should have received a copy of the GNU General Public License
25 *  along with TSPSG.  If not, see <http://www.gnu.org/licenses/>.
26 */
27
28#ifndef SETTINGSDIALOG_H
29#define SETTINGSDIALOG_H
30
31#include "globals.h"
32
33#include "ui_settingsdialog.h"
34
35/*!
36 * \brief Class for handling Settings Dialog UI and logic.
37 * \author Copyright &copy; 2007-2012 Oleksii Serdiuk <contacts[at]oleksii[dot]name>
38 */
39class SettingsDialog: public QDialog, Ui::SettingsDialog
40{
41    Q_OBJECT
42public:
43    SettingsDialog(QWidget *parent = 0);
44    bool colorChanged() const;
45    bool fontChanged() const;
46    qint8 translucencyChanged() const;
47
48private:
49    bool _fontChanged;
50    bool _colorChanged;
51    qint8 _translucency;
52
53    QColor textColor, selColor, altColor, borderColor, bgColor;
54    QFont font;
55
56    QSettings *settings;
57    QHBoxLayout *layoutCitiesLimit;
58#ifndef HANDHELD
59    QCheckBox *cbUseTranslucency;
60#endif // HANDHELD
61    QCheckBox *cbCheck4Updates;
62    QSpinBox *spinUpdateCheckInterval;
63#ifndef QT_NO_PRINTER
64    QCheckBox *cbHQGraph;
65#endif
66#ifdef Q_WS_WINCE_WM
67    QRect currentGeometry;
68#elif !defined(HANDHELD)
69    QCheckBox *cbSaveState;
70    QLabel *imgIcon;
71    QFrame *lineVertical;
72    QLabel *labelHint;
73
74    void pickColor(QColor &where);
75    void setBgColor(QWidget *widget, const QColor &color);
76
77#ifndef QT_NO_STATUSTIP
78    bool event(QEvent *ev);
79#endif // QT_NO_STATUSTIP
80#endif // Q_WS_WINCE_WM
81
82private slots:
83    void accept();
84    void buttonTextColorClicked();
85    void buttonSelectedColorClicked();
86    void buttonAlternateColorClicked();
87    void buttonBorderColorClicked();
88//    void buttonBgColorClicked();
89    void buttonFontClicked();
90#ifdef Q_WS_WINCE_WM
91    void desktopResized(int screen);
92    void showEvent(QShowEvent *ev);
93#endif // Q_WS_WINCE_WM
94    void spinRandMinValueChanged(int val);
95};
96
97#endif // SETTINGSDIALOG_H
Note: See TracBrowser for help on using the repository browser.