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)
{
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);
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 */
if (inst) {
if (inst == definst) definst = NULL;
g_free(inst->pseudo_colors);
+ g_hash_table_destroy(inst->color_hash);
}
}
{
return (inst ? inst : definst)->pseudo_colors;
}
+
+GHashTable* RrColorHash (const RrInstance *inst)
+{
+ return (inst ? inst : definst)->color_hash;
+}