X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Fgtksheet%2Fgtksheet.c;h=b43f6c47af5cdc03712f4a2f6cdd0dbd0c56db3d;hb=d6e7bc1cc6bdab22fe4e51df5cfe759628936e31;hp=ec8e3840d6d0cc016954bf75060b1715534b216d;hpb=b5a632fd4b0ea7139fc5423bb3ebebaf3e6d539e;p=pspp diff --git a/lib/gtksheet/gtksheet.c b/lib/gtksheet/gtksheet.c index ec8e3840d6..b43f6c47af 100644 --- a/lib/gtksheet/gtksheet.c +++ b/lib/gtksheet/gtksheet.c @@ -1353,40 +1353,6 @@ gtk_sheet_grid_visible (GtkSheet *sheet) return sheet->show_grid; } -void -gtk_sheet_set_background (GtkSheet *sheet, GdkColor *color) -{ - g_return_if_fail (sheet != NULL); - g_return_if_fail (GTK_IS_SHEET (sheet)); - - if (!color) - { - gdk_color_parse ("white", &sheet->bg_color); - gdk_colormap_alloc_color (gdk_colormap_get_system (), &sheet->bg_color, FALSE, TRUE); - } - else - sheet->bg_color = *color; - - gtk_sheet_range_draw (sheet, NULL); -} - -void -gtk_sheet_set_grid (GtkSheet *sheet, GdkColor *color) -{ - g_return_if_fail (sheet != NULL); - g_return_if_fail (GTK_IS_SHEET (sheet)); - - if (!color) - { - gdk_color_parse ("black", &sheet->grid_color); - gdk_colormap_alloc_color (gdk_colormap_get_system (), &sheet->grid_color, FALSE, TRUE); - } - else - sheet->grid_color = *color; - - gtk_sheet_range_draw (sheet, NULL); -} - guint gtk_sheet_get_columns_count (GtkSheet *sheet) { @@ -2038,6 +2004,8 @@ gtk_sheet_realize (GtkWidget * widget) GTK_WIDGET_SET_FLAGS (widget, GTK_REALIZED); + colormap = gtk_widget_get_colormap (widget); + attributes.window_type = GDK_WINDOW_CHILD; attributes.x = widget->allocation.x; attributes.y = widget->allocation.y; @@ -2046,7 +2014,7 @@ gtk_sheet_realize (GtkWidget * widget) attributes.wclass = GDK_INPUT_OUTPUT; attributes.visual = gtk_widget_get_visual (widget); - attributes.colormap = gtk_widget_get_colormap (widget); + attributes.colormap = colormap; attributes.event_mask = gtk_widget_get_events (widget); attributes.event_mask |= (GDK_EXPOSURE_MASK | @@ -2071,11 +2039,11 @@ gtk_sheet_realize (GtkWidget * widget) gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL); - gdk_color_parse ("white", &sheet->bg_color); - gdk_colormap_alloc_color (gdk_colormap_get_system (), &sheet->bg_color, FALSE, + gdk_color_parse ("white", &sheet->color[BG_COLOR]); + gdk_colormap_alloc_color (colormap, &sheet->color[BG_COLOR], FALSE, TRUE); - gdk_color_parse ("gray", &sheet->grid_color); - gdk_colormap_alloc_color (gdk_colormap_get_system (), &sheet->grid_color, FALSE, + gdk_color_parse ("gray", &sheet->color[GRID_COLOR]); + gdk_colormap_alloc_color (colormap, &sheet->color[GRID_COLOR], FALSE, TRUE); attributes.x = 0; @@ -2128,7 +2096,7 @@ gtk_sheet_realize (GtkWidget * widget) sheet->fg_gc = gdk_gc_new (widget->window); sheet->bg_gc = gdk_gc_new (widget->window); - colormap = gtk_widget_get_colormap (widget); + gdk_gc_get_values (sheet->fg_gc, &auxvalues); @@ -2211,7 +2179,7 @@ global_button_clicked (GtkWidget *widget, gpointer data) static void -gtk_sheet_unrealize (GtkWidget * widget) +gtk_sheet_unrealize (GtkWidget *widget) { GtkSheet *sheet; @@ -2223,11 +2191,8 @@ gtk_sheet_unrealize (GtkWidget * widget) gdk_cursor_unref (sheet->cursor_drag); sheet->cursor_drag = NULL; - gdk_colormap_free_colors (gdk_colormap_get_system (), - &sheet->bg_color, 1); - - gdk_colormap_free_colors (gdk_colormap_get_system (), - &sheet->grid_color, 1); + gdk_colormap_free_colors (gtk_widget_get_colormap (widget), + sheet->color, n_COLORS); g_object_unref (sheet->xor_gc); g_object_unref (sheet->fg_gc); @@ -2370,7 +2335,7 @@ gtk_sheet_cell_draw_default (GtkSheet *sheet, gint row, gint col) if (sheet->show_grid) { - gdk_gc_set_foreground (sheet->bg_gc, &sheet->grid_color); + gdk_gc_set_foreground (sheet->bg_gc, &sheet->color[GRID_COLOR]); gdk_draw_rectangle (sheet->pixmap, sheet->bg_gc, @@ -3785,7 +3750,7 @@ gtk_sheet_expose (GtkWidget * widget, range.coli = COLUMN_FROM_XPIXEL (sheet, event->area.x + event->area.width); - g_print ("Redrawing rows %d--%d, columns %d--%d\n", + g_print ("Redrawing rows %ld--%ld, columns %ld--%ld\n", range.row0, range.rowi, range.col0, range.coli); @@ -6154,12 +6119,10 @@ init_attributes (const GtkSheet *sheet, gint col, GtkSheetCellAttr *attributes) { /* DEFAULT VALUES */ attributes->foreground = GTK_WIDGET (sheet)->style->black; - attributes->background = sheet->bg_color; + attributes->background = sheet->color[BG_COLOR]; if (!GTK_WIDGET_REALIZED (GTK_WIDGET (sheet))) { - GdkColormap *colormap; - colormap = gdk_colormap_get_system (); - attributes->background = sheet->bg_color; + attributes->background = sheet->color[BG_COLOR]; } attributes->justification = g_sheet_column_get_justification (sheet->column_geometry, col); attributes->border.width = 0;