otk/renderstyle.hh (raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*- #ifndef __renderstyle_hh #define __renderstyle_hh #include "rendertexture.hh" #include "rendercolor.hh" #include "font.hh" #include <string> namespace otk { struct PixmapMask { Pixmap mask; unsigned int w, h; PixmapMask() { mask = None; w = h = 0; } }; class RenderStyle { public: enum TextJustify { LeftJustify, RightJustify, CenterJustify }; private: int _screen; std::string _file; RenderColor *_text_color_focus; RenderColor *_text_color_unfocus; RenderColor *_button_color_focus; RenderColor *_button_color_unfocus; RenderColor *_frame_border_color; int _frame_border_width; 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; PixmapMask *_max_mask; PixmapMask *_icon_mask; PixmapMask *_alldesk_mask; PixmapMask *_close_mask; int _handle_width; int _bevel_width; public: RenderStyle(int screen, const std::string &stylefile); virtual ~RenderStyle(); inline int screen() const { return _screen; } 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_width; } 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 { return _handle_focus; } inline RenderTexture *handleUnfocusBackground() const { return _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 *buttonPressUnfocusBackground() const { return _button_press_unfocus; } 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; } }; } #endif // __rendertexture_hh |