1
/* The GIMP -- an image manipulation program
1
/* GIMP - The GNU Image Manipulation Program
2
2
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
4
4
* This program is free software; you can redistribute it and/or modify
28
28
#include "gimppaintinfo.h"
31
static void gimp_paint_info_class_init (GimpPaintInfoClass *klass);
32
static void gimp_paint_info_init (GimpPaintInfo *paint_info);
34
static void gimp_paint_info_finalize (GObject *object);
35
static gchar * gimp_paint_info_get_description (GimpViewable *viewable,
39
static GimpViewableClass *parent_class = NULL;
43
gimp_paint_info_get_type (void)
45
static GType paint_info_type = 0;
47
if (! paint_info_type)
49
static const GTypeInfo paint_info_info =
51
sizeof (GimpPaintInfoClass),
53
(GBaseFinalizeFunc) NULL,
54
(GClassInitFunc) gimp_paint_info_class_init,
55
NULL, /* class_finalize */
56
NULL, /* class_data */
57
sizeof (GimpPaintInfo),
59
(GInstanceInitFunc) gimp_paint_info_init,
62
paint_info_type = g_type_register_static (GIMP_TYPE_VIEWABLE,
67
return paint_info_type;
31
static void gimp_paint_info_finalize (GObject *object);
32
static gchar * gimp_paint_info_get_description (GimpViewable *viewable,
36
G_DEFINE_TYPE (GimpPaintInfo, gimp_paint_info, GIMP_TYPE_VIEWABLE)
38
#define parent_class gimp_paint_info_parent_class
71
42
gimp_paint_info_class_init (GimpPaintInfoClass *klass)
73
GObjectClass *object_class;
74
GimpViewableClass *viewable_class;
76
object_class = G_OBJECT_CLASS (klass);
77
viewable_class = GIMP_VIEWABLE_CLASS (klass);
79
parent_class = g_type_class_peek_parent (klass);
44
GObjectClass *object_class = G_OBJECT_CLASS (klass);
45
GimpViewableClass *viewable_class = GIMP_VIEWABLE_CLASS (klass);
81
47
object_class->finalize = gimp_paint_info_finalize;
130
91
gimp_paint_info_new (Gimp *gimp,
132
93
GType paint_options_type,
94
const gchar *identifier,
96
const gchar *stock_id)
135
98
GimpPaintInfo *paint_info;
137
100
g_return_val_if_fail (GIMP_IS_GIMP (gimp), NULL);
101
g_return_val_if_fail (identifier != NULL, NULL);
138
102
g_return_val_if_fail (blurb != NULL, NULL);
103
g_return_val_if_fail (stock_id != NULL, NULL);
140
105
paint_info = g_object_new (GIMP_TYPE_PAINT_INFO,
141
"name", g_type_name (paint_type),
107
"stock-id", stock_id,
144
110
paint_info->gimp = gimp;
151
117
return paint_info;
121
gimp_paint_info_set_standard (Gimp *gimp,
122
GimpPaintInfo *paint_info)
124
g_return_if_fail (GIMP_IS_GIMP (gimp));
125
g_return_if_fail (! paint_info || GIMP_IS_PAINT_INFO (paint_info));
127
if (paint_info != gimp->standard_paint_info)
129
if (gimp->standard_paint_info)
130
g_object_unref (gimp->standard_paint_info);
132
gimp->standard_paint_info = paint_info;
134
if (gimp->standard_paint_info)
135
g_object_ref (gimp->standard_paint_info);
140
gimp_paint_info_get_standard (Gimp *gimp)
142
g_return_val_if_fail (GIMP_IS_GIMP (gimp), NULL);
144
return gimp->standard_paint_info;