22
22
#define SP_IS_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SP_TYPE_GROUP))
23
23
#define SP_IS_GROUP_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SP_TYPE_GROUP))
25
27
struct SPGroup : public SPItem {
26
28
enum LayerMode { GROUP, LAYER };
50
54
SPItemClass parent_class;
58
* Virtual methods of SPGroup
62
CGroup(SPGroup *group);
65
virtual void onChildAdded(Inkscape::XML::Node *child);
66
virtual void onChildRemoved(Inkscape::XML::Node *child);
67
virtual void onUpdate(SPCtx *ctx, unsigned int flags);
68
virtual void onModified(guint flags);
69
virtual void calculateBBox(NRRect *bbox, NR::Matrix const &transform, unsigned const flags);
70
virtual void onPrint(SPPrintContext *ctx);
71
virtual void onOrderChanged(Inkscape::XML::Node *child, Inkscape::XML::Node *old_ref, Inkscape::XML::Node *new_ref);
72
virtual gchar *getDescription();
73
virtual NRArenaItem *show (NRArena *arena, unsigned int key, unsigned int flags);
74
virtual void hide (unsigned int key);
79
enum Action { ActionGeneral, ActionBBox, ActionUpdate, ActionShow };
80
virtual GSList *_childList(bool add_ref, Action action = ActionGeneral);
81
virtual void _showChildren (NRArena *arena, NRArenaItem *ai, unsigned int key, unsigned int flags);
53
86
GType sp_group_get_type (void);
55
88
void sp_item_group_ungroup (SPGroup *group, GSList **children, bool do_done = true);