summaryrefslogtreecommitdiffstats
path: root/src/extension/implementation
diff options
context:
space:
mode:
authorJabier Arraiza Cenoz <jabier.arraiza@marker.es>2015-07-24 23:26:11 +0000
committerJabiertxof <jtx@jtx.marker.es>2015-07-24 23:26:11 +0000
commit7b6ffd82650ee1e20a53b0631d5c2dddef58e8d5 (patch)
tree48cae26bf789b11d79f72efc16a6676f960eaaa6 /src/extension/implementation
parentupdate to trunk (diff)
parent3D box tool: the shift key must not prevent snapping of the vanishing point. ... (diff)
downloadinkscape-7b6ffd82650ee1e20a53b0631d5c2dddef58e8d5.tar.gz
inkscape-7b6ffd82650ee1e20a53b0631d5c2dddef58e8d5.zip
update to trunk
(bzr r12588.1.45)
Diffstat (limited to 'src/extension/implementation')
-rw-r--r--src/extension/implementation/implementation.cpp8
-rw-r--r--src/extension/implementation/implementation.h9
-rw-r--r--src/extension/implementation/script.cpp23
3 files changed, 17 insertions, 23 deletions
diff --git a/src/extension/implementation/implementation.cpp b/src/extension/implementation/implementation.cpp
index 52f63499a..b0ff3e91c 100644
--- a/src/extension/implementation/implementation.cpp
+++ b/src/extension/implementation/implementation.cpp
@@ -47,12 +47,10 @@ Gtk::Widget *Implementation::prefs_effect(Inkscape::Extension::Effect *module, I
SPDocument * current_document = view->doc();
- using Inkscape::Util::GSListConstIterator;
- // FIXME very unsafe cast
- GSListConstIterator<SPItem *> selected = ((SPDesktop *)view)->getSelection()->itemList();
+ std::vector<SPItem*> selected = ((SPDesktop *)view)->getSelection()->itemList();
Inkscape::XML::Node const* first_select = NULL;
- if (selected != NULL) {
- const SPItem * item = *selected;
+ if (!selected.empty()) {
+ const SPItem * item = selected[0];
first_select = item->getRepr();
}
diff --git a/src/extension/implementation/implementation.h b/src/extension/implementation/implementation.h
index fb323cd78..f6f933aaf 100644
--- a/src/extension/implementation/implementation.h
+++ b/src/extension/implementation/implementation.h
@@ -15,14 +15,7 @@
#include <vector>
#include <sigc++/signal.h>
#include <glibmm/value.h>
-
-namespace Geom {
- class Affine;
- class OptRect;
- class Path;
- typedef std::vector<Path> PathVector;
- class Point;
-}
+#include <2geom/forward.h>
namespace Gtk {
class Widget;
diff --git a/src/extension/implementation/script.cpp b/src/extension/implementation/script.cpp
index 52c360fcd..e07a3963c 100644
--- a/src/extension/implementation/script.cpp
+++ b/src/extension/implementation/script.cpp
@@ -689,14 +689,13 @@ void Script::effect(Inkscape::Extension::Effect *module,
return;
}
- Inkscape::Util::GSListConstIterator<SPItem *> selected =
+ std::vector<SPItem*> selected =
desktop->getSelection()->itemList(); //desktop should not be NULL since doc was checked and desktop is a casted pointer
- while ( selected != NULL ) {
+ for(std::vector<SPItem*>::const_iterator x = selected.begin(); x != selected.end(); x++){
Glib::ustring selected_id;
selected_id += "--id=";
- selected_id += (*selected)->getId();
+ selected_id += (*x)->getId();
params.insert(params.begin(), selected_id);
- ++selected;
}
file_listener fileout;
@@ -813,6 +812,12 @@ void Script::copy_doc (Inkscape::XML::Node * oldroot, Inkscape::XML::Node * newr
}
}
+ if(!oldroot_namedview)
+ {
+ g_warning("Error on copy_doc: No namedview on destination document.");
+ return;
+ }
+
// Unparent (delete)
for (unsigned int i = 0; i < delete_list.size(); i++) {
sp_repr_unparent(delete_list[i]);
@@ -824,12 +829,10 @@ void Script::copy_doc (Inkscape::XML::Node * oldroot, Inkscape::XML::Node * newr
child = child->next()) {
if (!strcmp("sodipodi:namedview", child->name())) {
newroot_namedview = child;
- if (oldroot_namedview != NULL) {
- for (Inkscape::XML::Node * newroot_namedview_child = child->firstChild();
- newroot_namedview_child != NULL;
- newroot_namedview_child = newroot_namedview_child->next()) {
- oldroot_namedview->appendChild(newroot_namedview_child->duplicate(oldroot->document()));
- }
+ for (Inkscape::XML::Node * newroot_namedview_child = child->firstChild();
+ newroot_namedview_child != NULL;
+ newroot_namedview_child = newroot_namedview_child->next()) {
+ oldroot_namedview->appendChild(newroot_namedview_child->duplicate(oldroot->document()));
}
} else {
oldroot->appendChild(child->duplicate(oldroot->document()));