Isis 3 Developer Reference
GuiParameter.h
Go to the documentation of this file.
1 #ifndef Isis_GuiParameter_h
2 #define Isis_GuiParameter_h
3 
27 #include <QGridLayout>
28 #include <QLabel>
29 #include <QLineEdit>
30 #include <QMenu>
31 #include <QObject>
32 #include <QString>
33 #include <QToolButton>
34 
35 namespace Isis {
36  class UserInterface;
37 
50  class GuiParameter : public QObject {
51 
52  Q_OBJECT
53 
54  public:
55 
56  GuiParameter(QGridLayout *grid, UserInterface &ui, int group, int param);
57  virtual ~GuiParameter();
58 
60  QString Name() const {
61  return p_name;
62  };
63 
64  void SetToDefault();
65 
66  void SetToCurrent();
67 
68  virtual QString Value() = 0;
69 
70  virtual void Set(QString newValue) = 0;
71 
72  void SetEnabled(bool enabled, bool isParentCombo=false);
73 
75  bool IsEnabled() const {
76  return p_label->isEnabled();
77  }
78 
79  virtual bool IsModified();
80 
81  void Update();
82 
83  void RememberWidget(QWidget *w);
84 
86 
87  virtual std::vector<QString> Exclusions();
88 
92  };
94  return p_type;
95  };
96 
97  protected:
98 
99  QToolButton *p_fileButton;
100  QLineEdit *p_lineEdit;
101 
102  int p_group;
103  int p_param;
104  QString p_name;
106 
107  QLabel *p_label;
108 
110 
112 
113  private:
114  QMenu *p_helperMenu;
115 
116  signals:
117  void ValueChanged();
118  void HelperTrigger(const QString &);
119 
120  };
121 };
122 
123 #endif
virtual ~GuiParameter()
Destructor.
Definition: GuiParameter.cpp:164
Definition: GuiParameter.h:90
QList< QWidget * > p_widgetList
Definition: GuiParameter.h:109
ParameterType p_type
Definition: GuiParameter.h:111
void SetEnabled(bool enabled, bool isParentCombo=false)
Enable or disable the parameter.
Definition: GuiParameter.cpp:233
QWidget * AddHelpers(QObject *lo)
Sets up helper button.
Definition: GuiParameter.cpp:261
virtual QString Value()=0
QString Name() const
Return the name of the parameter.
Definition: GuiParameter.h:60
bool IsEnabled() const
Is the parameter enabled.
Definition: GuiParameter.h:75
Definition: GuiParameter.h:90
void HelperTrigger(const QString &)
void Update()
Update the value on the GUI with the value in the UI.
Definition: GuiParameter.cpp:212
void SetToDefault()
Change the parameter to the default value.
Definition: GuiParameter.cpp:174
QString p_name
Definition: GuiParameter.h:104
GuiParameter(QGridLayout *grid, UserInterface &ui, int group, int param)
Constructor.
Definition: GuiParameter.cpp:42
Definition: GuiParameter.h:91
UserInterface * p_ui
Definition: GuiParameter.h:105
QLabel * p_label
Definition: GuiParameter.h:107
Definition: GuiParameter.h:50
int p_group
Definition: GuiParameter.h:102
Definition: GuiParameter.h:91
QLineEdit * p_lineEdit
Definition: GuiParameter.h:100
virtual bool IsModified()
Return if the parameter value is different from the default value.
Definition: GuiParameter.cpp:197
int p_param
Definition: GuiParameter.h:103
ParameterType
Definition: GuiParameter.h:89
ParameterType Type()
Definition: GuiParameter.h:93
void SetToCurrent()
Change the parameter to the current user interface value.
Definition: GuiParameter.cpp:187
virtual void Set(QString newValue)=0
Definition: BoxcarCachingAlgorithm.h:29
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
virtual std::vector< QString > Exclusions()
Return list of current exclusions.
Definition: GuiParameter.cpp:255
Definition: GuiParameter.h:89
Command Line and Xml loader, validation, and access.
Definition: UserInterface.h:155
QToolButton * p_fileButton
Definition: GuiParameter.h:95
void RememberWidget(QWidget *w)
Add widgets to a list for enabling/disabling.
Definition: GuiParameter.cpp:228
Definition: GuiParameter.h:89
Definition: GuiParameter.h:90
Definition: GuiParameter.h:89