X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=otk%2Fstyle.hh;h=4128d93ef7f549c1dec3d3c18ccd611810394d92;hb=d55ede56a032ee4edcc2de11fc52a4d552c1305c;hp=77993a8e53c92ea6dca7e2e4f215aa4b05eae107;hpb=3762f3c88f4d84697df37c0a3bdc733e7bee6e45;p=chaz%2Fopenbox diff --git a/otk/style.hh b/otk/style.hh index 77993a8e..4128d93e 100644 --- a/otk/style.hh +++ b/otk/style.hh @@ -16,6 +16,10 @@ namespace otk { class Style { public: + enum Type { ButtonFocus, ButtonUnfocus, TitleFocus, TitleUnfocus, + LabelFocus, LabelUnfocus, HandleFocus, HandleUnfocus, + GripFocus, GripUnfocus }; + enum TextJustify { LeftJustify = 1, RightJustify, CenterJustify }; enum BulletType { RoundBullet = 1, TriangleBullet, SquareBullet, NoBullet }; @@ -47,6 +51,7 @@ public: PixmapMask close_button, max_button, icon_button, stick_button; TextJustify justify; + BulletType bullet_type; unsigned int handle_width, bevel_width, frame_width, border_width; @@ -57,8 +62,7 @@ public: public: Style(); - Style(unsigned int); - Style(unsigned int, BImageControl *); + Style(BImageControl *); ~Style(); void doJustify(const std::string &text, int &start_pos, @@ -69,30 +73,71 @@ public: const Configuration &style); BTexture readDatabaseTexture(const std::string &rname, - const std::string &default_color, - const Configuration &style, - bool allowNoTexture = false); + const std::string &default_color, + const Configuration &style, + bool allowNoTexture = false); BColor readDatabaseColor(const std::string &rname, - const std::string &default_color, - const Configuration &style); + const std::string &default_color, + const Configuration &style); BFont *readDatabaseFont(const std::string &rbasename, - const Configuration &style); + const Configuration &style); + + void load(const Configuration &style); + + inline BColor *getBorderColor(void) { return &border_color; } + + inline BColor *getTextFocus(void) { return &l_text_focus; } + inline BColor *getTextUnfocus(void) { return &l_text_unfocus; } + + inline BColor *getButtonPicFocus(void) { return &b_pic_focus; } + inline BColor *getButtonPicUnfocus(void) { return &b_pic_unfocus; } + + inline BTexture *getFrameFocus(void) { return &f_focus; } + inline BTexture *getFrameUnfocus(void) { return &f_unfocus; } + + inline BTexture *getTitleFocus(void) { return &t_focus; } + inline BTexture *getTitleUnfocus(void) { return &t_unfocus; } - void load(Configuration &); + inline BTexture *getLabelFocus(void) { return &l_focus; } + inline BTexture *getLabelUnfocus(void) { return &l_unfocus; } + + inline BTexture *getHandleFocus(void) { return &h_focus; } + inline BTexture *getHandleUnfocus(void) { return &h_unfocus; } + + inline BTexture *getButtonFocus(void) { return &b_focus; } + inline BTexture *getButtonUnfocus(void) { return &b_unfocus; } + + inline BTexture *getButtonPressedFocus(void) + { return &b_pressed; } + inline BTexture *getButtonPressedUnfocus(void) + { return &b_pressed_unfocus; } + + inline BTexture *getGripFocus(void) { return &g_focus; } + inline BTexture *getGripUnfocus(void) { return &g_unfocus; } inline unsigned int getHandleWidth(void) const { return handle_width; } inline unsigned int getBevelWidth(void) const { return bevel_width; } inline unsigned int getFrameWidth(void) const { return frame_width; } inline unsigned int getBorderWidth(void) const { return border_width; } - inline const BFont *getFont() const { return font; } + inline const BFont &getFont() const { return *font; } + inline bool hasAAFonts(void) const { return aa_fonts; } + + inline TextJustify textJustify(void) { return justify; } + inline BulletType bulletType(void) { return bullet_type; } inline const BColor &getBorderColor() const { return border_color; } - inline void setImageControl(BImageControl *c) { image_control = c; } - inline void setScreenNumber(unsigned int scr) { screen_number = scr; } + inline const BTexture &getFrameFocus() const { return f_focus; } + inline const BTexture &getFrameUnfocus() const { return f_unfocus; } + + inline void setImageControl(BImageControl *c) { + image_control = c; + screen_number = c->getScreenInfo()->getScreenNumber(); + } + inline unsigned int getScreen(void) { return screen_number; } // XXX add inline accessors for the rest of the bummy };