]> Dogcows Code - chaz/openbox/blobdiff - render/instance.c
track the maximum margin of menu items. use this to keep icons in the menus inside...
[chaz/openbox] / render / instance.c
index bd2b537e371268a9d7490b030aa75b3f3fe8eee2..f037a024c85156b1e1d01e5d685f56710ee11133 100644 (file)
@@ -3,8 +3,8 @@
 
 static RrInstance *definst = NULL;
 
-void RrTrueColorSetup (RrInstance *inst);
-void RrPseudoColorSetup (RrInstance *inst);
+static void RrTrueColorSetup (RrInstance *inst);
+static void RrPseudoColorSetup (RrInstance *inst);
 
 RrInstance* RrInstanceNew (Display *display, gint screen)
 {
@@ -18,6 +18,8 @@ RrInstance* RrInstanceNew (Display *display, gint screen)
 
     definst->pseudo_colors = NULL;
 
+    definst->color_hash = g_hash_table_new(g_int_hash, g_int_equal);
+
     switch (definst->visual->class) {
     case TrueColor:
         RrTrueColorSetup(definst);
@@ -72,7 +74,6 @@ void RrPseudoColorSetup (RrInstance *inst)
     int tr, tg, tb, n, r, g, b, i, incolors, ii;
     unsigned long dev;
     int cpc, _ncolors;
-    g_message("Initializing PseudoColor RenderControl\n");
 
     /* determine the number of colors and the bits-per-color */
     inst->pseudo_bpc = 2; /* XXX THIS SHOULD BE A USER OPTION */
@@ -158,6 +159,7 @@ void RrInstanceFree (RrInstance *inst)
     if (inst) {
         if (inst == definst) definst = NULL;
         g_free(inst->pseudo_colors);
+        g_hash_table_destroy(inst->color_hash);
     }
 }
 
@@ -245,3 +247,8 @@ XColor *RrPseudoColors (const RrInstance *inst)
 {
     return (inst ? inst : definst)->pseudo_colors;
 }
+
+GHashTable* RrColorHash (const RrInstance *inst)
+{
+    return (inst ? inst : definst)->color_hash;
+}
This page took 0.021726 seconds and 4 git commands to generate.