X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Frenderstyle.hh;h=2d2c325041b5241121183dffdc90058fa858004c;hb=41a03629c9f166f7a1b427ed1634b44c6c38da6e;hp=0ecb8e4d974176318ce34814932a689fa9288d71;hpb=c487295c75094be3858b76b23fc9863ec9d46b59;p=chaz%2Fopenbox diff --git a/otk/renderstyle.hh b/otk/renderstyle.hh index 0ecb8e4d..2d2c3250 100644 --- a/otk/renderstyle.hh +++ b/otk/renderstyle.hh @@ -3,11 +3,19 @@ #define __renderstyle_hh #include "rendertexture.hh" +#include "rendercolor.hh" +#include "font.hh" #include namespace otk { +struct PixmapMask { + Pixmap mask; + unsigned int w, h; + PixmapMask() { mask = None; w = h = 0; } +}; + class RenderStyle { public: enum TextJustify { @@ -19,12 +27,18 @@ public: private: int _screen; std::string _file; + + RenderColor *_root_color; - RenderColor *_text_focus_color; - RenderColor *_text_unfocus_color; + RenderColor *_text_color_focus; + RenderColor *_text_color_unfocus; + + RenderColor *_button_color_focus; + RenderColor *_button_color_unfocus; RenderColor *_frame_border_color; - int _frame_border_wirth; + int _frame_border_width; + RenderColor *_client_border_color_focus; RenderColor *_client_border_color_unfocus; int _client_border_width; @@ -49,6 +63,11 @@ private: Font *_label_font; TextJustify _label_justify; + PixmapMask *_max_mask; + PixmapMask *_icon_mask; + PixmapMask *_alldesk_mask; + PixmapMask *_close_mask; + int _handle_width; int _bevel_width; @@ -56,11 +75,20 @@ public: RenderStyle(int screen, const std::string &stylefile); virtual ~RenderStyle(); + inline int screen() const { return _screen; } + + inline RenderColor *rootColor() const { return _root_color; } + inline RenderColor *textFocusColor() const { return _text_color_focus; } inline RenderColor *textUnfocusColor() const { return _text_color_unfocus; } + inline RenderColor *buttonFocusColor() const { return _button_color_focus; } + inline RenderColor *buttonUnfocusColor() const + { return _button_color_unfocus; } + inline RenderColor *frameBorderColor() const { return _frame_border_color; } - inline int frameBorderWidth() const { return _frame_border_wirth; } + inline int frameBorderWidth() const { return _frame_border_width; } + inline RenderColor *clientBorderFocusColor() const { return _client_border_color_focus; } inline RenderColor *clientBorderUnfocusColor() const @@ -75,8 +103,9 @@ public: 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 *handleFocusBackground() const { return _handle_focus; } + inline RenderTexture *handleUnfocusBackground() const + { return _handle_unfocus; } inline RenderTexture *buttonUnpressFocusBackground() const { return _button_unpress_focus; } @@ -84,15 +113,20 @@ public: { return _button_unpress_unfocus; } inline RenderTexture *buttonPressFocusBackground() const { return _button_press_focus; } - inline RenderTexture *buttonPressUnfocusBackgrounf() const + inline RenderTexture *buttonPressUnfocusBackground() const { return _button_press_unfocus; } - inline RenderTexture *gripdFocusBackground() const { return _grip_focus; } + inline RenderTexture *gripFocusBackground() 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 PixmapMask *maximizeMask() const { return _max_mask; } + inline PixmapMask *iconifyMask() const { return _icon_mask; } + inline PixmapMask *alldesktopsMask() const { return _alldesk_mask; } + inline PixmapMask *closeMask() const { return _close_mask; } + inline int handleWidth() const { return _handle_width; } inline int bevelWidth() const { return _bevel_width; } };