/*
7 * Krzysztof KosiĆski <tweenk.pl@gmail.com>
9 * Copyright (C) 2011 Authors
10 * Released under GNU GPL v2+, read the file
'COPYING' for more information.
13#ifndef INKSCAPE_DISPLAY_DRAWING_GROUP_H
14#define INKSCAPE_DISPLAY_DRAWING_GROUP_H
25 int tag()
const override {
return tag_of<
decltype(*this)>; }
39 bool _canClip()
const override {
return true; }
constexpr int tag_of
Convenience function to retrieve the tag (class id) of a given type.
3x3 matrix representing an affine transformation.
Axis aligned, non-empty, generic rectangle.
Two-dimensional point that doubles as a vector.
Minimal wrapper over Cairo.
unsigned _updateItem(Geom::IntRect const &area, UpdateContext const &ctx, unsigned flags, unsigned reset) override
int tag() const override
Unlink this node and its subtree from the rendering tree and destroy.
void setPickChildren(bool)
Set whether the group returns children from pick calls.
std::unique_ptr< Geom::Affine > _child_transform
bool _canClip() const override
DrawingItem * _pickItem(Geom::Point const &p, double delta, unsigned flags) override
void setChildTransform(Geom::Affine const &)
Set additional transform for the group.
~DrawingGroup() override=default
unsigned _renderItem(DrawingContext &dc, RenderContext &rc, Geom::IntRect const &area, unsigned flags, DrawingItem const *stop_at) const override
void _clipItem(DrawingContext &dc, RenderContext &rc, Geom::IntRect const &area) const override
SVG drawing item for display.
Drawing & drawing() const
unsigned _pick_children
For groups: if true, children are returned from pick(), otherwise the group is returned.
Canvas item belonging to an SVG drawing element.
Helper class to stream background task notifications as a series of messages.