Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/gui/src/lib/gui/gl_gui/glgui_button.h @ 7896

Last change on this file since 7896 was 7883, checked in by bensch, 18 years ago

gui: click and release work (internally)

File size: 924 bytes
Line 
1/*!
2 * @file glgui_button.h
3 * The gl_BUTTON widget of th openglGUI
4 *
5 */
6
7#ifndef _GLGUI_BUTTON_H
8#define _GLGUI_BUTTON_H
9
10#include "glgui_widget.h"
11
12#include "text.h"
13
14namespace OrxGui
15{
16  typedef enum
17  {
18    Button_Active,
19    Button_Inactive,
20    Button_Pressed,
21    Button_Released,
22    Button_Activating,
23    Button_Deactivating,
24
25  } ButtonState;
26
27  //! This is part of the openglGUI class
28  /**
29   * The Button is an Abstract class, that can be pushed to Toggle its state.
30   */
31  class GLGuiButton : public GLGuiWidget
32  {
33
34  public:
35    GLGuiButton(const std::string& label);
36    virtual ~GLGuiButton();
37
38    const std::string& getLabel() const { return this->label.getText(); };
39    void setLabel(const std::string& label);
40
41    virtual void draw() const;
42
43    private:
44      void init();
45
46
47  protected:
48
49    Text                 label;
50
51  private:
52    ButtonState          state;
53  };
54}
55#endif /* _GLGUI__H */
Note: See TracBrowser for help on using the repository browser.