summaryrefslogtreecommitdiffstats
path: root/src/dialogs/clonetiler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/dialogs/clonetiler.cpp')
-rw-r--r--src/dialogs/clonetiler.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/dialogs/clonetiler.cpp b/src/dialogs/clonetiler.cpp
index d84038db8..194f341e1 100644
--- a/src/dialogs/clonetiler.cpp
+++ b/src/dialogs/clonetiler.cpp
@@ -853,7 +853,7 @@ static void clonetiler_trace_setup(SPDocument *doc, gdouble zoom, SPItem *origin
/* Create ArenaItem and set transform */
trace_visionkey = SPItem::display_key_new(1);
trace_doc = doc;
- trace_root = SP_ITEM(trace_doc->getRoot())->invoke_show((NRArena *) trace_arena, trace_visionkey, SP_ITEM_SHOW_DISPLAY);
+ trace_root = trace_doc->getRoot()->invoke_show((NRArena *) trace_arena, trace_visionkey, SP_ITEM_SHOW_DISPLAY);
// hide the (current) original and any tiled clones, we only want to pick the background
original->invoke_hide(trace_visionkey);
@@ -907,7 +907,7 @@ static guint32 clonetiler_trace_pick(Geom::Rect box)
static void clonetiler_trace_finish()
{
if (trace_doc) {
- SP_ITEM(trace_doc->getRoot())->invoke_hide(trace_visionkey);
+ trace_doc->getRoot()->invoke_hide(trace_visionkey);
}
if (trace_arena) {
((NRObject *) trace_arena)->unreference();
@@ -1067,6 +1067,7 @@ static void clonetiler_apply(GtkWidget */*widget*/, void *)
gdk_window_process_all_updates();
SPObject *obj = selection->singleItem();
+ SPItem *item = SP_IS_ITEM(obj) ? SP_ITEM(obj) : 0;
Inkscape::XML::Node *obj_repr = obj->getRepr();
const char *id_href = g_strdup_printf("#%s", obj_repr->attribute("id"));
SPObject *parent = obj->parent;
@@ -1156,7 +1157,7 @@ static void clonetiler_apply(GtkWidget */*widget*/, void *)
double gamma_picked = prefs->getDoubleLimited(prefs_path + "gamma_picked", 0, -10, 10);
if (dotrace) {
- clonetiler_trace_setup (sp_desktop_document(desktop), 1.0, SP_ITEM (obj));
+ clonetiler_trace_setup (sp_desktop_document(desktop), 1.0, item);
}
Geom::Point center;
@@ -1185,14 +1186,14 @@ static void clonetiler_apply(GtkWidget */*widget*/, void *)
bool prefs_bbox = prefs->getBool("/tools/bounding_box", false);
SPItem::BBoxType bbox_type = ( prefs_bbox ?
SPItem::APPROXIMATE_BBOX : SPItem::GEOMETRIC_BBOX );
- Geom::OptRect r = SP_ITEM(obj)->getBounds(SP_ITEM(obj)->i2doc_affine(),
+ Geom::OptRect r = item->getBounds(item->i2doc_affine(),
bbox_type);
if (r) {
w = r->dimensions()[Geom::X];
h = r->dimensions()[Geom::Y];
x0 = r->min()[Geom::X];
y0 = r->min()[Geom::Y];
- center = desktop->dt2doc(SP_ITEM(obj)->getCenter());
+ center = desktop->dt2doc(item->getCenter());
sp_repr_set_svg_double(obj_repr, "inkscape:tile-cx", center[Geom::X]);
sp_repr_set_svg_double(obj_repr, "inkscape:tile-cy", center[Geom::Y]);
@@ -1408,7 +1409,7 @@ static void clonetiler_apply(GtkWidget */*widget*/, void *)
Geom::Point new_center;
bool center_set = false;
if (obj_repr->attribute("inkscape:transform-center-x") || obj_repr->attribute("inkscape:transform-center-y")) {
- new_center = desktop->dt2doc(SP_ITEM(obj)->getCenter()) * t;
+ new_center = desktop->dt2doc(item->getCenter()) * t;
center_set = true;
}