]> Dogcows Code - chaz/openbox/blobdiff - otk/label.hh
off-by-one
[chaz/openbox] / otk / label.hh
index f80f76c78ac9b54e2281ac3371e260434a82fd4d..9c32e544936ea0ebc414633814572690eec585e4 100644 (file)
@@ -1,30 +1,37 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
 #ifndef __label_hh
 #define __label_hh
 
 #include "widget.hh"
-#include "font.hh"
 
 namespace otk {
 
-class OtkLabel : public OtkWidget {
+class Label : public Widget {
 
 public:
 
-  OtkLabel(OtkWidget *parent);
-  ~OtkLabel();
+  Label(Widget *parent);
+  ~Label();
 
-  inline const std::string &getText(void) const { return _text; }
-  void setText(const std::string &text) { _text = text; _dirty = true; }
+  inline const ustring &getText(void) const { return _text; }
+  void setText(const ustring &text) { _text = text; _dirty = true; }
 
-  void update(void);
+  virtual void renderForeground(void);
 
-  virtual void setStyle(Style *style);
+  virtual void update();
+
+  void fitString(const std::string &str);
+  void fitSize(int w, int h);
+
+  virtual void setStyle(RenderStyle *style);
 
 private:
-  //! Object used by Xft to render to the drawable
-  XftDraw *_xftdraw;
-  //! Text displayed in the label
-  std::string _text;
+  //! Text to be displayed in the label
+  ustring _text;
+  //! The actual text being shown, may be a subset of _text
+  ustring _drawtext;
+  //! The drawing offset for the text
+  int _drawx;
 };
 
 }
This page took 0.02434 seconds and 4 git commands to generate.