summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorThomas Holder <thomas@thomas-holder.de>2018-09-27 15:48:12 +0000
committerThomas Holder <thomas@thomas-holder.de>2018-09-27 15:50:23 +0000
commit526e8ead4e28bd8c77c4b4b12ecdbccd29b1cf90 (patch)
tree1971030c29796a4b1e443abe8d79d24ac87abab0 /src
parentPropagate IconRenderer's activate signal so we don't have to guess where the ... (diff)
downloadinkscape-526e8ead4e28bd8c77c4b4b12ecdbccd29b1cf90.tar.gz
inkscape-526e8ead4e28bd8c77c4b4b12ecdbccd29b1cf90.zip
SP_ACTIVE_DESKTOP: check for NULL or eliminate
Diffstat (limited to 'src')
-rw-r--r--src/document.cpp3
-rw-r--r--src/extension/effect.cpp2
-rw-r--r--src/helper/stock-items.cpp7
-rw-r--r--src/object/sp-item.cpp2
-rw-r--r--src/selection.cpp4
5 files changed, 7 insertions, 11 deletions
diff --git a/src/document.cpp b/src/document.cpp
index a9a254a06..792e6fe4b 100644
--- a/src/document.cpp
+++ b/src/document.cpp
@@ -1608,10 +1608,11 @@ std::vector<SPItem*> SPDocument::getItemsAtPoints(unsigned const key, std::vecto
build_flat_item_list(key, SP_GROUP(this->root), true);
_node_cache_valid=true;
}
- SPObject *current_layer = SP_ACTIVE_DESKTOP->currentLayer();
+ SPObject *current_layer = nullptr;
SPDesktop *desktop = SP_ACTIVE_DESKTOP;
Inkscape::LayerModel *layer_model = nullptr;
if(desktop){
+ current_layer = desktop->currentLayer();
layer_model = desktop->layers;
}
size_t item_counter = 0;
diff --git a/src/extension/effect.cpp b/src/extension/effect.cpp
index 1cf624ad0..c86bc5db1 100644
--- a/src/extension/effect.cpp
+++ b/src/extension/effect.cpp
@@ -13,7 +13,6 @@
#include "helper/action.h"
#include "ui/view/view.h"
-#include "desktop.h"
#include "implementation/implementation.h"
#include "effect.h"
#include "execution-env.h"
@@ -270,7 +269,6 @@ Effect::effect (Inkscape::UI::View::View * doc)
if (!loaded())
set_state(Extension::STATE_LOADED);
if (!loaded()) return;
- SPDesktop *desktop = SP_ACTIVE_DESKTOP;
ExecutionEnv executionEnv(this, doc);
execution_env = &executionEnv;
timer->lock();
diff --git a/src/helper/stock-items.cpp b/src/helper/stock-items.cpp
index 75dd957c5..23259ec64 100644
--- a/src/helper/stock-items.cpp
+++ b/src/helper/stock-items.cpp
@@ -26,7 +26,6 @@
#include <xml/repr.h>
#include "document-private.h"
-#include "desktop.h"
#include "inkscape.h"
#include "io/sys.h"
@@ -195,8 +194,7 @@ SPObject *get_stock_item(gchar const *urn, gboolean stock)
gchar * base = g_strndup(e, a);
- SPDesktop *desktop = SP_ACTIVE_DESKTOP;
- SPDocument *doc = desktop->getDocument();
+ SPDocument *doc = SP_ACTIVE_DOCUMENT;
SPDefs *defs = doc->getDefs();
if (!defs) {
g_free(base);
@@ -265,8 +263,7 @@ SPObject *get_stock_item(gchar const *urn, gboolean stock)
else {
- SPDesktop *desktop = SP_ACTIVE_DESKTOP;
- SPDocument *doc = desktop->getDocument();
+ SPDocument *doc = SP_ACTIVE_DOCUMENT;
SPObject *object = doc->getObjectById(urn);
return object;
diff --git a/src/object/sp-item.cpp b/src/object/sp-item.cpp
index f91310ea5..411e69f71 100644
--- a/src/object/sp-item.cpp
+++ b/src/object/sp-item.cpp
@@ -1628,7 +1628,7 @@ void SPItem::set_i2d_affine(Geom::Affine const &i2dt)
Geom::Affine dt2p; /* desktop to item parent transform */
if (parent) {
dt2p = static_cast<SPItem *>(parent)->i2dt_affine().inverse();
- } else {
+ } else if (SP_ACTIVE_DESKTOP) {
SPDesktop *dt = SP_ACTIVE_DESKTOP;
dt2p = dt->dt2doc();
}
diff --git a/src/selection.cpp b/src/selection.cpp
index 142695855..7076174bc 100644
--- a/src/selection.cpp
+++ b/src/selection.cpp
@@ -192,7 +192,7 @@ Selection::emptyBackup(){
void
Selection::setBackup ()
{
- SPDesktop *desktop = SP_ACTIVE_DESKTOP;
+ SPDesktop *desktop = this->desktop();
SPDocument *document = SP_ACTIVE_DOCUMENT;
Inkscape::UI::Tools::NodeTool *tool = nullptr;
if (desktop) {
@@ -255,7 +255,7 @@ Selection::setBackup ()
void
Selection::restoreBackup()
{
- SPDesktop *desktop = SP_ACTIVE_DESKTOP;
+ SPDesktop *desktop = this->desktop();
SPDocument *document = SP_ACTIVE_DOCUMENT;
Inkscape::UI::Tools::NodeTool *tool = nullptr;
if (desktop) {