Stellarium  0.16.1
ViewDialog.hpp
1 /*
2  * Stellarium
3  * Copyright (C) 2008 Fabien Chereau
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License
7  * as published by the Free Software Foundation; either version 2
8  * of the License, or (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, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA.
18 */
19 
20 #ifndef _VIEWDIALOG_HPP_
21 #define _VIEWDIALOG_HPP_
22 
23 #include "StelDialog.hpp"
24 
25 #include <QObject>
26 
27 class Ui_viewDialogForm;
28 class QListWidgetItem;
29 class QToolButton;
30 
32 class AtmosphereDialog;
33 class GreatRedSpotDialog;
36 
37 class ViewDialog : public StelDialog
38 {
39 Q_OBJECT
40 public:
41  ViewDialog(QObject* parent);
42  virtual ~ViewDialog();
44  void styleChanged();
45 
46 public slots:
47  void retranslate();
48 
49 protected:
50  Ui_viewDialogForm* ui;
52  virtual void createDialogContent();
53 private slots:
54  void populateLists();
55  void populateToolTips();
56  void skyCultureChanged();
57  void changeProjection(const QString& projectionNameI18n);
58  void projectionChanged();
59  void changeLandscape(QListWidgetItem* item);
60  void landscapeChanged(QString id,QString name);
61  void updateZhrDescription(int zhr);
62  void setBortleScaleToolTip(int Bindex);
63  void setCurrentLandscapeAsDefault(void);
64  void setCurrentCultureAsDefault(void);
65  void updateDefaultSkyCulture();
66  void updateDefaultLandscape();
67  void setFlagCustomGrsSettings(bool b);
70  // NO LONGER NEEDED!
71  //void updateFromProgram();
72 
73  void showAddRemoveLandscapesDialog();
74  void showAtmosphereDialog();
75  void showGreatRedSpotDialog();
76  void showConfigureDSOColorsDialog();
77  void showConfigureOrbitColorsDialog();
78 
79  void setLightPollutionSpinBoxStatus();
80  // Two new from the unwanted trunk-rework Not sure if we need them at all?
81  void populateLightPollution();
82 
83  // WHAT IS THE SKY LAYER? hidden, under development?
84  void populateSkyLayersList();
85  void skyLayersSelectionChanged(const QString&);
86  void skyLayersEnabledChanged(int);
87 
88  void populatePlanetMagnitudeAlgorithmsList();
89  void populatePlanetMagnitudeAlgorithmDescription();
90  void setPlanetMagnitudeAlgorithm(int algorithmID);
91 
92  void setSelectedCatalogsFromCheckBoxes();
93  void setSelectedTypesFromCheckBoxes();
94 
95  void changePage(QListWidgetItem *current, QListWidgetItem *previous);
96 
97  void updateSelectedCatalogsCheckBoxes();
98  void updateSelectedTypesCheckBoxes();
99 
100  void askEclipticJ2000GridColor();
101  void askEclipticGridColor();
102  void askEquatorJ2000GridColor();
103  void askEquatorGridColor();
104  void askGalacticGridColor();
105  void askSupergalacticGridColor();
106  void askAzimuthalGridColor();
107  void askEclipticLineJ2000Color();
108  void askEclipticLineColor();
109  void askEquatorLineJ2000Color();
110  void askEquatorLineColor();
111  void askGalacticEquatorLineColor();
112  void askSupergalacticEquatorLineColor();
113  void askLongitudeLineColor();
114  void askHorizonLineColor();
115  void askColureLinesColor();
116  void askCircumpolarCirclesColor();
117  void askPrecessionCirclesColor();
118  void askPrimeVerticalLineColor();
119  void askMeridianLineColor();
120  void askCardinalPointsColor();
121  void askCelestialJ2000PolesColor();
122  void askCelestialPolesColor();
123  void askZenithNadirColor();
124  void askEclipticJ2000PolesColor();
125  void askEclipticPolesColor();
126  void askGalacticPolesColor();
127  void askSupergalacticPolesColor();
128  void askEquinoxJ2000PointsColor();
129  void askEquinoxPointsColor();
130  void askSolsticeJ2000PointsColor();
131  void askSolsticePointsColor();
132  // constellations colors
133  void askConstellationLabelsColor();
134  void askConstellationLinesColor();
135  void askConstellationBoundariesColor();
136  // asterisms colors
137  void askAsterismLabelsColor();
138  void askAsterismLinesColor();
139  void askRayHelpersColor();
140 
141 private:
142  void connectGroupBox(class QGroupBox* groupBox, const QString& actionId);
143  void updateSkyCultureText();
146  void updateTabBarListWidgetWidth();
147 
148  void colorButton(QToolButton *toolButton, QString propName);
149 
150  AddRemoveLandscapesDialog * addRemoveLandscapesDialog;
151  AtmosphereDialog * atmosphereDialog;
152  GreatRedSpotDialog * greatRedSpotDialog;
153  ConfigureDSOColorsDialog * configureDSOColorsDialog;
154  ConfigureOrbitColorsDialog * configureOrbitColorsDialog;
155 };
156 
157 #endif // _VIEWDIALOG_HPP_
void styleChanged()
Notify that the application style changed.
Base class for all the GUI windows in Stellarium.
Definition: StelDialog.hpp:72
virtual void createDialogContent()
Initialize the dialog widgets and connect the signals/slots.