goocanvas 0.90.6-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +87 -0
- data/README +37 -0
- data/Rakefile +14 -0
- data/ext/goocanvas/depend +5 -0
- data/ext/goocanvas/extconf.rb +66 -0
- data/ext/goocanvas/goocanvas.def +2 -0
- data/ext/goocanvas/rbgoocairo.c +74 -0
- data/ext/goocanvas/rbgoocanvas.c +236 -0
- data/ext/goocanvas/rbgoocanvas.h +66 -0
- data/ext/goocanvas/rbgoocanvasellipse.c +50 -0
- data/ext/goocanvas/rbgoocanvasgroup.c +41 -0
- data/ext/goocanvas/rbgoocanvasimage.c +45 -0
- data/ext/goocanvas/rbgoocanvasitem.c +358 -0
- data/ext/goocanvas/rbgoocanvaspolyline.c +102 -0
- data/ext/goocanvas/rbgoocanvasrect.c +47 -0
- data/ext/goocanvas/rbgoocanvasstyle.c +61 -0
- data/ext/goocanvas/rbgoocanvastable.c +41 -0
- data/ext/goocanvas/rbgoocanvastext.c +58 -0
- data/ext/goocanvas/rbgoocanvaswidget.c +48 -0
- data/ext/goocanvas/rbgooutils.c +44 -0
- data/extconf.rb +49 -0
- data/lib/1.8/goocanvas.so +0 -0
- data/lib/1.9/goocanvas.so +0 -0
- data/lib/goocanvas.rb +145 -0
- data/sample/demo-arrowhead.rb +315 -0
- data/sample/demo-fifteen.rb +218 -0
- data/sample/demo-primitives.rb +720 -0
- data/sample/demo.rb +84 -0
- data/sample/flower.png +0 -0
- data/sample/scalability-demo.rb +130 -0
- data/sample/simple-demo.rb +35 -0
- data/sample/table-demo.rb +137 -0
- data/sample/toroid.png +0 -0
- data/sample/units-demo.rb +80 -0
- data/sample/widgets-demo.rb +197 -0
- data/vendor/local/bin/libgoocanvas-3.dll +0 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvas.h +334 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasatk.h +22 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasellipse.h +120 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasenumtypes.h +33 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasgrid.h +153 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasgroup.h +109 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasimage.h +121 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasitem.h +479 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasitemmodel.h +275 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasitemsimple.h +247 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasmarshal.h +61 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvaspath.h +116 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvaspolyline.h +176 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasprivate.h +59 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasrect.h +121 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasstyle.h +110 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvastable.h +139 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvastext.h +133 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvasutils.h +333 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/goocanvaswidget.h +66 -0
- data/vendor/local/include/goocanvas-1.0.0/goocanvas/stamp-goocanvasmarshal.h +1 -0
- data/vendor/local/lib/libgoocanvas.a +0 -0
- data/vendor/local/lib/libgoocanvas.dll.a +0 -0
- data/vendor/local/lib/pkgconfig/goocanvas.pc +13 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvas.html +1982 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasEllipse.html +269 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasEllipseModel.html +274 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasGrid.html +469 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasGridModel.html +476 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasGroup.html +183 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasGroupModel.html +184 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasImage.html +247 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasImageModel.html +252 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasItem.html +3014 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasItemModel.html +1764 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasItemModelSimple.html +298 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasItemSimple.html +809 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasPath.html +279 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasPathModel.html +280 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasPolyline.html +369 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasPolylineModel.html +375 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasRect.html +247 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasRectModel.html +252 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasStyle.html +489 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasTable.html +452 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasTableModel.html +452 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasText.html +324 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasTextModel.html +287 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/GooCanvasWidget.html +266 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/ch01.html +53 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/ch02.html +50 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/ch03.html +62 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/ch04.html +60 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/ch05.html +33 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-GooCanvas-Types.html +815 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-architecture.html +157 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-coordinates.html +106 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-creating-items.html +420 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-model-view-canvas.html +246 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-overview.html +106 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-simple-canvas.html +238 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas-wysiwyg.html +84 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas.devhelp +608 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/goocanvas.devhelp2 +639 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/home.png +0 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/index.html +138 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/index.sgml +814 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/left.png +0 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/right.png +0 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/style.css +257 -0
- data/vendor/local/share/gtk-doc/html/goocanvas/up.png +0 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/dummy.sgml +0 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvas-unused.sgml +0 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvas.sgml +536 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasellipse.sgml +82 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasellipsemodel.sgml +82 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasgrid.sgml +176 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasgridmodel.sgml +176 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasgroup.sgml +58 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasgroupmodel.sgml +58 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasimage.sgml +81 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasimagemodel.sgml +81 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasitem.sgml +773 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasitemmodel.sgml +490 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasitemmodelsimple.sgml +135 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasitemsimple.sgml +254 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvaspath.sgml +64 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvaspathmodel.sgml +64 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvaspolyline.sgml +109 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvaspolylinemodel.sgml +109 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasrect.sgml +72 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasrectmodel.sgml +72 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasstyle.sgml +186 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvastable.sgml +158 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvastablemodel.sgml +158 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvastext.sgml +103 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvastextmodel.sgml +93 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvasutils.sgml +241 -0
- data/vendor/local/share/gtk-doc/tmpl/goocanvas/goocanvaswidget.sgml +73 -0
- metadata +218 -0
@@ -0,0 +1,275 @@
|
|
1
|
+
/*
|
2
|
+
* GooCanvas. Copyright (C) 2005 Damon Chaplin.
|
3
|
+
* Released under the GNU LGPL license. See COPYING for details.
|
4
|
+
*
|
5
|
+
* goocanvasitemmodel.h - interface for canvas item models.
|
6
|
+
*/
|
7
|
+
#ifndef __GOO_CANVAS_ITEM_MODEL_H__
|
8
|
+
#define __GOO_CANVAS_ITEM_MODEL_H__
|
9
|
+
|
10
|
+
#include <gtk/gtk.h>
|
11
|
+
#include "goocanvasitem.h"
|
12
|
+
|
13
|
+
G_BEGIN_DECLS
|
14
|
+
|
15
|
+
|
16
|
+
#define GOO_TYPE_CANVAS_ITEM_MODEL (goo_canvas_item_model_get_type ())
|
17
|
+
#define GOO_CANVAS_ITEM_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_ITEM_MODEL, GooCanvasItemModel))
|
18
|
+
#define GOO_IS_CANVAS_ITEM_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_ITEM_MODEL))
|
19
|
+
#define GOO_CANVAS_ITEM_MODEL_GET_IFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), GOO_TYPE_CANVAS_ITEM_MODEL, GooCanvasItemModelIface))
|
20
|
+
|
21
|
+
|
22
|
+
/**
|
23
|
+
* GooCanvasItemModel
|
24
|
+
*
|
25
|
+
* #GooCanvasItemModel is a typedef used for objects that implement the
|
26
|
+
* #GooCanvasItemModel interface.
|
27
|
+
*
|
28
|
+
* (There is no actual #GooCanvasItemModel struct, since it is only an interface.
|
29
|
+
* But using '#GooCanvasItemModel' is more helpful than using '#GObject'.)
|
30
|
+
*/
|
31
|
+
/* The typedef is in goocanvasitem.h */
|
32
|
+
/*typedef struct _GooCanvasItemModel GooCanvasItemModel;*/
|
33
|
+
|
34
|
+
|
35
|
+
/**
|
36
|
+
* GooCanvasItemModelIface
|
37
|
+
* @get_n_children: returns the number of children of the model.
|
38
|
+
* @get_child: returns the child at the given index.
|
39
|
+
* @add_child: adds a child.
|
40
|
+
* @move_child: moves a child up or down the stacking order.
|
41
|
+
* @remove_child: removes a child.
|
42
|
+
* @get_child_property: gets a child property of a given child model,
|
43
|
+
* e.g. the "row" or "column" property of a model in a #GooCanvasTableModel.
|
44
|
+
* @set_child_property: sets a child property for a given child model.
|
45
|
+
* @get_parent: gets the model's parent.
|
46
|
+
* @set_parent: sets the model's parent.
|
47
|
+
* @create_item: creates a default canvas item to view the model.
|
48
|
+
* @get_transform: gets the model's transformation matrix.
|
49
|
+
* @set_transform: sets the model's transformation matrix.
|
50
|
+
* @get_style: gets the model's style.
|
51
|
+
* @set_style: sets the model's style.
|
52
|
+
* @child_added: signal emitted when a child is added.
|
53
|
+
* @child_moved: signal emitted when a child is moved in the stacking order.
|
54
|
+
* @child_removed: signal emitted when a child is removed.
|
55
|
+
* @changed: signal emitted when the model has changed.
|
56
|
+
* @child_notify: signal emitted when a child property has changed.
|
57
|
+
* @animation_finished: signal emitted when the model's animation has finished.
|
58
|
+
*
|
59
|
+
* #GooCanvasItemModelIFace holds the virtual methods that make up the
|
60
|
+
* #GooCanvasItemModel interface.
|
61
|
+
*
|
62
|
+
* Simple item models only need to implement the get_parent(), set_parent()
|
63
|
+
* and create_item() methods.
|
64
|
+
*
|
65
|
+
* Items that support transforms should also implement get_transform() and
|
66
|
+
* set_transform(). Items that support styles should implement get_style()
|
67
|
+
* and set_style().
|
68
|
+
*
|
69
|
+
* Container items must implement get_n_children() and get_child().
|
70
|
+
* Containers that support dynamic changes to their children should implement
|
71
|
+
* add_child(), move_child() and remove_child().
|
72
|
+
* Layout containers like #GooCanvasTable may implement
|
73
|
+
* get_child_property() and set_child_property().
|
74
|
+
*/
|
75
|
+
typedef struct _GooCanvasItemModelIface GooCanvasItemModelIface;
|
76
|
+
|
77
|
+
struct _GooCanvasItemModelIface
|
78
|
+
{
|
79
|
+
/*< private >*/
|
80
|
+
GTypeInterface base_iface;
|
81
|
+
|
82
|
+
/*< public >*/
|
83
|
+
/* Virtual methods that group models must implement. */
|
84
|
+
gint (* get_n_children) (GooCanvasItemModel *model);
|
85
|
+
GooCanvasItemModel* (* get_child) (GooCanvasItemModel *model,
|
86
|
+
gint child_num);
|
87
|
+
|
88
|
+
/* Virtual methods that group models may implement. */
|
89
|
+
void (* add_child) (GooCanvasItemModel *model,
|
90
|
+
GooCanvasItemModel *child,
|
91
|
+
gint position);
|
92
|
+
void (* move_child) (GooCanvasItemModel *model,
|
93
|
+
gint old_position,
|
94
|
+
gint new_position);
|
95
|
+
void (* remove_child) (GooCanvasItemModel *model,
|
96
|
+
gint child_num);
|
97
|
+
void (* get_child_property) (GooCanvasItemModel *model,
|
98
|
+
GooCanvasItemModel *child,
|
99
|
+
guint property_id,
|
100
|
+
GValue *value,
|
101
|
+
GParamSpec *pspec);
|
102
|
+
void (* set_child_property) (GooCanvasItemModel *item,
|
103
|
+
GooCanvasItemModel *child,
|
104
|
+
guint property_id,
|
105
|
+
const GValue *value,
|
106
|
+
GParamSpec *pspec);
|
107
|
+
|
108
|
+
/* Virtual methods that all item models must implement. */
|
109
|
+
GooCanvasItemModel* (* get_parent) (GooCanvasItemModel *model);
|
110
|
+
void (* set_parent) (GooCanvasItemModel *model,
|
111
|
+
GooCanvasItemModel *parent);
|
112
|
+
|
113
|
+
GooCanvasItem* (* create_item) (GooCanvasItemModel *model,
|
114
|
+
GooCanvas *canvas);
|
115
|
+
|
116
|
+
/* Virtual methods that all item models may implement. */
|
117
|
+
gboolean (* get_transform) (GooCanvasItemModel *model,
|
118
|
+
cairo_matrix_t *transform);
|
119
|
+
void (* set_transform) (GooCanvasItemModel *model,
|
120
|
+
const cairo_matrix_t *transform);
|
121
|
+
GooCanvasStyle* (* get_style) (GooCanvasItemModel *model);
|
122
|
+
void (* set_style) (GooCanvasItemModel *model,
|
123
|
+
GooCanvasStyle *style);
|
124
|
+
|
125
|
+
/* Signals. */
|
126
|
+
void (* child_added) (GooCanvasItemModel *model,
|
127
|
+
gint child_num);
|
128
|
+
void (* child_moved) (GooCanvasItemModel *model,
|
129
|
+
gint old_child_num,
|
130
|
+
gint new_child_num);
|
131
|
+
void (* child_removed) (GooCanvasItemModel *model,
|
132
|
+
gint child_num);
|
133
|
+
void (* changed) (GooCanvasItemModel *model,
|
134
|
+
gboolean recompute_bounds);
|
135
|
+
void (* child_notify) (GooCanvasItemModel *model,
|
136
|
+
GParamSpec *pspec);
|
137
|
+
|
138
|
+
void (* animation_finished) (GooCanvasItemModel *model,
|
139
|
+
gboolean stopped);
|
140
|
+
|
141
|
+
/*< private >*/
|
142
|
+
|
143
|
+
/* Padding for future expansion */
|
144
|
+
void (*_goo_canvas_reserved1) (void);
|
145
|
+
void (*_goo_canvas_reserved2) (void);
|
146
|
+
void (*_goo_canvas_reserved3) (void);
|
147
|
+
void (*_goo_canvas_reserved4) (void);
|
148
|
+
void (*_goo_canvas_reserved5) (void);
|
149
|
+
void (*_goo_canvas_reserved6) (void);
|
150
|
+
void (*_goo_canvas_reserved7) (void);
|
151
|
+
};
|
152
|
+
|
153
|
+
|
154
|
+
GType goo_canvas_item_model_get_type (void) G_GNUC_CONST;
|
155
|
+
|
156
|
+
|
157
|
+
/*
|
158
|
+
* Group functions - these should only be called on container models.
|
159
|
+
*/
|
160
|
+
gint goo_canvas_item_model_get_n_children (GooCanvasItemModel *model);
|
161
|
+
GooCanvasItemModel* goo_canvas_item_model_get_child (GooCanvasItemModel *model,
|
162
|
+
gint child_num);
|
163
|
+
void goo_canvas_item_model_add_child (GooCanvasItemModel *model,
|
164
|
+
GooCanvasItemModel *child,
|
165
|
+
gint position);
|
166
|
+
void goo_canvas_item_model_move_child (GooCanvasItemModel *model,
|
167
|
+
gint old_position,
|
168
|
+
gint new_position);
|
169
|
+
void goo_canvas_item_model_remove_child (GooCanvasItemModel *model,
|
170
|
+
gint child_num);
|
171
|
+
gint goo_canvas_item_model_find_child (GooCanvasItemModel *model,
|
172
|
+
GooCanvasItemModel *child);
|
173
|
+
|
174
|
+
void goo_canvas_item_model_get_child_property (GooCanvasItemModel *model,
|
175
|
+
GooCanvasItemModel *child,
|
176
|
+
const gchar *property_name,
|
177
|
+
GValue *value);
|
178
|
+
void goo_canvas_item_model_set_child_property (GooCanvasItemModel *model,
|
179
|
+
GooCanvasItemModel *child,
|
180
|
+
const gchar *property_name,
|
181
|
+
const GValue *value);
|
182
|
+
void goo_canvas_item_model_get_child_properties (GooCanvasItemModel *model,
|
183
|
+
GooCanvasItemModel *child,
|
184
|
+
...) G_GNUC_NULL_TERMINATED;
|
185
|
+
void goo_canvas_item_model_set_child_properties (GooCanvasItemModel *model,
|
186
|
+
GooCanvasItemModel *child,
|
187
|
+
...) G_GNUC_NULL_TERMINATED;
|
188
|
+
void goo_canvas_item_model_get_child_properties_valist (GooCanvasItemModel *model,
|
189
|
+
GooCanvasItemModel *child,
|
190
|
+
va_list var_args);
|
191
|
+
void goo_canvas_item_model_set_child_properties_valist (GooCanvasItemModel *model,
|
192
|
+
GooCanvasItemModel *child,
|
193
|
+
va_list var_args);
|
194
|
+
|
195
|
+
|
196
|
+
/*
|
197
|
+
* Model functions - these are safe to call on all models.
|
198
|
+
*/
|
199
|
+
GooCanvasItemModel* goo_canvas_item_model_get_parent (GooCanvasItemModel *model);
|
200
|
+
void goo_canvas_item_model_set_parent (GooCanvasItemModel *model,
|
201
|
+
GooCanvasItemModel *parent);
|
202
|
+
void goo_canvas_item_model_remove (GooCanvasItemModel *model);
|
203
|
+
gboolean goo_canvas_item_model_is_container (GooCanvasItemModel *model);
|
204
|
+
|
205
|
+
void goo_canvas_item_model_raise (GooCanvasItemModel *model,
|
206
|
+
GooCanvasItemModel *above);
|
207
|
+
void goo_canvas_item_model_lower (GooCanvasItemModel *model,
|
208
|
+
GooCanvasItemModel *below);
|
209
|
+
|
210
|
+
gboolean goo_canvas_item_model_get_transform (GooCanvasItemModel *model,
|
211
|
+
cairo_matrix_t *transform);
|
212
|
+
void goo_canvas_item_model_set_transform (GooCanvasItemModel *model,
|
213
|
+
const cairo_matrix_t *transform);
|
214
|
+
gboolean goo_canvas_item_model_get_simple_transform (GooCanvasItemModel *model,
|
215
|
+
gdouble *x,
|
216
|
+
gdouble *y,
|
217
|
+
gdouble *scale,
|
218
|
+
gdouble *rotation);
|
219
|
+
void goo_canvas_item_model_set_simple_transform (GooCanvasItemModel *model,
|
220
|
+
gdouble x,
|
221
|
+
gdouble y,
|
222
|
+
gdouble scale,
|
223
|
+
gdouble rotation);
|
224
|
+
|
225
|
+
void goo_canvas_item_model_translate (GooCanvasItemModel *model,
|
226
|
+
gdouble tx,
|
227
|
+
gdouble ty);
|
228
|
+
void goo_canvas_item_model_scale (GooCanvasItemModel *model,
|
229
|
+
gdouble sx,
|
230
|
+
gdouble sy);
|
231
|
+
void goo_canvas_item_model_rotate (GooCanvasItemModel *model,
|
232
|
+
gdouble degrees,
|
233
|
+
gdouble cx,
|
234
|
+
gdouble cy);
|
235
|
+
void goo_canvas_item_model_skew_x (GooCanvasItemModel *model,
|
236
|
+
gdouble degrees,
|
237
|
+
gdouble cx,
|
238
|
+
gdouble cy);
|
239
|
+
void goo_canvas_item_model_skew_y (GooCanvasItemModel *model,
|
240
|
+
gdouble degrees,
|
241
|
+
gdouble cx,
|
242
|
+
gdouble cy);
|
243
|
+
|
244
|
+
GooCanvasStyle* goo_canvas_item_model_get_style (GooCanvasItemModel *model);
|
245
|
+
void goo_canvas_item_model_set_style (GooCanvasItemModel *model,
|
246
|
+
GooCanvasStyle *style);
|
247
|
+
|
248
|
+
void goo_canvas_item_model_animate (GooCanvasItemModel *model,
|
249
|
+
gdouble x,
|
250
|
+
gdouble y,
|
251
|
+
gdouble scale,
|
252
|
+
gdouble degrees,
|
253
|
+
gboolean absolute,
|
254
|
+
gint duration,
|
255
|
+
gint step_time,
|
256
|
+
GooCanvasAnimateType type);
|
257
|
+
void goo_canvas_item_model_stop_animation (GooCanvasItemModel *model);
|
258
|
+
|
259
|
+
|
260
|
+
/*
|
261
|
+
* Functions to support child properties when implementing new canvas items.
|
262
|
+
*/
|
263
|
+
void goo_canvas_item_model_class_install_child_property (GObjectClass *mclass,
|
264
|
+
guint property_id,
|
265
|
+
GParamSpec *pspec);
|
266
|
+
GParamSpec* goo_canvas_item_model_class_find_child_property (GObjectClass *mclass,
|
267
|
+
const gchar *property_name);
|
268
|
+
GParamSpec** goo_canvas_item_model_class_list_child_properties (GObjectClass *mclass,
|
269
|
+
guint *n_properties);
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
G_END_DECLS
|
274
|
+
|
275
|
+
#endif /* __GOO_CANVAS_ITEM_MODEL_H__ */
|
@@ -0,0 +1,247 @@
|
|
1
|
+
/*
|
2
|
+
* GooCanvas. Copyright (C) 2005-6 Damon Chaplin.
|
3
|
+
* Released under the GNU LGPL license. See COPYING for details.
|
4
|
+
*
|
5
|
+
* goocanvasitemsimple.h - abstract base class for simple items.
|
6
|
+
*/
|
7
|
+
#ifndef __GOO_CANVAS_ITEM_SIMPLE_H__
|
8
|
+
#define __GOO_CANVAS_ITEM_SIMPLE_H__
|
9
|
+
|
10
|
+
#include <gtk/gtk.h>
|
11
|
+
#include "goocanvasitem.h"
|
12
|
+
#include "goocanvasitemmodel.h"
|
13
|
+
#include "goocanvasstyle.h"
|
14
|
+
#include "goocanvasutils.h"
|
15
|
+
|
16
|
+
G_BEGIN_DECLS
|
17
|
+
|
18
|
+
|
19
|
+
/**
|
20
|
+
* GooCanvasItemSimpleData
|
21
|
+
* @style: the style to draw with.
|
22
|
+
* @transform: the transformation matrix of the item, or %NULL.
|
23
|
+
* @clip_path_commands: an array of #GooCanvasPathCommand specifying the clip
|
24
|
+
* path of the item, or %NULL.
|
25
|
+
* @tooltip: the item's tooltip.
|
26
|
+
* @visibility_threshold: the threshold scale setting at which to show the item
|
27
|
+
* (if the @visibility setting is set to %VISIBLE_ABOVE_THRESHOLD).
|
28
|
+
* @visibility: the #GooCanvasItemVisibility setting specifying whether the
|
29
|
+
* item is visible, invisible, or visible above a given canvas scale setting.
|
30
|
+
* @pointer_events: the #GooCanvasPointerEvents setting specifying the events
|
31
|
+
* the item should receive.
|
32
|
+
* @can_focus: if the item can take the keyboard focus.
|
33
|
+
* @own_style: if the item has its own style, rather than using its parent's.
|
34
|
+
* @clip_fill_rule: the #cairo_fill_rule_t setting specifying the fill rule
|
35
|
+
* used for the clip path.
|
36
|
+
* @is_static: if the item is static.
|
37
|
+
*
|
38
|
+
* This is the data common to both the model and view classes.
|
39
|
+
*/
|
40
|
+
typedef struct _GooCanvasItemSimpleData GooCanvasItemSimpleData;
|
41
|
+
struct _GooCanvasItemSimpleData
|
42
|
+
{
|
43
|
+
GooCanvasStyle *style;
|
44
|
+
cairo_matrix_t *transform;
|
45
|
+
GArray *clip_path_commands;
|
46
|
+
gchar *tooltip;
|
47
|
+
|
48
|
+
/*< public >*/
|
49
|
+
gdouble visibility_threshold;
|
50
|
+
guint visibility : 2;
|
51
|
+
guint pointer_events : 4;
|
52
|
+
guint can_focus : 1;
|
53
|
+
guint own_style : 1;
|
54
|
+
guint clip_fill_rule : 4;
|
55
|
+
guint is_static : 1;
|
56
|
+
|
57
|
+
/*< private >*/
|
58
|
+
/* We might use this in future for a cache setting - never/always/visible. */
|
59
|
+
guint cache_setting : 2;
|
60
|
+
/* We might need this for tooltips in future. */
|
61
|
+
guint has_tooltip : 1;
|
62
|
+
};
|
63
|
+
|
64
|
+
|
65
|
+
#define GOO_TYPE_CANVAS_ITEM_SIMPLE (goo_canvas_item_simple_get_type ())
|
66
|
+
#define GOO_CANVAS_ITEM_SIMPLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_ITEM_SIMPLE, GooCanvasItemSimple))
|
67
|
+
#define GOO_CANVAS_ITEM_SIMPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_ITEM_SIMPLE, GooCanvasItemSimpleClass))
|
68
|
+
#define GOO_IS_CANVAS_ITEM_SIMPLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_ITEM_SIMPLE))
|
69
|
+
#define GOO_IS_CANVAS_ITEM_SIMPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_ITEM_SIMPLE))
|
70
|
+
#define GOO_CANVAS_ITEM_SIMPLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_ITEM_SIMPLE, GooCanvasItemSimpleClass))
|
71
|
+
|
72
|
+
|
73
|
+
typedef struct _GooCanvasItemSimple GooCanvasItemSimple;
|
74
|
+
typedef struct _GooCanvasItemSimpleClass GooCanvasItemSimpleClass;
|
75
|
+
|
76
|
+
typedef struct _GooCanvasItemModelSimple GooCanvasItemModelSimple;
|
77
|
+
|
78
|
+
/**
|
79
|
+
* GooCanvasItemSimple
|
80
|
+
* @canvas: the canvas.
|
81
|
+
* @parent: the parent item.
|
82
|
+
* @model: the item's model, if it has one.
|
83
|
+
* @simple_data: data that is common to both the model and view classes. If
|
84
|
+
* the canvas item has a model, this will point to the model's
|
85
|
+
* #GooCanvasItemSimpleData, otherwise the canvas item will have its own
|
86
|
+
* #GooCanvasItemSimpleData.
|
87
|
+
* @bounds: the bounds of the item, in device space.
|
88
|
+
* @need_update: if the item needs to recompute its bounds and redraw.
|
89
|
+
* @need_entire_subtree_update: if all descendants need to be updated.
|
90
|
+
*
|
91
|
+
* The #GooCanvasItemSimple-struct struct contains the basic data needed to
|
92
|
+
* implement canvas items.
|
93
|
+
*/
|
94
|
+
struct _GooCanvasItemSimple
|
95
|
+
{
|
96
|
+
/* <private> */
|
97
|
+
GObject parent_object;
|
98
|
+
|
99
|
+
/* <public> */
|
100
|
+
GooCanvas *canvas;
|
101
|
+
GooCanvasItem *parent;
|
102
|
+
GooCanvasItemModelSimple *model;
|
103
|
+
GooCanvasItemSimpleData *simple_data;
|
104
|
+
GooCanvasBounds bounds;
|
105
|
+
guint need_update : 1;
|
106
|
+
guint need_entire_subtree_update : 1;
|
107
|
+
|
108
|
+
/* <private> */
|
109
|
+
/* We might use this in future for things like a cache. */
|
110
|
+
gpointer priv;
|
111
|
+
};
|
112
|
+
|
113
|
+
/**
|
114
|
+
* GooCanvasItemSimpleClass
|
115
|
+
* @simple_create_path: simple subclasses that draw basic shapes and paths only
|
116
|
+
* need to override this one method. It creates the path for the item.
|
117
|
+
* All updating, painting and hit-testing is provided automatically by the
|
118
|
+
* #GooCanvasItemSimple class. (This method is used by the builtin
|
119
|
+
* #GooCanvasEllipse, #GooCanvasRect and #GooCanvasPath items.)
|
120
|
+
* More complicated subclasses must override @simple_update, @simple_paint and
|
121
|
+
* @simple_is_item_at instead.
|
122
|
+
* @simple_update: subclasses should override this to calculate their new
|
123
|
+
* bounds, in user space.
|
124
|
+
* @simple_paint: subclasses should override this to paint their item.
|
125
|
+
* @simple_is_item_at: subclasses should override this to do hit-testing.
|
126
|
+
*
|
127
|
+
* The #GooCanvasItemSimpleClass-struct struct contains several methods that
|
128
|
+
* subclasses can override.
|
129
|
+
*
|
130
|
+
* Simple items need only implement the create_path() method. More complex
|
131
|
+
* items must override the update(), paint() and is_item_at() methods instead.
|
132
|
+
*/
|
133
|
+
struct _GooCanvasItemSimpleClass
|
134
|
+
{
|
135
|
+
/*< private >*/
|
136
|
+
GObjectClass parent_class;
|
137
|
+
|
138
|
+
/*< public >*/
|
139
|
+
void (* simple_create_path) (GooCanvasItemSimple *simple,
|
140
|
+
cairo_t *cr);
|
141
|
+
|
142
|
+
void (* simple_update) (GooCanvasItemSimple *simple,
|
143
|
+
cairo_t *cr);
|
144
|
+
void (* simple_paint) (GooCanvasItemSimple *simple,
|
145
|
+
cairo_t *cr,
|
146
|
+
const GooCanvasBounds *bounds);
|
147
|
+
gboolean (* simple_is_item_at) (GooCanvasItemSimple *simple,
|
148
|
+
gdouble x,
|
149
|
+
gdouble y,
|
150
|
+
cairo_t *cr,
|
151
|
+
gboolean is_pointer_event);
|
152
|
+
|
153
|
+
/*< private >*/
|
154
|
+
|
155
|
+
/* Padding for future expansion */
|
156
|
+
void (*_goo_canvas_reserved1) (void);
|
157
|
+
void (*_goo_canvas_reserved2) (void);
|
158
|
+
void (*_goo_canvas_reserved3) (void);
|
159
|
+
void (*_goo_canvas_reserved4) (void);
|
160
|
+
};
|
161
|
+
|
162
|
+
|
163
|
+
GType goo_canvas_item_simple_get_type (void) G_GNUC_CONST;
|
164
|
+
|
165
|
+
|
166
|
+
void goo_canvas_item_simple_get_path_bounds (GooCanvasItemSimple *item,
|
167
|
+
cairo_t *cr,
|
168
|
+
GooCanvasBounds *bounds);
|
169
|
+
void goo_canvas_item_simple_user_bounds_to_device (GooCanvasItemSimple *item,
|
170
|
+
cairo_t *cr,
|
171
|
+
GooCanvasBounds *bounds);
|
172
|
+
void goo_canvas_item_simple_user_bounds_to_parent (GooCanvasItemSimple *item,
|
173
|
+
cairo_t *cr,
|
174
|
+
GooCanvasBounds *bounds);
|
175
|
+
gboolean goo_canvas_item_simple_check_in_path (GooCanvasItemSimple *item,
|
176
|
+
gdouble x,
|
177
|
+
gdouble y,
|
178
|
+
cairo_t *cr,
|
179
|
+
GooCanvasPointerEvents pointer_events);
|
180
|
+
void goo_canvas_item_simple_paint_path (GooCanvasItemSimple *item,
|
181
|
+
cairo_t *cr);
|
182
|
+
|
183
|
+
void goo_canvas_item_simple_changed (GooCanvasItemSimple *item,
|
184
|
+
gboolean recompute_bounds);
|
185
|
+
void goo_canvas_item_simple_check_style (GooCanvasItemSimple *item);
|
186
|
+
gdouble goo_canvas_item_simple_get_line_width (GooCanvasItemSimple *item);
|
187
|
+
void goo_canvas_item_simple_set_model (GooCanvasItemSimple *item,
|
188
|
+
GooCanvasItemModel *model);
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
#define GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE (goo_canvas_item_model_simple_get_type ())
|
195
|
+
#define GOO_CANVAS_ITEM_MODEL_SIMPLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE, GooCanvasItemModelSimple))
|
196
|
+
#define GOO_CANVAS_ITEM_MODEL_SIMPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE, GooCanvasItemModelSimpleClass))
|
197
|
+
#define GOO_IS_CANVAS_ITEM_MODEL_SIMPLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE))
|
198
|
+
#define GOO_IS_CANVAS_ITEM_MODEL_SIMPLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE))
|
199
|
+
#define GOO_CANVAS_ITEM_MODEL_SIMPLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_ITEM_MODEL_SIMPLE, GooCanvasItemModelSimpleClass))
|
200
|
+
|
201
|
+
|
202
|
+
typedef struct _GooCanvasItemModelSimpleClass GooCanvasItemModelSimpleClass;
|
203
|
+
|
204
|
+
/**
|
205
|
+
* GooCanvasItemModelSimple
|
206
|
+
* @parent: the parent model.
|
207
|
+
* @simple_data: data used by the canvas item for viewing the model.
|
208
|
+
*
|
209
|
+
* The #GooCanvasItemModelSimple-struct struct contains the basic data needed
|
210
|
+
* to implement canvas item models.
|
211
|
+
*/
|
212
|
+
struct _GooCanvasItemModelSimple
|
213
|
+
{
|
214
|
+
GObject parent_object;
|
215
|
+
|
216
|
+
/*< public >*/
|
217
|
+
GooCanvasItemModel *parent;
|
218
|
+
GooCanvasItemSimpleData simple_data;
|
219
|
+
|
220
|
+
/*< private >*/
|
221
|
+
|
222
|
+
/* The title and description of the item for accessibility. */
|
223
|
+
gchar *title;
|
224
|
+
gchar *description;
|
225
|
+
};
|
226
|
+
|
227
|
+
|
228
|
+
struct _GooCanvasItemModelSimpleClass
|
229
|
+
{
|
230
|
+
GObjectClass parent_class;
|
231
|
+
|
232
|
+
/*< private >*/
|
233
|
+
|
234
|
+
/* Padding for future expansion */
|
235
|
+
void (*_goo_canvas_reserved1) (void);
|
236
|
+
void (*_goo_canvas_reserved2) (void);
|
237
|
+
void (*_goo_canvas_reserved3) (void);
|
238
|
+
void (*_goo_canvas_reserved4) (void);
|
239
|
+
};
|
240
|
+
|
241
|
+
|
242
|
+
GType goo_canvas_item_model_simple_get_type (void) G_GNUC_CONST;
|
243
|
+
|
244
|
+
|
245
|
+
G_END_DECLS
|
246
|
+
|
247
|
+
#endif /* __GOO_CANVAS_ITEM_SIMPLE_H__ */
|
@@ -0,0 +1,61 @@
|
|
1
|
+
|
2
|
+
#ifndef __goo_canvas_marshal_MARSHAL_H__
|
3
|
+
#define __goo_canvas_marshal_MARSHAL_H__
|
4
|
+
|
5
|
+
#include <glib-object.h>
|
6
|
+
|
7
|
+
G_BEGIN_DECLS
|
8
|
+
|
9
|
+
/* VOID:VOID (./goocanvasmarshal.list:1) */
|
10
|
+
#define goo_canvas_marshal_VOID__VOID g_cclosure_marshal_VOID__VOID
|
11
|
+
|
12
|
+
/* VOID:INT (./goocanvasmarshal.list:2) */
|
13
|
+
#define goo_canvas_marshal_VOID__INT g_cclosure_marshal_VOID__INT
|
14
|
+
|
15
|
+
/* VOID:INT,INT (./goocanvasmarshal.list:3) */
|
16
|
+
extern void goo_canvas_marshal_VOID__INT_INT (GClosure *closure,
|
17
|
+
GValue *return_value,
|
18
|
+
guint n_param_values,
|
19
|
+
const GValue *param_values,
|
20
|
+
gpointer invocation_hint,
|
21
|
+
gpointer marshal_data);
|
22
|
+
|
23
|
+
/* VOID:BOOLEAN (./goocanvasmarshal.list:4) */
|
24
|
+
#define goo_canvas_marshal_VOID__BOOLEAN g_cclosure_marshal_VOID__BOOLEAN
|
25
|
+
|
26
|
+
/* VOID:OBJECT,OBJECT (./goocanvasmarshal.list:5) */
|
27
|
+
extern void goo_canvas_marshal_VOID__OBJECT_OBJECT (GClosure *closure,
|
28
|
+
GValue *return_value,
|
29
|
+
guint n_param_values,
|
30
|
+
const GValue *param_values,
|
31
|
+
gpointer invocation_hint,
|
32
|
+
gpointer marshal_data);
|
33
|
+
|
34
|
+
/* BOOLEAN:BOXED (./goocanvasmarshal.list:6) */
|
35
|
+
extern void goo_canvas_marshal_BOOLEAN__BOXED (GClosure *closure,
|
36
|
+
GValue *return_value,
|
37
|
+
guint n_param_values,
|
38
|
+
const GValue *param_values,
|
39
|
+
gpointer invocation_hint,
|
40
|
+
gpointer marshal_data);
|
41
|
+
|
42
|
+
/* BOOLEAN:OBJECT,BOXED (./goocanvasmarshal.list:7) */
|
43
|
+
extern void goo_canvas_marshal_BOOLEAN__OBJECT_BOXED (GClosure *closure,
|
44
|
+
GValue *return_value,
|
45
|
+
guint n_param_values,
|
46
|
+
const GValue *param_values,
|
47
|
+
gpointer invocation_hint,
|
48
|
+
gpointer marshal_data);
|
49
|
+
|
50
|
+
/* BOOLEAN:DOUBLE,DOUBLE,BOOLEAN,OBJECT (./goocanvasmarshal.list:8) */
|
51
|
+
extern void goo_canvas_marshal_BOOLEAN__DOUBLE_DOUBLE_BOOLEAN_OBJECT (GClosure *closure,
|
52
|
+
GValue *return_value,
|
53
|
+
guint n_param_values,
|
54
|
+
const GValue *param_values,
|
55
|
+
gpointer invocation_hint,
|
56
|
+
gpointer marshal_data);
|
57
|
+
|
58
|
+
G_END_DECLS
|
59
|
+
|
60
|
+
#endif /* __goo_canvas_marshal_MARSHAL_H__ */
|
61
|
+
|
@@ -0,0 +1,116 @@
|
|
1
|
+
/*
|
2
|
+
* GooCanvas. Copyright (C) 2005-6 Damon Chaplin.
|
3
|
+
* Released under the GNU LGPL license. See COPYING for details.
|
4
|
+
*
|
5
|
+
* goocanvaspath.h - a path item, very similar to the SVG path element.
|
6
|
+
*/
|
7
|
+
#ifndef __GOO_CANVAS_PATH_H__
|
8
|
+
#define __GOO_CANVAS_PATH_H__
|
9
|
+
|
10
|
+
#include <gtk/gtk.h>
|
11
|
+
#include "goocanvasitemsimple.h"
|
12
|
+
|
13
|
+
G_BEGIN_DECLS
|
14
|
+
|
15
|
+
|
16
|
+
/* This is the data used by both model and view classes. */
|
17
|
+
typedef struct _GooCanvasPathData GooCanvasPathData;
|
18
|
+
struct _GooCanvasPathData
|
19
|
+
{
|
20
|
+
/* An array of GooCanvasPathCommand. */
|
21
|
+
GArray *path_commands;
|
22
|
+
};
|
23
|
+
|
24
|
+
|
25
|
+
#define GOO_TYPE_CANVAS_PATH (goo_canvas_path_get_type ())
|
26
|
+
#define GOO_CANVAS_PATH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_PATH, GooCanvasPath))
|
27
|
+
#define GOO_CANVAS_PATH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_PATH, GooCanvasPathClass))
|
28
|
+
#define GOO_IS_CANVAS_PATH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_PATH))
|
29
|
+
#define GOO_IS_CANVAS_PATH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_PATH))
|
30
|
+
#define GOO_CANVAS_PATH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_PATH, GooCanvasPathClass))
|
31
|
+
|
32
|
+
|
33
|
+
typedef struct _GooCanvasPath GooCanvasPath;
|
34
|
+
typedef struct _GooCanvasPathClass GooCanvasPathClass;
|
35
|
+
|
36
|
+
/**
|
37
|
+
* GooCanvasPath
|
38
|
+
*
|
39
|
+
* The #GooCanvasPath-struct struct contains private data only.
|
40
|
+
*/
|
41
|
+
struct _GooCanvasPath
|
42
|
+
{
|
43
|
+
GooCanvasItemSimple parent;
|
44
|
+
|
45
|
+
GooCanvasPathData *path_data;
|
46
|
+
};
|
47
|
+
|
48
|
+
struct _GooCanvasPathClass
|
49
|
+
{
|
50
|
+
GooCanvasItemSimpleClass parent_class;
|
51
|
+
|
52
|
+
/*< private >*/
|
53
|
+
|
54
|
+
/* Padding for future expansion */
|
55
|
+
void (*_goo_canvas_reserved1) (void);
|
56
|
+
void (*_goo_canvas_reserved2) (void);
|
57
|
+
void (*_goo_canvas_reserved3) (void);
|
58
|
+
void (*_goo_canvas_reserved4) (void);
|
59
|
+
};
|
60
|
+
|
61
|
+
|
62
|
+
GType goo_canvas_path_get_type (void) G_GNUC_CONST;
|
63
|
+
|
64
|
+
GooCanvasItem* goo_canvas_path_new (GooCanvasItem *parent,
|
65
|
+
const gchar *path_data,
|
66
|
+
...);
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
#define GOO_TYPE_CANVAS_PATH_MODEL (goo_canvas_path_model_get_type ())
|
71
|
+
#define GOO_CANVAS_PATH_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GOO_TYPE_CANVAS_PATH_MODEL, GooCanvasPathModel))
|
72
|
+
#define GOO_CANVAS_PATH_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GOO_TYPE_CANVAS_PATH_MODEL, GooCanvasPathModelClass))
|
73
|
+
#define GOO_IS_CANVAS_PATH_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GOO_TYPE_CANVAS_PATH_MODEL))
|
74
|
+
#define GOO_IS_CANVAS_PATH_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GOO_TYPE_CANVAS_PATH_MODEL))
|
75
|
+
#define GOO_CANVAS_PATH_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GOO_TYPE_CANVAS_PATH_MODEL, GooCanvasPathModelClass))
|
76
|
+
|
77
|
+
|
78
|
+
typedef struct _GooCanvasPathModel GooCanvasPathModel;
|
79
|
+
typedef struct _GooCanvasPathModelClass GooCanvasPathModelClass;
|
80
|
+
|
81
|
+
/**
|
82
|
+
* GooCanvasPathModel
|
83
|
+
*
|
84
|
+
* The #GooCanvasPathModel-struct struct contains private data only.
|
85
|
+
*/
|
86
|
+
struct _GooCanvasPathModel
|
87
|
+
{
|
88
|
+
GooCanvasItemModelSimple parent_object;
|
89
|
+
|
90
|
+
GooCanvasPathData path_data;
|
91
|
+
};
|
92
|
+
|
93
|
+
struct _GooCanvasPathModelClass
|
94
|
+
{
|
95
|
+
GooCanvasItemModelSimpleClass parent_class;
|
96
|
+
|
97
|
+
/*< private >*/
|
98
|
+
|
99
|
+
/* Padding for future expansion */
|
100
|
+
void (*_goo_canvas_reserved1) (void);
|
101
|
+
void (*_goo_canvas_reserved2) (void);
|
102
|
+
void (*_goo_canvas_reserved3) (void);
|
103
|
+
void (*_goo_canvas_reserved4) (void);
|
104
|
+
};
|
105
|
+
|
106
|
+
|
107
|
+
GType goo_canvas_path_model_get_type (void) G_GNUC_CONST;
|
108
|
+
|
109
|
+
GooCanvasItemModel* goo_canvas_path_model_new (GooCanvasItemModel *parent,
|
110
|
+
const gchar *path_data,
|
111
|
+
...);
|
112
|
+
|
113
|
+
|
114
|
+
G_END_DECLS
|
115
|
+
|
116
|
+
#endif /* __GOO_CANVAS_PATH_H__ */
|