]> Dogcows Code - chaz/openbox/blobdiff - otk/renderstyle.hh
part of a hardcoded style done
[chaz/openbox] / otk / renderstyle.hh
index 920dc1fa36595bff15058186b8f3f93dcbfdff9c..0ecb8e4d974176318ce34814932a689fa9288d71 100644 (file)
@@ -4,9 +4,97 @@
 
 #include "rendertexture.hh"
 
+#include <string>
+
 namespace otk {
 
 class RenderStyle {
+public:
+  enum TextJustify {
+    LeftJustify,
+    RightJustify,
+    CenterJustify
+  };
+
+private:
+  int _screen;
+  std::string _file;
+  
+  RenderColor *_text_focus_color;
+  RenderColor *_text_unfocus_color;
+
+  RenderColor *_frame_border_color;
+  int _frame_border_wirth;
+  RenderColor *_client_border_color_focus; 
+  RenderColor *_client_border_color_unfocus;
+  int _client_border_width;
+  RenderTexture *_titlebar_focus;
+  RenderTexture *_titlebar_unfocus;
+
+  RenderTexture *_label_focus;
+  RenderTexture *_label_unfocus;
+
+  RenderTexture *_handle_focus;
+  RenderTexture *_handle_unfocus;
+
+  RenderTexture *_button_unpress_focus;
+  RenderTexture *_button_unpress_unfocus;
+  RenderTexture *_button_press_focus;
+  RenderTexture *_button_press_unfocus;
+
+  RenderTexture *_grip_focus;
+  RenderTexture *_grip_unfocus;
+
+  Font *_label_font;
+  TextJustify _label_justify;
+
+  int _handle_width;
+  int _bevel_width;
+
+public:
+  RenderStyle(int screen, const std::string &stylefile);
+  virtual ~RenderStyle();
+
+  inline RenderColor *textFocusColor() const { return _text_color_focus; }
+  inline RenderColor *textUnfocusColor() const { return _text_color_unfocus; }
+
+  inline RenderColor *frameBorderColor() const { return _frame_border_color; }
+  inline int frameBorderWidth() const { return _frame_border_wirth; }
+  inline RenderColor *clientBorderFocusColor() const
+    { return _client_border_color_focus; }
+  inline RenderColor *clientBorderUnfocusColor() const
+    { return _client_border_color_unfocus; }
+  inline int clientBorderWidth() const { return _client_border_width; }
+  inline RenderTexture *titlebarFocusBackground() const
+    { return _titlebar_focus; }
+  inline RenderTexture *titlebarUnfocusBackground() const
+    { return _titlebar_unfocus; }
+
+  inline RenderTexture *labelFocusBackground() const { return _label_focus; }
+  inline RenderTexture *labelUnfocusBackground() const { return _label_unfocus;}
+
+  inline RenderTexture *handleFocusBackground() const { _handle_focus; }
+  inline RenderTexture *handleUnfocusBackground() const { _handle_unfocus; }
+
+  inline RenderTexture *buttonUnpressFocusBackground() const
+    { return _button_unpress_focus; }
+  inline RenderTexture *buttonUnpressUnfocusBackground() const
+    { return _button_unpress_unfocus; }
+  inline RenderTexture *buttonPressFocusBackground() const
+    { return _button_press_focus; }
+  inline RenderTexture *buttonPressUnfocusBackgrounf() const
+    { return _button_press_unfocus; }
+
+  inline RenderTexture *gripdFocusBackground() const { return _grip_focus; }
+  inline RenderTexture *gripUnfocusBackground() const { return _grip_unfocus; }
+
+  inline Font *labelFont() const { return _label_font; }
+  inline TextJustify labelTextJustify() const { return _label_justify; }
+
+  inline int handleWidth() const { return _handle_width; }
+  inline int bevelWidth() const { return _bevel_width; }
 };
 
 }
This page took 0.020927 seconds and 4 git commands to generate.