X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2FScreen.hh;h=4de9daa2da45471c01c7b1758345165ebdfe7aef;hb=8e34bfcfcbd7bfc9913f40a23016f30c63803611;hp=72e7dc0aca91f229a689297a0587e843279b5d11;hpb=eb136b9629b61d43c00c3cf105ff170fb8c75ad1;p=chaz%2Fopenbox diff --git a/src/Screen.hh b/src/Screen.hh index 72e7dc0a..4de9daa2 100644 --- a/src/Screen.hh +++ b/src/Screen.hh @@ -26,7 +26,6 @@ extern "C" { #include -#include #ifdef TIME_WITH_SYS_TIME # include @@ -54,7 +53,9 @@ extern "C" { #include "Workspace.hh" #include "Workspacemenu.hh" #include "blackbox.hh" + class Slit; // forward reference +class BFont; class XAtom; enum TextJustify { LeftJustify = 1, RightJustify, CenterJustify }; @@ -65,37 +66,31 @@ struct WindowStyle { BTexture t_focus, t_unfocus, l_focus, l_unfocus, h_focus, h_unfocus, b_focus, b_unfocus, b_pressed, g_focus, g_unfocus; - XFontSet fontset; - XFontSetExtents *fontset_extents; - XFontStruct *font; + BFont *font; TextJustify justify; - int doJustify(const char *text, int &start_pos, unsigned int max_length, - unsigned int modifier, bool multibyte) const; + void doJustify(const std::string &text, int &start_pos, + unsigned int max_length, unsigned int modifier) const; }; struct ToolbarStyle { BColor l_text, w_text, c_text, b_pic; BTexture toolbar, label, window, button, pressed, clock; - XFontSet fontset; - XFontSetExtents *fontset_extents; - XFontStruct *font; + BFont *font; TextJustify justify; - int doJustify(const char *text, int &start_pos, unsigned int max_length, - unsigned int modifier, bool multibyte) const; + void doJustify(const std::string &text, int &start_pos, + unsigned int max_length, unsigned int modifier) const; }; struct MenuStyle { BColor t_text, f_text, h_text, d_text; BTexture title, frame, hilite; - XFontSet t_fontset, f_fontset; - XFontSetExtents *t_fontset_extents, *f_fontset_extents; - XFontStruct *t_font, *f_font; + BFont *t_font, *f_font; TextJustify t_justify, f_justify; int bullet, bullet_pos; @@ -154,7 +149,7 @@ private: bool sloppy_focus, auto_raise, auto_edge_balance, ordered_dither, opaque_move, full_max, focus_new, focus_last, click_raise, - hide_toolbar, window_to_window_snap, window_corner_snap; + hide_toolbar, window_to_window_snap, window_corner_snap, aa_fonts; BColor border_color; unsigned int workspaces; @@ -180,13 +175,12 @@ private: BTexture readDatabaseTexture(const std::string &rname, const std::string &default_color, - Configuration &style); + const Configuration &style); BColor readDatabaseColor(const std::string &rname, const std::string &default_color, - Configuration &style); - XFontSet readDatabaseFontSet(const std::string &rname, Configuration &style); - XFontStruct *readDatabaseFont(const std::string &rname, Configuration &style); - XFontSet createFontSet(const std::string &fontname); + const Configuration &style); + BFont *readDatabaseFont(const std::string &rbasename, + const Configuration &style); void InitMenu(void); void LoadStyle(void); @@ -210,6 +204,7 @@ public: inline bool doAutoRaise(void) const { return resource.auto_raise; } inline bool doClickRaise(void) const { return resource.click_raise; } inline bool isScreenManaged(void) const { return managed; } + inline bool doAAFonts(void) const { return resource.aa_fonts; } inline bool doImageDither(void) const { return image_control->doDither(); } inline bool doOrderedDither(void) const { return resource.ordered_dither; } inline bool doOpaqueMove(void) const { return resource.opaque_move; } @@ -273,6 +268,7 @@ public: void saveColPlacementDirection(int d); void saveEdgeSnapThreshold(int t); void saveImageDither(bool d); + void saveAAFonts(bool f); void saveOpaqueMove(bool o); void saveFullMax(bool f); void saveFocusNew(bool f); @@ -337,14 +333,13 @@ public: void save_rc(void); void reconfigure(void); void toggleFocusModel(FocusModel model); - void updateFocusModel(void); void rereadMenu(void); void shutdown(void); void showPosition(int x, int y); void showGeometry(unsigned int gx, unsigned int gy); void hideGeometry(void); - void buttonPressEvent(XButtonEvent *xbutton); + void buttonPressEvent(const XButtonEvent *xbutton); void updateNetizenCurrentWorkspace(void); void updateNetizenWorkspaceCount(void);