Isis 3 Programmer Reference
ProjectionConfigDialog.h
1 #ifndef ProjectionConfigDialog_h
2 #define ProjectionConfigDialog_h
3 
4 #include <QDialog>
5 
6 #include <QPointer>
7 
8 class QLabel;
9 class QPushButton;
10 class QTextEdit;
11 
12 namespace Isis {
13  class MosaicSceneWidget;
14  class Projection;
15  class Pvl;
16 
25  Q_OBJECT
26 
27  public:
28  ProjectionConfigDialog(MosaicSceneWidget *scene, QWidget *parent = NULL);
29  virtual ~ProjectionConfigDialog();
30 
31  void setQuickConfig(bool quick);
32 
33  signals:
34  void shown();
35 
36  public slots:
37  void applySettings();
38  void readSettings();
39 
40  protected:
41  void showEvent(QShowEvent *);
42 
43  private:
44  Q_DISABLE_COPY(ProjectionConfigDialog);
45  Pvl addMissingKeywords(Pvl mappingPvl);
47 
48  private slots:
49  void beginQuickLoad();
50  void loadFromFile();
51  void saveToFile();
52  void refreshWidgetStates();
53  void showErrors(int);
54 
55  private:
57  QPointer<QLabel> m_stateLabel;
59  QPointer<QLabel> m_errorsLabel;
61  QPointer<QTextEdit> m_mapFileEdit;
62 
64  QPointer<QPushButton> m_readFromFileButton;
65 
67  QPointer<QPushButton> m_applyButton;
69  QPointer<QPushButton> m_okayButton;
70 
72  QPointer<MosaicSceneWidget> m_scene;
73 
75  bool m_dirty;
76 
78  bool m_quick;
79  };
80 }
81 
82 #endif
Pvl addMissingKeywords(Pvl mappingPvl)
Get a modified mapping pvl that the mosaic scene will be compatible with.
void beginQuickLoad()
If using quick load, this will prompt the user for an input file right after the show event...
void setQuickConfig(bool quick)
Enable/disable minimal interaction mode.
This widget encompasses the entire mosaic scene.
void saveToFile()
Save mapping parameters to the given file.
void refreshWidgetStates()
Update the enabled/disabled states of the various widgets based on the current user inputs&#39; states...
ProjectionConfigDialog(MosaicSceneWidget *scene, QWidget *parent=NULL)
Create a projection configuration dialog.
QPointer< QTextEdit > m_mapFileEdit
This is the text area that a user can type in for editing the projection.
void readSettings()
Update the current widgets&#39; states with the current settings in the mosaic scene. ...
void applySettings()
Take the settings that have been configured and apply them to the mosaic scene.
QPointer< QLabel > m_stateLabel
This shows a general idea of the current state of the mapping pvl (always shown)
QPointer< MosaicSceneWidget > m_scene
The mosaic scene we&#39;re configuring the projection for.
void showErrors(int)
This is called when "Show Errors" is checked.
Base class for Map Projections.
Definition: Projection.h:171
bool m_quick
Should we minimize the user interaction?
This is the configuration dialog for the MosaicSceneWidget&#39;s projection parameters (map file)...
QPointer< QPushButton > m_readFromFileButton
This button corresponds to &#39;Load Map File...&#39; and causes a prompt for file input. ...
Projection * createProjection()
Convert the current text in the text edit to a projection.
Container for cube-like labels.
Definition: Pvl.h:135
QPointer< QLabel > m_errorsLabel
This shows errors generated by trying to create a projection from the current mapping pvl...
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
bool m_dirty
To reduce redundant computations, keep track of dirty state of the dialog.
QPointer< QPushButton > m_okayButton
This button applies the current projection to the scene and closes the dialog.
void loadFromFile()
Read mapping parameters from a file (prompts user for the file name).
QPointer< QPushButton > m_applyButton
This button applies the current projection to the scene.