? po/.intltool-merge-cache
? po/stamp-it
? src/.prefs.c.swp
? src/libmetacity-private.la
? src/libmetacity_private_la-gradient.lo
? src/libmetacity_private_la-preview-widget.lo
? src/libmetacity_private_la-theme-parser.lo
? src/libmetacity_private_la-theme.lo
? src/libmetacity_private_la-util.lo
? src/themes/Atlanta/.metacity-theme-1.xml.swp
? src/tools/.deps
? src/tools/.libs
? src/wm-tester/.deps
? src/wm-tester/.libs
Index: src/theme-parser.c
===================================================================
RCS file: /cvs/gnome/metacity/src/theme-parser.c,v
retrieving revision 1.21
diff -u -p -r1.21 theme-parser.c
--- src/theme-parser.c	8 Aug 2005 21:31:31 -0000	1.21
+++ src/theme-parser.c	16 Feb 2006 02:19:07 -0000
@@ -449,33 +449,45 @@ static gboolean
 parse_positive_integer (const char          *str,
                         int                 *val,
                         GMarkupParseContext *context,
+                        MetaTheme           *theme,
                         GError             **error)
 {
   char *end;
   long l;
+  int lint; 
 
   *val = 0;
   
   end = NULL;
   
-  l = strtol (str, &end, 10);
-
-  if (end == NULL || end == str)
+  /* Is str a constant? */
+  if (meta_theme_lookup_int_constant(theme, str, &lint))
     {
-      set_error (error, context, G_MARKUP_ERROR,
-                 G_MARKUP_ERROR_PARSE,
-                 _("Could not parse \"%s\" as an integer"),
-                 str);
-      return FALSE;
+      /* Yes. */
+      l = lint;
     }
-
-  if (*end != '\0')
+  else
     {
-      set_error (error, context, G_MARKUP_ERROR,
-                 G_MARKUP_ERROR_PARSE,
-                 _("Did not understand trailing characters \"%s\" in string \"%s\""),
-                 end, str);
-      return FALSE;
+      /* No. Let's try parsing it instead. */
+      l = strtol (str, &end, 10);
+      
+      if (end == NULL || end == str)
+        {
+          set_error (error, context, G_MARKUP_ERROR,
+                     G_MARKUP_ERROR_PARSE,
+                     _("Could not parse \"%s\" as an integer"),
+                     str);
+          return FALSE;
+        }
+
+      if (*end != '\0')
+        {
+          set_error (error, context, G_MARKUP_ERROR,
+                     G_MARKUP_ERROR_PARSE,
+                     _("Did not understand trailing characters \"%s\" in string \"%s\""),
+                     end, str);
+          return FALSE;
+        }
     }
 
   if (l < 0)
@@ -757,7 +769,7 @@ parse_toplevel_element (GMarkupParseCont
       else
         {
           ival = 0;
-          if (!parse_positive_integer (value, &ival, context, error))
+          if (!parse_positive_integer (value, &ival, context, info->theme, error))
             return;
 
           if (!meta_theme_define_int_constant (info->theme,
@@ -1291,7 +1303,7 @@ parse_distance (GMarkupParseContext  *co
     }
 
   val = 0;
-  if (!parse_positive_integer (value, &val, context, error))
+  if (!parse_positive_integer (value, &val, context, info->theme, error))
     return;
 
   g_assert (val >= 0); /* yeah, "non-negative" not "positive" get over it */
@@ -1469,19 +1481,19 @@ parse_border (GMarkupParseContext  *cont
     }
 
   top_val = 0;
-  if (!parse_positive_integer (top, &top_val, context, error))
+  if (!parse_positive_integer (top, &top_val, context, info->theme, error))
     return;
 
   bottom_val = 0;
-  if (!parse_positive_integer (bottom, &bottom_val, context, error))
+  if (!parse_positive_integer (bottom, &bottom_val, context, info->theme, error))
     return;
 
   left_val = 0;
-  if (!parse_positive_integer (left, &left_val, context, error))
+  if (!parse_positive_integer (left, &left_val, context, info->theme, error))
     return;
 
   right_val = 0;
-  if (!parse_positive_integer (right, &right_val, context, error))
+  if (!parse_positive_integer (right, &right_val, context, info->theme, error))
     return;
   
   g_assert (info->layout);
@@ -1698,17 +1710,17 @@ parse_draw_op_element (GMarkupParseConte
       
       dash_on_val = 0;
       if (dash_on_length &&
-          !parse_positive_integer (dash_on_length, &dash_on_val, context, error))
+          !parse_positive_integer (dash_on_length, &dash_on_val, context, info->theme, error))
         return;
 
       dash_off_val = 0;
       if (dash_off_length &&
-          !parse_positive_integer (dash_off_length, &dash_off_val, context, error))
+          !parse_positive_integer (dash_off_length, &dash_off_val, context, info->theme, error))
         return;
 
       width_val = 0;
       if (width &&
-          !parse_positive_integer (width, &width_val, context, error))
+          !parse_positive_integer (width, &width_val, context, info->theme, error))
         return;
 
       /* Check last so we don't have to free it when other
Index: src/themes/Atlanta/metacity-theme-1.xml
===================================================================
RCS file: /cvs/gnome/metacity/src/themes/Atlanta/metacity-theme-1.xml,v
retrieving revision 1.12
diff -u -p -r1.12 metacity-theme-1.xml
--- src/themes/Atlanta/metacity-theme-1.xml	31 Jan 2005 09:54:34 -0000	1.12
+++ src/themes/Atlanta/metacity-theme-1.xml	16 Feb 2006 02:19:08 -0000
@@ -89,7 +89,7 @@
         y1="height - ButtonIPad - ThickLineWidth + 1"
         x2="width - ButtonIPad"
         y2="height - ButtonIPad - ThickLineWidth + 1"
-        width="3"/> <!-- FIXME allow a constant here -->
+        width="ThickLineWidth"/>
 </draw_ops>
 
 <draw_ops name="minimize_button_pressed">
Index: src/themes/Bright/metacity-theme-1.xml
===================================================================
RCS file: /cvs/gnome/metacity/src/themes/Bright/metacity-theme-1.xml,v
retrieving revision 1.4
diff -u -p -r1.4 metacity-theme-1.xml
--- src/themes/Bright/metacity-theme-1.xml	31 Jan 2005 09:54:34 -0000	1.4
+++ src/themes/Bright/metacity-theme-1.xml	16 Feb 2006 02:19:08 -0000
@@ -110,7 +110,7 @@
         y1="height - ButtonIPad - ThickLineWidth + 1"
         x2="width - ButtonIPad-1"
         y2="height - ButtonIPad - ThickLineWidth + 1"
-        width="2"/> <!-- FIXME allow a constant here -->
+        width="ThickLineWidth"/>
 </draw_ops>
 
 <draw_ops name="minimize_button_normal">
Index: src/themes/Metabox/metacity-theme-1.xml
===================================================================
RCS file: /cvs/gnome/metacity/src/themes/Metabox/metacity-theme-1.xml,v
retrieving revision 1.2
diff -u -p -r1.2 metacity-theme-1.xml
--- src/themes/Metabox/metacity-theme-1.xml	9 Jun 2003 18:56:28 -0000	1.2
+++ src/themes/Metabox/metacity-theme-1.xml	16 Feb 2006 02:19:09 -0000
@@ -144,7 +144,7 @@
 			y1="height - ButtonIPad - ThickLineWidth + 1"
 			x2="width - ButtonIPad"
 			y2="height - ButtonIPad - ThickLineWidth + 1"
-			width="3"/> <!-- FIXME allow a constant here -->
+			width="ThickLineWidth"/>
 	</draw_ops>
 
 	<draw_ops name="minimize_button_pressed">
@@ -164,7 +164,7 @@
 			y1="height - ButtonIPad - ThickLineWidth + 1"
 			x2="width - ButtonIPad"
 			y2="height - ButtonIPad - ThickLineWidth + 1"
-			width="3"/> <!-- FIXME allow a constant here -->
+			width="ThickLineWidth"/>
 	</draw_ops>
 
 	<draw_ops name="maximize_button">
