app/widgets/gimphistogramview.c destroy GdkGCs in GtkWidget::unrealize().
2003-11-10 Michael Natterer <mitch@gimp.org> * app/widgets/gimphistogramview.c * app/widgets/gimpnavigationpreview.c: destroy GdkGCs in GtkWidget::unrealize().
This commit is contained in:

committed by
Michael Natterer

parent
cf842d8761
commit
d213ff4ee2
@ -1,3 +1,9 @@
|
|||||||
|
2003-11-10 Michael Natterer <mitch@gimp.org>
|
||||||
|
|
||||||
|
* app/widgets/gimphistogramview.c
|
||||||
|
* app/widgets/gimpnavigationpreview.c: destroy GdkGCs in
|
||||||
|
GtkWidget::unrealize().
|
||||||
|
|
||||||
2003-11-10 Sven Neumann <sven@gimp.org>
|
2003-11-10 Sven Neumann <sven@gimp.org>
|
||||||
|
|
||||||
* app/display/gimpcanvas.[ch]
|
* app/display/gimpcanvas.[ch]
|
||||||
|
@ -48,7 +48,6 @@ enum
|
|||||||
|
|
||||||
static void gimp_histogram_view_class_init (GimpHistogramViewClass *klass);
|
static void gimp_histogram_view_class_init (GimpHistogramViewClass *klass);
|
||||||
static void gimp_histogram_view_init (GimpHistogramView *view);
|
static void gimp_histogram_view_init (GimpHistogramView *view);
|
||||||
static void gimp_histogram_view_finalize (GObject *object);
|
|
||||||
static void gimp_histogram_view_set_property (GObject *object,
|
static void gimp_histogram_view_set_property (GObject *object,
|
||||||
guint property_id,
|
guint property_id,
|
||||||
const GValue *value,
|
const GValue *value,
|
||||||
@ -57,6 +56,7 @@ static void gimp_histogram_view_get_property (GObject *object,
|
|||||||
guint property_id,
|
guint property_id,
|
||||||
GValue *value,
|
GValue *value,
|
||||||
GParamSpec *pspec);
|
GParamSpec *pspec);
|
||||||
|
static void gimp_histogram_view_unrealize (GtkWidget *widget);
|
||||||
static void gimp_histogram_view_size_request (GtkWidget *widget,
|
static void gimp_histogram_view_size_request (GtkWidget *widget,
|
||||||
GtkRequisition *requisition);
|
GtkRequisition *requisition);
|
||||||
static gboolean gimp_histogram_view_expose (GtkWidget *widget,
|
static gboolean gimp_histogram_view_expose (GtkWidget *widget,
|
||||||
@ -120,8 +120,8 @@ gimp_histogram_view_class_init (GimpHistogramViewClass *klass)
|
|||||||
|
|
||||||
object_class->get_property = gimp_histogram_view_get_property;
|
object_class->get_property = gimp_histogram_view_get_property;
|
||||||
object_class->set_property = gimp_histogram_view_set_property;
|
object_class->set_property = gimp_histogram_view_set_property;
|
||||||
object_class->finalize = gimp_histogram_view_finalize;
|
|
||||||
|
|
||||||
|
widget_class->unrealize = gimp_histogram_view_unrealize;
|
||||||
widget_class->size_request = gimp_histogram_view_size_request;
|
widget_class->size_request = gimp_histogram_view_size_request;
|
||||||
widget_class->expose_event = gimp_histogram_view_expose;
|
widget_class->expose_event = gimp_histogram_view_expose;
|
||||||
|
|
||||||
@ -150,18 +150,6 @@ gimp_histogram_view_init (GimpHistogramView *view)
|
|||||||
view->end = 255;
|
view->end = 255;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
gimp_histogram_view_finalize (GObject *object)
|
|
||||||
{
|
|
||||||
GimpHistogramView *view = GIMP_HISTOGRAM_VIEW (object);
|
|
||||||
|
|
||||||
if (view->range_gc)
|
|
||||||
{
|
|
||||||
g_object_unref (view->range_gc);
|
|
||||||
view->range_gc = NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_histogram_view_set_property (GObject *object,
|
gimp_histogram_view_set_property (GObject *object,
|
||||||
guint property_id,
|
guint property_id,
|
||||||
@ -208,6 +196,21 @@ gimp_histogram_view_get_property (GObject *object,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_histogram_view_unrealize (GtkWidget *widget)
|
||||||
|
{
|
||||||
|
GimpHistogramView *view = GIMP_HISTOGRAM_VIEW (widget);
|
||||||
|
|
||||||
|
if (view->range_gc)
|
||||||
|
{
|
||||||
|
g_object_unref (view->range_gc);
|
||||||
|
view->range_gc = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GTK_WIDGET_CLASS (parent_class)->unrealize)
|
||||||
|
GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_histogram_view_size_request (GtkWidget *widget,
|
gimp_histogram_view_size_request (GtkWidget *widget,
|
||||||
GtkRequisition *requisition)
|
GtkRequisition *requisition)
|
||||||
|
@ -53,8 +53,8 @@ enum
|
|||||||
static void gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass);
|
static void gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass);
|
||||||
static void gimp_navigation_preview_init (GimpNavigationPreview *preview);
|
static void gimp_navigation_preview_init (GimpNavigationPreview *preview);
|
||||||
|
|
||||||
static void gimp_navigation_preview_destroy (GtkObject *object);
|
|
||||||
static void gimp_navigation_preview_realize (GtkWidget *widget);
|
static void gimp_navigation_preview_realize (GtkWidget *widget);
|
||||||
|
static void gimp_navigation_preview_unrealize (GtkWidget *widget);
|
||||||
static void gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
static void gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
||||||
GtkAllocation *allocation);
|
GtkAllocation *allocation);
|
||||||
static gboolean gimp_navigation_preview_expose (GtkWidget *widget,
|
static gboolean gimp_navigation_preview_expose (GtkWidget *widget,
|
||||||
@ -111,10 +111,8 @@ gimp_navigation_preview_get_type (void)
|
|||||||
static void
|
static void
|
||||||
gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
||||||
{
|
{
|
||||||
GtkObjectClass *object_class;
|
|
||||||
GtkWidgetClass *widget_class;
|
GtkWidgetClass *widget_class;
|
||||||
|
|
||||||
object_class = GTK_OBJECT_CLASS (klass);
|
|
||||||
widget_class = GTK_WIDGET_CLASS (klass);
|
widget_class = GTK_WIDGET_CLASS (klass);
|
||||||
|
|
||||||
parent_class = g_type_class_peek_parent (klass);
|
parent_class = g_type_class_peek_parent (klass);
|
||||||
@ -150,9 +148,8 @@ gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
|||||||
G_TYPE_NONE, 1,
|
G_TYPE_NONE, 1,
|
||||||
GDK_TYPE_SCROLL_DIRECTION);
|
GDK_TYPE_SCROLL_DIRECTION);
|
||||||
|
|
||||||
object_class->destroy = gimp_navigation_preview_destroy;
|
|
||||||
|
|
||||||
widget_class->realize = gimp_navigation_preview_realize;
|
widget_class->realize = gimp_navigation_preview_realize;
|
||||||
|
widget_class->unrealize = gimp_navigation_preview_unrealize;
|
||||||
widget_class->size_allocate = gimp_navigation_preview_size_allocate;
|
widget_class->size_allocate = gimp_navigation_preview_size_allocate;
|
||||||
widget_class->expose_event = gimp_navigation_preview_expose;
|
widget_class->expose_event = gimp_navigation_preview_expose;
|
||||||
widget_class->button_press_event = gimp_navigation_preview_button_press;
|
widget_class->button_press_event = gimp_navigation_preview_button_press;
|
||||||
@ -187,28 +184,10 @@ gimp_navigation_preview_init (GimpNavigationPreview *preview)
|
|||||||
preview->gc = NULL;
|
preview->gc = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
gimp_navigation_preview_destroy (GtkObject *object)
|
|
||||||
{
|
|
||||||
GimpNavigationPreview *nav_preview;
|
|
||||||
|
|
||||||
nav_preview = GIMP_NAVIGATION_PREVIEW (object);
|
|
||||||
|
|
||||||
if (nav_preview->gc)
|
|
||||||
{
|
|
||||||
g_object_unref (nav_preview->gc);
|
|
||||||
nav_preview->gc = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
GTK_OBJECT_CLASS (parent_class)->destroy (object);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_navigation_preview_realize (GtkWidget *widget)
|
gimp_navigation_preview_realize (GtkWidget *widget)
|
||||||
{
|
{
|
||||||
GimpNavigationPreview *nav_preview;
|
GimpNavigationPreview *nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
||||||
|
|
||||||
nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
|
||||||
|
|
||||||
if (GTK_WIDGET_CLASS (parent_class)->realize)
|
if (GTK_WIDGET_CLASS (parent_class)->realize)
|
||||||
GTK_WIDGET_CLASS (parent_class)->realize (widget);
|
GTK_WIDGET_CLASS (parent_class)->realize (widget);
|
||||||
@ -221,6 +200,21 @@ gimp_navigation_preview_realize (GtkWidget *widget)
|
|||||||
GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_ROUND);
|
GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_ROUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_navigation_preview_unrealize (GtkWidget *widget)
|
||||||
|
{
|
||||||
|
GimpNavigationPreview *nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
||||||
|
|
||||||
|
if (nav_preview->gc)
|
||||||
|
{
|
||||||
|
g_object_unref (nav_preview->gc);
|
||||||
|
nav_preview->gc = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GTK_WIDGET_CLASS (parent_class)->unrealize)
|
||||||
|
GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
||||||
GtkAllocation *allocation)
|
GtkAllocation *allocation)
|
||||||
|
@ -53,8 +53,8 @@ enum
|
|||||||
static void gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass);
|
static void gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass);
|
||||||
static void gimp_navigation_preview_init (GimpNavigationPreview *preview);
|
static void gimp_navigation_preview_init (GimpNavigationPreview *preview);
|
||||||
|
|
||||||
static void gimp_navigation_preview_destroy (GtkObject *object);
|
|
||||||
static void gimp_navigation_preview_realize (GtkWidget *widget);
|
static void gimp_navigation_preview_realize (GtkWidget *widget);
|
||||||
|
static void gimp_navigation_preview_unrealize (GtkWidget *widget);
|
||||||
static void gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
static void gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
||||||
GtkAllocation *allocation);
|
GtkAllocation *allocation);
|
||||||
static gboolean gimp_navigation_preview_expose (GtkWidget *widget,
|
static gboolean gimp_navigation_preview_expose (GtkWidget *widget,
|
||||||
@ -111,10 +111,8 @@ gimp_navigation_preview_get_type (void)
|
|||||||
static void
|
static void
|
||||||
gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
||||||
{
|
{
|
||||||
GtkObjectClass *object_class;
|
|
||||||
GtkWidgetClass *widget_class;
|
GtkWidgetClass *widget_class;
|
||||||
|
|
||||||
object_class = GTK_OBJECT_CLASS (klass);
|
|
||||||
widget_class = GTK_WIDGET_CLASS (klass);
|
widget_class = GTK_WIDGET_CLASS (klass);
|
||||||
|
|
||||||
parent_class = g_type_class_peek_parent (klass);
|
parent_class = g_type_class_peek_parent (klass);
|
||||||
@ -150,9 +148,8 @@ gimp_navigation_preview_class_init (GimpNavigationPreviewClass *klass)
|
|||||||
G_TYPE_NONE, 1,
|
G_TYPE_NONE, 1,
|
||||||
GDK_TYPE_SCROLL_DIRECTION);
|
GDK_TYPE_SCROLL_DIRECTION);
|
||||||
|
|
||||||
object_class->destroy = gimp_navigation_preview_destroy;
|
|
||||||
|
|
||||||
widget_class->realize = gimp_navigation_preview_realize;
|
widget_class->realize = gimp_navigation_preview_realize;
|
||||||
|
widget_class->unrealize = gimp_navigation_preview_unrealize;
|
||||||
widget_class->size_allocate = gimp_navigation_preview_size_allocate;
|
widget_class->size_allocate = gimp_navigation_preview_size_allocate;
|
||||||
widget_class->expose_event = gimp_navigation_preview_expose;
|
widget_class->expose_event = gimp_navigation_preview_expose;
|
||||||
widget_class->button_press_event = gimp_navigation_preview_button_press;
|
widget_class->button_press_event = gimp_navigation_preview_button_press;
|
||||||
@ -187,28 +184,10 @@ gimp_navigation_preview_init (GimpNavigationPreview *preview)
|
|||||||
preview->gc = NULL;
|
preview->gc = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
gimp_navigation_preview_destroy (GtkObject *object)
|
|
||||||
{
|
|
||||||
GimpNavigationPreview *nav_preview;
|
|
||||||
|
|
||||||
nav_preview = GIMP_NAVIGATION_PREVIEW (object);
|
|
||||||
|
|
||||||
if (nav_preview->gc)
|
|
||||||
{
|
|
||||||
g_object_unref (nav_preview->gc);
|
|
||||||
nav_preview->gc = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
GTK_OBJECT_CLASS (parent_class)->destroy (object);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_navigation_preview_realize (GtkWidget *widget)
|
gimp_navigation_preview_realize (GtkWidget *widget)
|
||||||
{
|
{
|
||||||
GimpNavigationPreview *nav_preview;
|
GimpNavigationPreview *nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
||||||
|
|
||||||
nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
|
||||||
|
|
||||||
if (GTK_WIDGET_CLASS (parent_class)->realize)
|
if (GTK_WIDGET_CLASS (parent_class)->realize)
|
||||||
GTK_WIDGET_CLASS (parent_class)->realize (widget);
|
GTK_WIDGET_CLASS (parent_class)->realize (widget);
|
||||||
@ -221,6 +200,21 @@ gimp_navigation_preview_realize (GtkWidget *widget)
|
|||||||
GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_ROUND);
|
GDK_LINE_SOLID, GDK_CAP_BUTT, GDK_JOIN_ROUND);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
gimp_navigation_preview_unrealize (GtkWidget *widget)
|
||||||
|
{
|
||||||
|
GimpNavigationPreview *nav_preview = GIMP_NAVIGATION_PREVIEW (widget);
|
||||||
|
|
||||||
|
if (nav_preview->gc)
|
||||||
|
{
|
||||||
|
g_object_unref (nav_preview->gc);
|
||||||
|
nav_preview->gc = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (GTK_WIDGET_CLASS (parent_class)->unrealize)
|
||||||
|
GTK_WIDGET_CLASS (parent_class)->unrealize (widget);
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
gimp_navigation_preview_size_allocate (GtkWidget *widget,
|
||||||
GtkAllocation *allocation)
|
GtkAllocation *allocation)
|
||||||
|
Reference in New Issue
Block a user