]> Dogcows Code - chaz/openbox/blobdiff - openbox/config.h
use simple pattern matching for per-app settings. all rules that match are applied...
[chaz/openbox] / openbox / config.h
index 849d5a228804cb77656c0ddcb35e7e71f33ce7ab..6a064fffa14e0691dccd5a4ec606ab4b234c3b32 100644 (file)
@@ -2,7 +2,7 @@
 
    config.h for the Openbox window manager
    Copyright (c) 2006        Mikael Magnusson
-   Copyright (c) 2003        Ben Jansens
+   Copyright (c) 2003-2007   Dana Jansens
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 #include "misc.h"
 #include "stacking.h"
 #include "place.h"
+#include "geom.h"
+#include "render/render.h"
 
 #include <glib.h>
 
 struct _ObParseInst;
 
+typedef struct _ObAppSettings ObAppSettings;
+
+struct _ObAppSettings
+{
+    GPatternSpec *class;
+    GPatternSpec *name;
+    GPatternSpec *role;
+
+    Point position;
+    gboolean center_x;
+    gboolean center_y;
+    gboolean pos_given;
+
+    guint desktop;
+    gint shade;
+    gint decor;
+    gint focus;
+    gint monitor;
+    gint iconic;
+    gint skip_pager;
+    gint skip_taskbar;
+    gint max_horz;
+    gint max_vert;
+    gint fullscreen;
+
+    gint layer;
+};
+
 /*! Should new windows be focused */
 extern gboolean config_focus_new;
 /*! Focus windows when the mouse enters them */
@@ -45,9 +75,6 @@ extern ObPlacePolicy config_place_policy;
 /*! When true windows' contents are refreshed while they are resized; otherwise
   they are not updated until the resize is complete */
 extern gboolean config_resize_redraw;
-/*! Divide windows in 4 or 9 areas when doing a resize. The middle will be move
-  when selecting 9 corners */
-extern gboolean config_resize_four_corners;
 /*! show move/resize popups? 0 = no, 1 = always, 2 = only
   resizing !1 increments */
 extern gint config_resize_popup_show;
@@ -86,17 +113,26 @@ extern gchar *config_theme;
 
 /*! Show the one-pixel border after toggleDecor */
 extern gboolean config_theme_keepborder;
-/*! Hide window frame buttons that the window doesn't allow */
-extern gboolean config_theme_hidedisabled;
 /*! Titlebar button layout */
 extern gchar *config_title_layout;
-/*! Append a unique number to windows with same titles */
-extern gboolean config_title_number;
+/*! Animate windows iconifying and restoring */
+extern gboolean config_animate_iconify;
+
+/*! The font for the active window's title */
+extern RrFont *config_font_activewindow;
+/*! The font for inactive windows' titles */
+extern RrFont *config_font_inactivewindow;
+/*! The font for menu titles */
+extern RrFont *config_font_menutitle;
+/*! The font for menu items */
+extern RrFont *config_font_menuitem;
+/*! The font for on-screen-displays/popups */
+extern RrFont *config_font_osd;
 
 /*! The number of desktops */
 extern gint config_desktops_num;
 /*! Desktop to start on, put 5 to start in the center of a 3x3 grid */
-extern gint config_screen_firstdesk;
+extern guint config_screen_firstdesk;
 /*! Names for the desktops */
 extern GSList *config_desktops_names;
 
@@ -115,13 +151,7 @@ extern gint config_mouse_dclicktime;
 extern gint config_resist_win;
 /*! Number of pixels to resist while crossing a screen's edge */
 extern gint config_resist_edge;
-/*! Should windows resist edges at layers below */
-extern gboolean config_resist_layers_below;
 
-/*! Warp near edge on menu? */
-extern gboolean config_menu_warppointer;
-/*! make menus jump around a lot */
-extern gboolean config_menu_xorstyle;
 /*! delay for hiding menu when opening */
 extern guint    config_menu_hide_delay;
 /*! Center menus vertically about the parent entry */
@@ -138,4 +168,12 @@ extern GSList *config_per_app_settings;
 void config_startup(struct _ObParseInst *i);
 void config_shutdown();
 
+/*! Create an ObAppSettings structure with the default values */
+ObAppSettings* config_create_app_settings();
+/*! Copies any settings in src to dest, if they are their default value in
+  src. */
+void config_app_settings_copy_non_defaults(const ObAppSettings *src,
+                                           ObAppSettings *dest);
+
+
 #endif
This page took 0.026652 seconds and 4 git commands to generate.