X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fbutton.hh;h=a3805aa069f459e1dc904075ce9a0feaeef8b0e4;hb=b6ad10764e75923ecb55d3dce96415eb991c64ec;hp=2fa8e7da20b960776122c041688e95918124377a;hpb=cbf9dd0c4c8669392d9c7c8461d1af411f0ab0a4;p=chaz%2Fopenbox diff --git a/otk/button.hh b/otk/button.hh index 2fa8e7da..a3805aa0 100644 --- a/otk/button.hh +++ b/otk/button.hh @@ -1,34 +1,34 @@ -#include "widget.hh" -#include "style.hh" -#include "texture.hh" -//#include "pixmap.hh" +// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- +#ifndef __button_hh +#define __button_hh + +#include "label.hh" namespace otk { -class OtkButton : public OtkWidget { +class Button : public Label { public: + Button(Widget *parent); + virtual ~Button(); - OtkButton(OtkWidget *parent); - ~OtkButton(); + virtual inline bool isPressed() const { return _pressed; } - inline const std::string &getText(void) const { return _text; } - void setText(const std::string &text); + virtual void press(unsigned int mouse_button); + virtual void release(unsigned int mouse_button); - //inline const OtkPixmap &getPixmap(void) const { return _pixmap; } - //void setPixmap(const OtkPixmap &pixmap); + virtual void buttonPressHandler(const XButtonEvent &e); + virtual void buttonReleaseHandler(const XButtonEvent &e); - inline bool isPressed(void) const { return _pressed; } - void press(void); - void release(void); + virtual void clickHandler(unsigned int button) {(void)button;} + virtual void styleChanged(const RenderStyle &style); + private: - - std::string _text; - //OtkPixmap _pixmap; bool _pressed; - BTexture *_unfocus_tx; - + unsigned int _mouse_button; }; } + +#endif