]> Dogcows Code - chaz/openbox/blobdiff - otk/button.hh
better xft checks. require xft version 2
[chaz/openbox] / otk / button.hh
index 48a0f8136df861bc8b3d68bb9d3225e428a89f44..5924e9b0ebe18783e9b10521c9f23acaccb25127 100644 (file)
@@ -1,9 +1,11 @@
-#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:
 
@@ -23,25 +25,19 @@ public:
   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);
-
   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);
+  void buttonPressHandler(const XButtonEvent &e);
+  void buttonReleaseHandler(const XButtonEvent &e);
 
+  virtual void setStyle(Style *style);
+  
 private:
 
-  std::string _text;
-  //OtkPixmap _pixmap;
   bool _pressed;
-  bool _dirty;
+  unsigned int _mouse_button;
 
   BTexture *_pressed_focus_tx;
   BTexture *_pressed_unfocus_tx;
@@ -51,3 +47,5 @@ private:
 };
 
 }
+
+#endif
This page took 0.022553 seconds and 4 git commands to generate.