Isis 3.0 Developer's Reference (API) |
Home |
00001 #ifndef TabBar_H 00002 #define TabBar_H 00003 00026 // QToolBar is the parent of this class, and should be the ONLY include 00027 // in this file. Do not add any other includes to this header file! 00028 #include <QToolBar> 00029 00030 class QWidget; 00031 template< class A > class QVector; 00032 00033 namespace Isis 00034 { 00035 class Tab; 00036 00053 class TabBar : public QToolBar 00054 { 00055 Q_OBJECT 00056 00057 public: 00058 TabBar(); 00059 virtual ~TabBar(); 00060 00061 virtual void addTab(Tab * newTab); 00062 const int curSelectedTab() const; 00063 void setRadioStyle(const bool & radioStyle); 00064 bool radioStyle(); 00065 const int size() const; 00066 00067 void setSelected(const int & index, const bool & status); 00068 bool isSelected(const int & index); 00069 bool noneSelected(); 00070 void setEnabled(bool); 00071 00072 00073 private slots: 00074 void tabClicked(const int & index); 00075 00076 00077 private: 00078 // functions 00079 bool noOthersInGrpSelected(const int & index) const; 00080 void deselectOthersInGrp(const int & index); 00081 00082 00083 private: 00084 // data 00085 QVector< Tab * > * tabs; 00086 bool radioStyleTabs; 00087 }; 00088 } 00089 00090 #endif