]> Dogcows Code - chaz/openbox/blobdiff - src/Screen.hh
merged bitmap buttons
[chaz/openbox] / src / Screen.hh
index dee0a962cc4164f5b22c2939ff2c3b438efd95d4..9c1a185ce129280045636bd8f47add9eaee45220 100644 (file)
@@ -61,12 +61,19 @@ struct Strut;
 
 enum TextJustify { LeftJustify = 1, RightJustify, CenterJustify };
 
+struct PixmapMask {
+  Pixmap mask;
+  unsigned int w, h;
+};
+
 struct WindowStyle {
   BColor l_text_focus, l_text_unfocus, b_pic_focus,
     b_pic_unfocus;
   BTexture f_focus, f_unfocus, t_focus, t_unfocus, l_focus, l_unfocus,
     h_focus, h_unfocus, b_focus, b_unfocus, b_pressed, g_focus, g_unfocus;
 
+  PixmapMask close_button, max_button, icon_button, stick_button;
+
   BFont *font;
 
   TextJustify justify;
@@ -79,6 +86,8 @@ struct ToolbarStyle {
   BColor l_text, w_text, c_text, b_pic;
   BTexture toolbar, label, window, button, pressed, clock;
 
+  PixmapMask left_button, right_button; //these should probably be the same
+  
   BFont *font;
 
   TextJustify justify;
@@ -91,6 +100,8 @@ struct MenuStyle {
   BColor t_text, f_text, h_text, d_text;
   BTexture title, frame, hilite;
 
+  PixmapMask bullet_image, tick_image;
+  
   BFont *t_font, *f_font;
 
   TextJustify t_justify, f_justify;
@@ -163,6 +174,8 @@ private:
     unsigned int handle_width, bevel_width, frame_width, border_width,
       resize_zones;
 
+    unsigned int root_menu_button, workspace_menu_button;
+
 #ifdef    HAVE_STRFTIME
     std::string strftime_format;
 #else // !HAVE_STRFTIME
@@ -178,6 +191,9 @@ private:
 
   bool parseMenuFile(FILE *file, Rootmenu *menu);
 
+  void readDatabaseMask(const string &rname,
+                        PixmapMask &pixmapMask,
+                        const Configuration &style);
   BTexture readDatabaseTexture(const std::string &rname,
                                const std::string &default_color,
                                const Configuration &style);
@@ -231,6 +247,10 @@ public:
   inline bool doWorkspaceWarping(void) const
     { return resource.workspace_warping; }
   inline int rootScrollDirection(void) const { return resource.root_scroll; }
+  inline unsigned int rootMenuButton(void) const
+    { return resource.root_menu_button; }
+  inline unsigned int workspaceMenuButton(void) const
+    { return resource.workspace_menu_button; }
 
   inline const GC &getOpGC(void) const { return opGC; }
 
@@ -313,6 +333,8 @@ public:
   void saveAllowScrollLock(bool a);
   void saveWorkspaceWarping(bool w);
   void saveRootScrollDirection(int d);
+  void saveRootMenuButton(unsigned int b);
+  void saveWorkspaceMenuButton(unsigned int b);
   inline void iconUpdate(void) { iconmenu->update(); }
 
 #ifdef    HAVE_STRFTIME
This page took 0.021945 seconds and 4 git commands to generate.