namespace otk {
+struct PixmapMask {
+ Pixmap mask;
+ unsigned int w, h;
+ PixmapMask() { mask = None; w = h = 0; }
+};
+
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 };
- struct PixmapMask {
- Pixmap mask;
- unsigned int w, h;
- };
-
// private:
- otk::BImageControl *image_control;
+ BImageControl *image_control;
- otk::BColor
+ BColor
l_text_focus, l_text_unfocus,
b_pic_focus, b_pic_unfocus;
- otk::BColor border_color;
+ BColor border_color;
- otk::BFont *font;
+ BFont *font;
- otk::BTexture
+ BTexture
f_focus, f_unfocus,
t_focus, t_unfocus,
l_focus, l_unfocus,
h_focus, h_unfocus,
b_focus, b_unfocus,
- b_pressed, b_pressed_focus, b_pressed_unfocus,
+ b_pressed_focus, b_pressed_unfocus,
g_focus, g_unfocus;
PixmapMask close_button, max_button, icon_button, stick_button;
TextJustify justify;
+ BulletType bullet_type;
unsigned int handle_width, bevel_width, frame_width, border_width;
public:
Style();
- Style(unsigned int);
- Style(unsigned int, otk::BImageControl *);
+ Style(BImageControl *);
~Style();
- void doJustify(const std::string &text, int &start_pos,
- unsigned int max_length, unsigned int modifier) const;
-
void readDatabaseMask(const std::string &rname,
PixmapMask &pixmapMask,
- const otk::Configuration &style);
+ const Configuration &style);
- otk::BTexture readDatabaseTexture(const std::string &rname,
- const std::string &default_color,
- const otk::Configuration &style,
- bool allowNoTexture = false);
+ BTexture readDatabaseTexture(const std::string &rname,
+ 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);
+
+ BFont *readDatabaseFont(const std::string &rbasename,
+ const Configuration &style);
+
+ void load(const Configuration &style);
+
+ inline PixmapMask *getCloseButtonMask(void) { return &close_button; }
+ inline PixmapMask *getMaximizeButtonMask(void) { return &max_button; }
+ inline PixmapMask *getIconifyButtonMask(void) { return &icon_button; }
+ inline PixmapMask *getStickyButtonMask(void) { return &stick_button; }
+
+ inline BColor *getTextFocus(void) { return &l_text_focus; }
+ inline BColor *getTextUnfocus(void) { return &l_text_unfocus; }
- otk::BColor readDatabaseColor(const std::string &rname,
- const std::string &default_color,
- const otk::Configuration &style);
+ inline BColor *getButtonPicFocus(void) { return &b_pic_focus; }
+ inline BColor *getButtonPicUnfocus(void) { return &b_pic_unfocus; }
- otk::BFont *readDatabaseFont(const std::string &rbasename,
- const otk::Configuration &style);
+ inline BTexture *getTitleFocus(void) { return &t_focus; }
+ inline BTexture *getTitleUnfocus(void) { return &t_unfocus; }
- void load(otk::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_focus; }
+ 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 void setImageControl(otk::BImageControl *c) { image_control = c; }
- inline void setScreenNumber(unsigned int scr) { screen_number = scr; }
+ inline const BFont *getFont() const { return font; }
+
+ inline void setShadowFonts(bool fonts) { shadow_fonts = fonts; }
+ inline bool hasShadowFonts(void) const { return shadow_fonts; }
+
+ inline void setAAFonts(bool fonts) { aa_fonts = fonts; }
+ 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 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()->screen();
+ }
+ inline unsigned int getScreen(void) { return screen_number; }
// XXX add inline accessors for the rest of the bummy
};