diff options
author | Christopher James Lahey <clahey@ximian.com> | 2002-03-16 07:16:01 +0800 |
---|---|---|
committer | Chris Lahey <clahey@src.gnome.org> | 2002-03-16 07:16:01 +0800 |
commit | 88a322f15d8ce9c152cce75630b302b8b3ca1c08 (patch) | |
tree | 6aaa3c7ba15024c4f3e1fe1d47aea1c3f6746484 /widgets/table/e-cell-toggle.c | |
parent | f8f95421a6e00884da54c9da66d6c0b0edc00e29 (diff) | |
download | gsoc2013-evolution-88a322f15d8ce9c152cce75630b302b8b3ca1c08.tar.gz gsoc2013-evolution-88a322f15d8ce9c152cce75630b302b8b3ca1c08.tar.zst gsoc2013-evolution-88a322f15d8ce9c152cce75630b302b8b3ca1c08.zip |
Check for a style_set signal on all the contained GnomeCanvasItems.
2002-03-15 Christopher James Lahey <clahey@ximian.com>
* gal/widgets/e-canvas.c (e_canvas_style_set): Check for a
style_set signal on all the contained GnomeCanvasItems.
From gal/e-table/ChangeLog:
2002-03-15 Christopher James Lahey <clahey@ximian.com>
* e-cell-toggle.c: Clear the pixmap cache in e_cell_style_set.
* e-cell.c, e-cell.h (e_cell_style_set): Added this virtual
method.
* e-table-item.c, e-table-item.h: Call e_cell_style_set in out
style_set signal.
svn path=/trunk/; revision=16180
Diffstat (limited to 'widgets/table/e-cell-toggle.c')
-rw-r--r-- | widgets/table/e-cell-toggle.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/widgets/table/e-cell-toggle.c b/widgets/table/e-cell-toggle.c index a42d7dbd1a..0961b077ba 100644 --- a/widgets/table/e-cell-toggle.c +++ b/widgets/table/e-cell-toggle.c @@ -322,6 +322,21 @@ etog_max_width (ECellView *ecell_view, int model_col, int view_col) } static void +etog_style_set (ECellView *ecell_view, GtkStyle *previous_style) +{ + ECellToggle *toggle = E_CELL_TOGGLE (ecell_view->ecell); + ECellToggleView *toggle_view = (ECellToggleView *) ecell_view; + int i; + + for (i = 0; i < toggle->n_states * CACHE_SEQ_COUNT; i++) { + if (toggle_view->pixmap_cache[i]) { + gdk_pixmap_unref (toggle_view->pixmap_cache[i]); + toggle_view->pixmap_cache[i] = NULL; + } + } +} + +static void etog_destroy (GtkObject *object) { ECellToggle *etog = E_CELL_TOGGLE (object); @@ -353,6 +368,7 @@ e_cell_toggle_class_init (GtkObjectClass *object_class) ecc->event = etog_event; ecc->height = etog_height; ecc->max_width = etog_max_width; + ecc->style_set = etog_style_set; parent_class = gtk_type_class (PARENT_TYPE); } |