static void gimp_list_class_init (GimpListClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpContainerClass *container_class = GIMP_CONTAINER_CLASS (klass); object_class->set_property = gimp_list_set_property; object_class->get_property = gimp_list_get_property; gimp_object_class->get_memsize = gimp_list_get_memsize; container_class->add = gimp_list_add; container_class->remove = gimp_list_remove; container_class->reorder = gimp_list_reorder; container_class->clear = gimp_list_clear; container_class->have = gimp_list_have; container_class->foreach = gimp_list_foreach; container_class->get_child_by_name = gimp_list_get_child_by_name; container_class->get_child_by_index = gimp_list_get_child_by_index; container_class->get_child_index = gimp_list_get_child_index; g_object_class_install_property (object_class, PROP_UNIQUE_NAMES, g_param_spec_boolean ("unique-names", NULL, NULL, FALSE, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (object_class, PROP_SORT_FUNC, g_param_spec_pointer ("sort-func", NULL, NULL, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT)); }
static void gimp_parasite_list_class_init (GimpParasiteListClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); parasite_list_signals[ADD] = g_signal_new ("add", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpParasiteListClass, add), NULL, NULL, gimp_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); parasite_list_signals[REMOVE] = g_signal_new ("remove", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpParasiteListClass, remove), NULL, NULL, gimp_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER); object_class->finalize = gimp_parasite_list_finalize; gimp_object_class->get_memsize = gimp_parasite_list_get_memsize; klass->add = NULL; klass->remove = NULL; }
static void gimp_tagged_container_class_init (GimpTaggedContainerClass *klass) { GObjectClass *g_object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpContainerClass *container_class = GIMP_CONTAINER_CLASS (klass); GimpFilteredContainerClass *filtered_class = GIMP_FILTERED_CONTAINER_CLASS (klass); g_object_class->dispose = gimp_tagged_container_dispose; gimp_object_class->get_memsize = gimp_tagged_container_get_memsize; container_class->clear = gimp_tagged_container_clear; filtered_class->src_add = gimp_tagged_container_src_add; filtered_class->src_remove = gimp_tagged_container_src_remove; filtered_class->src_freeze = gimp_tagged_container_src_freeze; filtered_class->src_thaw = gimp_tagged_container_src_thaw; klass->tag_count_changed = gimp_tagged_container_tag_count_changed; gimp_tagged_container_signals[TAG_COUNT_CHANGED] = g_signal_new ("tag-count-changed", GIMP_TYPE_TAGGED_CONTAINER, G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GimpTaggedContainerClass, tag_count_changed), NULL, NULL, gimp_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT); }
static void gimp_drawable_undo_class_init (GimpDrawableUndoClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpUndoClass *undo_class = GIMP_UNDO_CLASS (klass); object_class->constructed = gimp_drawable_undo_constructed; object_class->set_property = gimp_drawable_undo_set_property; object_class->get_property = gimp_drawable_undo_get_property; gimp_object_class->get_memsize = gimp_drawable_undo_get_memsize; undo_class->pop = gimp_drawable_undo_pop; undo_class->free = gimp_drawable_undo_free; g_object_class_install_property (object_class, PROP_BUFFER, g_param_spec_object ("buffer", NULL, NULL, GEGL_TYPE_BUFFER, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (object_class, PROP_X, g_param_spec_int ("x", NULL, NULL, 0, GIMP_MAX_IMAGE_SIZE, 0, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_object_class_install_property (object_class, PROP_Y, g_param_spec_int ("y", NULL, NULL, 0, GIMP_MAX_IMAGE_SIZE, 0, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); }
static void gimp_curve_class_init (GimpCurveClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpViewableClass *viewable_class = GIMP_VIEWABLE_CLASS (klass); GimpDataClass *data_class = GIMP_DATA_CLASS (klass); GParamSpec *array_spec; object_class->finalize = gimp_curve_finalize; object_class->set_property = gimp_curve_set_property; object_class->get_property = gimp_curve_get_property; gimp_object_class->get_memsize = gimp_curve_get_memsize; viewable_class->default_icon_name = "FIXME icon name"; viewable_class->get_preview_size = gimp_curve_get_preview_size; viewable_class->get_popup_size = gimp_curve_get_popup_size; viewable_class->get_new_preview = gimp_curve_get_new_preview; viewable_class->get_description = gimp_curve_get_description; data_class->dirty = gimp_curve_dirty; data_class->save = gimp_curve_save; data_class->get_extension = gimp_curve_get_extension; data_class->duplicate = gimp_curve_duplicate; GIMP_CONFIG_INSTALL_PROP_ENUM (object_class, PROP_CURVE_TYPE, "curve-type", "The curve type", GIMP_TYPE_CURVE_TYPE, GIMP_CURVE_SMOOTH, 0); GIMP_CONFIG_INSTALL_PROP_INT (object_class, PROP_N_POINTS, "n-points", "The number of points", 17, 17, 17, 0); array_spec = g_param_spec_double ("point", NULL, NULL, -1.0, 1.0, 0.0, GIMP_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_POINTS, gimp_param_spec_value_array ("points", NULL, NULL, array_spec, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_FLAGS)); GIMP_CONFIG_INSTALL_PROP_INT (object_class, PROP_N_SAMPLES, "n-samples", "The number of samples", 256, 256, 256, 0); array_spec = g_param_spec_double ("sample", NULL, NULL, 0.0, 1.0, 0.0, GIMP_PARAM_READWRITE); g_object_class_install_property (object_class, PROP_SAMPLES, gimp_param_spec_value_array ("samples", NULL, NULL, array_spec, GIMP_PARAM_STATIC_STRINGS | GIMP_CONFIG_PARAM_FLAGS)); }
static gint64 gimp_procedure_get_memsize (GimpObject *object, gint64 *gui_size) { GimpProcedure *procedure = GIMP_PROCEDURE (object); gint64 memsize = 0; gint i; if (! procedure->static_strings) { memsize += gimp_string_get_memsize (procedure->original_name); memsize += gimp_string_get_memsize (procedure->blurb); memsize += gimp_string_get_memsize (procedure->help); memsize += gimp_string_get_memsize (procedure->author); memsize += gimp_string_get_memsize (procedure->copyright); memsize += gimp_string_get_memsize (procedure->date); memsize += gimp_string_get_memsize (procedure->deprecated); } memsize += procedure->num_args * sizeof (GParamSpec *); for (i = 0; i < procedure->num_args; i++) memsize += gimp_g_param_spec_get_memsize (procedure->args[i]); memsize += procedure->num_values * sizeof (GParamSpec *); for (i = 0; i < procedure->num_values; i++) memsize += gimp_g_param_spec_get_memsize (procedure->values[i]); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static void gimp_plug_in_procedure_class_init (GimpPlugInProcedureClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpProcedureClass *proc_class = GIMP_PROCEDURE_CLASS (klass); gimp_plug_in_procedure_signals[MENU_PATH_ADDED] = g_signal_new ("menu-path-added", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpPlugInProcedureClass, menu_path_added), NULL, NULL, gimp_marshal_VOID__STRING, G_TYPE_NONE, 1, G_TYPE_STRING); object_class->finalize = gimp_plug_in_procedure_finalize; gimp_object_class->get_memsize = gimp_plug_in_procedure_get_memsize; proc_class->execute = gimp_plug_in_procedure_execute; proc_class->execute_async = gimp_plug_in_procedure_execute_async; klass->get_progname = gimp_plug_in_procedure_real_get_progname; klass->menu_path_added = NULL; }
static void gimp_pdb_class_init (GimpPDBClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); gimp_pdb_signals[REGISTER_PROCEDURE] = g_signal_new ("register-procedure", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpPDBClass, register_procedure), NULL, NULL, gimp_marshal_VOID__OBJECT, G_TYPE_NONE, 1, GIMP_TYPE_PROCEDURE); gimp_pdb_signals[UNREGISTER_PROCEDURE] = g_signal_new ("unregister-procedure", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpPDBClass, unregister_procedure), NULL, NULL, gimp_marshal_VOID__OBJECT, G_TYPE_NONE, 1, GIMP_TYPE_PROCEDURE); object_class->finalize = gimp_pdb_finalize; gimp_object_class->get_memsize = gimp_pdb_get_memsize; klass->register_procedure = gimp_pdb_real_register_procedure; klass->unregister_procedure = gimp_pdb_real_unregister_procedure; }
static void gimp_data_class_init (GimpDataClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpViewableClass *viewable_class = GIMP_VIEWABLE_CLASS (klass); parent_class = g_type_class_peek_parent (klass); data_signals[DIRTY] = g_signal_new ("dirty", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_FIRST, G_STRUCT_OFFSET (GimpDataClass, dirty), NULL, NULL, gimp_marshal_VOID__VOID, G_TYPE_NONE, 0); object_class->constructed = gimp_data_constructed; object_class->finalize = gimp_data_finalize; object_class->set_property = gimp_data_set_property; object_class->get_property = gimp_data_get_property; gimp_object_class->name_changed = gimp_data_name_changed; gimp_object_class->get_memsize = gimp_data_get_memsize; viewable_class->name_editable = TRUE; viewable_class->is_name_editable = gimp_data_is_name_editable; klass->dirty = gimp_data_real_dirty; klass->save = NULL; klass->get_extension = NULL; klass->duplicate = NULL; g_object_class_install_property (object_class, PROP_FILE, g_param_spec_object ("file", NULL, NULL, G_TYPE_FILE, GIMP_PARAM_READWRITE)); g_object_class_install_property (object_class, PROP_WRITABLE, g_param_spec_boolean ("writable", NULL, NULL, FALSE, GIMP_PARAM_READWRITE)); g_object_class_install_property (object_class, PROP_DELETABLE, g_param_spec_boolean ("deletable", NULL, NULL, FALSE, GIMP_PARAM_READWRITE)); g_object_class_install_property (object_class, PROP_MIME_TYPE, g_param_spec_string ("mime-type", NULL, NULL, NULL, GIMP_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY)); g_type_class_add_private (klass, sizeof (GimpDataPrivate)); }
static gint64 gimp_mybrush_get_memsize (GimpObject *object, gint64 *gui_size) { GimpMybrush *brush = GIMP_MYBRUSH (object); gint64 memsize = 0; return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static void gimp_session_info_class_init (GimpSessionInfoClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); object_class->finalize = gimp_session_info_finalize; gimp_object_class->get_memsize = gimp_session_info_get_memsize; }
static void gimp_plug_in_def_class_init (GimpPlugInDefClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); object_class->finalize = gimp_plug_in_def_finalize; gimp_object_class->get_memsize = gimp_plug_in_def_get_memsize; }
static gint64 gimp_tagged_container_get_memsize (GimpObject *object, gint64 *gui_size) { gint64 memsize = 0; /* FIXME take members into account */ return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static void gimp_text_layer_class_init (GimpTextLayerClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); GimpViewableClass *viewable_class = GIMP_VIEWABLE_CLASS (klass); GimpItemClass *item_class = GIMP_ITEM_CLASS (klass); GimpDrawableClass *drawable_class = GIMP_DRAWABLE_CLASS (klass); object_class->finalize = gimp_text_layer_finalize; object_class->get_property = gimp_text_layer_get_property; object_class->set_property = gimp_text_layer_set_property; gimp_object_class->get_memsize = gimp_text_layer_get_memsize; viewable_class->default_stock_id = "gimp-text-layer"; item_class->duplicate = gimp_text_layer_duplicate; item_class->rename = gimp_text_layer_rename; #if 0 item_class->scale = gimp_text_layer_scale; item_class->flip = gimp_text_layer_flip; item_class->rotate = gimp_text_layer_rotate; item_class->transform = gimp_text_layer_transform; #endif item_class->default_name = _("Text Layer"); item_class->rename_desc = _("Rename Text Layer"); item_class->translate_desc = _("Move Text Layer"); item_class->scale_desc = _("Scale Text Layer"); item_class->resize_desc = _("Resize Text Layer"); item_class->flip_desc = _("Flip Text Layer"); item_class->rotate_desc = _("Rotate Text Layer"); item_class->transform_desc = _("Transform Text Layer"); drawable_class->set_buffer = gimp_text_layer_set_buffer; drawable_class->push_undo = gimp_text_layer_push_undo; GIMP_CONFIG_INSTALL_PROP_OBJECT (object_class, PROP_TEXT, "text", NULL, GIMP_TYPE_TEXT, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_AUTO_RENAME, "auto-rename", NULL, TRUE, GIMP_PARAM_STATIC_STRINGS); GIMP_CONFIG_INSTALL_PROP_BOOLEAN (object_class, PROP_MODIFIED, "modified", NULL, FALSE, GIMP_PARAM_STATIC_STRINGS); }
static gint64 gimp_drawable_undo_get_memsize (GimpObject *object, gint64 *gui_size) { GimpDrawableUndo *drawable_undo = GIMP_DRAWABLE_UNDO (object); gint64 memsize = 0; memsize += gimp_gegl_buffer_get_memsize (drawable_undo->buffer); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_buffer_get_memsize (GimpObject *object, gint64 *gui_size) { GimpBuffer *buffer = GIMP_BUFFER (object); gint64 memsize = 0; memsize += gimp_gegl_buffer_get_memsize (buffer->buffer); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_session_info_get_memsize (GimpObject *object, gint64 *gui_size) { #if 0 GimpSessionInfo *info = GIMP_SESSION_INFO (object); #endif gint64 memsize = 0; return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_pattern_get_memsize (GimpObject *object, gint64 *gui_size) { GimpPattern *pattern = GIMP_PATTERN (object); gint64 memsize = 0; memsize += gimp_temp_buf_get_memsize (pattern->mask); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_undo_stack_get_memsize (GimpObject *object, gint64 *gui_size) { GimpUndoStack *stack = GIMP_UNDO_STACK (object); gint64 memsize = 0; memsize += gimp_object_get_memsize (GIMP_OBJECT (stack->undos), gui_size); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_mask_undo_get_memsize (GimpObject *object, gint64 *gui_size) { GimpMaskUndo *mask_undo = GIMP_MASK_UNDO (object); gint64 memsize = 0; memsize += gimp_gegl_buffer_get_memsize (mask_undo->buffer); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_item_get_memsize (GimpObject *object, gint64 *gui_size) { GimpItem *item = GIMP_ITEM (object); gint64 memsize = 0; memsize += gimp_object_get_memsize (GIMP_OBJECT (item->parasites), gui_size); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static void gimp_session_info_class_init (GimpSessionInfoClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); object_class->finalize = gimp_session_info_finalize; gimp_object_class->get_memsize = gimp_session_info_get_memsize; g_type_class_add_private (klass, sizeof (GimpSessionInfoPrivate)); }
static gint64 gimp_undo_get_memsize (GimpObject *object, gint64 *gui_size) { GimpUndo *undo = GIMP_UNDO (object); gint64 memsize = 0; *gui_size += gimp_temp_buf_get_memsize (undo->preview); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_projection_get_memsize (GimpObject *object, gint64 *gui_size) { GimpProjection *projection = GIMP_PROJECTION (object); gint64 memsize = 0; memsize += gimp_gegl_buffer_get_memsize (projection->buffer); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_projection_get_memsize (GimpObject *object, gint64 *gui_size) { GimpProjection *projection = GIMP_PROJECTION (object); gint64 memsize = 0; if (projection->pyramid) memsize = tile_pyramid_get_memsize (projection->pyramid); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_buffer_get_memsize (GimpObject *object, gint64 *gui_size) { GimpBuffer *buffer = GIMP_BUFFER (object); gint64 memsize = 0; if (buffer->tiles) memsize += tile_manager_get_memsize (buffer->tiles, FALSE); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_text_undo_get_memsize (GimpObject *object, gint64 *gui_size) { GimpTextUndo *undo = GIMP_TEXT_UNDO (object); gint64 memsize = 0; memsize += gimp_g_value_get_memsize (undo->value); memsize += gimp_object_get_memsize (GIMP_OBJECT (undo->text), NULL); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_curve_get_memsize (GimpObject *object, gint64 *gui_size) { GimpCurve *curve = GIMP_CURVE (object); gint64 memsize = 0; memsize += curve->n_points * sizeof (GimpVector2); memsize += curve->n_samples * sizeof (gdouble); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static gint64 gimp_text_layer_get_memsize (GimpObject *object, gint64 *gui_size) { GimpTextLayer *text_layer = GIMP_TEXT_LAYER (object); gint64 memsize = 0; memsize += gimp_object_get_memsize (GIMP_OBJECT (text_layer->text), gui_size); return memsize + GIMP_OBJECT_CLASS (parent_class)->get_memsize (object, gui_size); }
static void gimp_procedure_class_init (GimpProcedureClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GimpObjectClass *gimp_object_class = GIMP_OBJECT_CLASS (klass); object_class->finalize = gimp_procedure_finalize; gimp_object_class->get_memsize = gimp_procedure_get_memsize; klass->execute = gimp_procedure_real_execute; klass->execute_async = gimp_procedure_real_execute_async; }