Changeset 7779 in orxonox.OLD for trunk/src/lib/gui/gl_gui/glgui_widget.h
- Timestamp:
- May 23, 2006, 10:04:17 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/gui/gl_gui/glgui_widget.h
r7221 r7779 9 9 #include "element_2d.h" 10 10 #include "event.h" 11 12 11 #include "material.h" 13 12 14 13 #include "glincl.h" 15 #include " executor/executor.h"14 #include "signal_connector.h" 16 15 17 16 // FORWARD DECLARATION 18 17 class Material; 19 18 20 typedef enum 19 namespace OrxGui 21 20 { 22 GLGuiSignal_click = 0,23 GLGuiSignal_release,24 GLGuiSignal_rollOn,25 GLGuiSignal_rollOff,26 GLGuiSignal_open,27 GLGuiSignal_close,28 GLGuiSignal_destroy,29 21 30 GLGuiSignalCount, 31 } GLGuiSignalType; 22 typedef enum 23 { 24 GLGuiSignal_click = 0, 25 GLGuiSignal_release, 26 GLGuiSignal_rollOn, 27 GLGuiSignal_rollOff, 28 GLGuiSignal_open, 29 GLGuiSignal_close, 30 GLGuiSignal_destroy, 32 31 33 //! if the Element should be visible by default. 32 GLGuiSignalCount, 33 } GLGuiSignalType; 34 35 //! if the Element should be visible by default. 34 36 #define GLGUI_WIDGET_DEFAULT_VISIBLE false 35 37 36 //! This is widget part of the openglGUI class 37 /** 38 * A widget is the main class of all the elements of th GUI. 39 */ 40 class GLGuiWidget : public Element2D { 38 //! This is widget part of the openglGUI class 39 /** 40 * A widget is the main class of all the elements of th GUI. 41 */ 42 class GLGuiWidget : public Element2D 43 { 44 private: 45 41 46 public: 42 47 GLGuiWidget(); 43 48 virtual ~GLGuiWidget(); 44 49 45 void init();46 /** @returns a new char-array containing a string with the options. Delete with delete[]; */47 virtual char* save() {};48 /** loads options of the Widget. @param loadString a string containing the Options */49 virtual void load(const std::string& loadString) {};50 51 50 void show(); 52 51 void hide(); 53 52 54 void connectSignal(GLGuiSignalType signalType, const Executor&signal);53 void connectSignal(GLGuiSignalType signalType, BaseObject* obj, const Executor* signal); 55 54 void disconnectSignal(GLGuiSignalType signalType); 56 55 bool focusOverWidget(float x, float y); … … 73 72 inline void endDraw() const { glPopMatrix(); }; 74 73 74 private: 75 void init(); 76 75 77 protected: 76 Material backMat;77 GLuint backModel;78 Material backMat; 79 GLuint backModel; 78 80 79 Material frontMat;80 GLuint frontModel;81 Material frontMat; 82 GLuint frontModel; 81 83 82 84 private: 83 Executor* widgetSignals[GLGuiSignalCount];85 std::vector<SignalConnector*> widgetSignals; 84 86 85 bool focusable; //!< If this widget can receive focus.86 bool clickable; //!< if this widget can be clicked upon.87 };88 87 bool focusable; //!< If this widget can receive focus. 88 bool clickable; //!< if this widget can be clicked upon. 89 }; 90 } 89 91 #endif /* _GLGUI_WIDGET_H */
Note: See TracChangeset
for help on using the changeset viewer.