X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fbutton.hh;h=17ddce03befae988effdbbfabd130a2164ed5be2;hb=2b2f81b93c89c2a2d6abc3b12dee66b8e2a0452d;hp=f25f731d9d1c63cdcfb63edf529eb7da6a4c4e9c;hpb=0856b11de843db30b5053c8cb7d9c84eae262852;p=chaz%2Fopenbox diff --git a/otk/button.hh b/otk/button.hh index f25f731d..17ddce03 100644 --- a/otk/button.hh +++ b/otk/button.hh @@ -1,48 +1,43 @@ -#include "focuswidget.hh" -//#include "pixmap.hh" +#ifndef __button_hh +#define __button_hh + +#include "focuslabel.hh" namespace otk { -class OtkButton : public OtkFocusWidget { +class OtkButton : public OtkFocusLabel { public: OtkButton(OtkWidget *parent); ~OtkButton(); - inline const BTexture *getPressedFocusTexture(void) const + inline const otk::BTexture *getPressedFocusTexture(void) const { return _pressed_focus_tx; } - void setPressedFocusTexture(BTexture *texture) + void setPressedFocusTexture(otk::BTexture *texture) { _pressed_focus_tx = texture; } - inline const BTexture *getPressedUnfocusTexture(void) const + inline const otk::BTexture *getPressedUnfocusTexture(void) const { return _pressed_unfocus_tx; } - void setPressedUnfocusTexture(BTexture *texture) + void setPressedUnfocusTexture(otk::BTexture *texture) { _pressed_unfocus_tx = texture; } - void setTexture(BTexture *texture); - void setUnfocusTexture(BTexture *texture); - - inline const std::string &getText(void) const { return _text; } - void setText(const std::string &text) { _text = text; _dirty = true; } - - //inline const OtkPixmap &getPixmap(void) const { return _pixmap; } - //void setPixmap(const OtkPixmap &pixmap); + void setTexture(otk::BTexture *texture); + void setUnfocusTexture(otk::BTexture *texture); inline bool isPressed(void) const { return _pressed; } - void press(void); - void release(void); + void press(unsigned int mouse_button); + void release(unsigned int mouse_button); - virtual void update(void); - virtual bool expose(const XExposeEvent &e); - virtual bool configure(const XConfigureEvent &e); + void buttonPressHandler(const XButtonEvent &e); + void buttonReleaseHandler(const XButtonEvent &e); + virtual void setStyle(otk::Style *style); + private: - std::string _text; - //OtkPixmap _pixmap; bool _pressed; - bool _dirty; + unsigned int _mouse_button; BTexture *_pressed_focus_tx; BTexture *_pressed_unfocus_tx; @@ -52,3 +47,5 @@ private: }; } + +#endif