summaryrefslogtreecommitdiff
path: root/gsk/gskrendernodeprivate.h
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2023-04-03 16:39:52 +0200
committerBenjamin Otte <otte@redhat.com>2023-04-03 19:27:58 +0200
commit6e8c3fc3ff5e41472c674580b66b1314668a6f9f (patch)
tree4981ccfd5ee0a43ef3ec0a6b4e69c4f98c1d4152 /gsk/gskrendernodeprivate.h
parent0d139a81c742c94647e4d5328ae8e3e2604f1077 (diff)
downloadgtk+-6e8c3fc3ff5e41472c674580b66b1314668a6f9f.tar.gz
rendernode: Get rid of GskRenderNodeTypeInfo
Instead, use class_init functions.
Diffstat (limited to 'gsk/gskrendernodeprivate.h')
-rw-r--r--gsk/gskrendernodeprivate.h35
1 files changed, 2 insertions, 33 deletions
diff --git a/gsk/gskrendernodeprivate.h b/gsk/gskrendernodeprivate.h
index ffcd0bb478..04135ec971 100644
--- a/gsk/gskrendernodeprivate.h
+++ b/gsk/gskrendernodeprivate.h
@@ -47,42 +47,11 @@ struct _GskRenderNodeClass
cairo_region_t *region);
};
-/*< private >
- * GskRenderNodeTypeInfo:
- * @node_type: the render node type in the `GskRenderNodeType` enumeration
- * @instance_size: the size of the render node instance
- * @instance_init: (nullable): the instance initialization function
- * @finalize: (nullable): the instance finalization function; must chain up to the
- * implementation of the parent class
- * @draw: the function called by gsk_render_node_draw()
- * @can_diff: (nullable): the function called by gsk_render_node_can_diff(); if
- * unset, gsk_render_node_can_diff_true() will be used
- * @diff: (nullable): the function called by gsk_render_node_diff(); if unset,
- * gsk_render_node_diff_impossible() will be used
- *
- * A struction that contains the type information for a `GskRenderNode` subclass,
- * to be used by gsk_render_node_type_register_static().
- */
-typedef struct
-{
- GskRenderNodeType node_type;
-
- gsize instance_size;
-
- void (* finalize) (GskRenderNode *node);
- void (* draw) (GskRenderNode *node,
- cairo_t *cr);
- gboolean (* can_diff) (const GskRenderNode *node1,
- const GskRenderNode *node2);
- void (* diff) (GskRenderNode *node1,
- GskRenderNode *node2,
- cairo_region_t *region);
-} GskRenderNodeTypeInfo;
-
void gsk_render_node_init_types (void);
GType gsk_render_node_type_register_static (const char *node_name,
- const GskRenderNodeTypeInfo *node_info);
+ gsize instance_size,
+ GClassInitFunc class_init);
gpointer gsk_render_node_alloc (GskRenderNodeType node_type);