diff options
Diffstat (limited to 'src/layer-manager.cpp')
| -rw-r--r-- | src/layer-manager.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/layer-manager.cpp b/src/layer-manager.cpp index 81e8698b0..e2e40340f 100644 --- a/src/layer-manager.cpp +++ b/src/layer-manager.cpp @@ -14,8 +14,11 @@ #include "gc-finalized.h" #include "document.h" #include "desktop.h" +#include "desktop-handles.h" #include "layer-manager.h" +#include "prefs-utils.h" #include "ui/view/view.h" +#include "selection.h" #include "sp-object.h" #include "xml/node.h" #include "xml/node-observer.h" @@ -70,6 +73,15 @@ LayerManager::LayerManager(SPDesktop *desktop) } +void LayerManager::setCurrentLayer( SPObject* obj ) +{ + _desktop->setCurrentLayer( obj ); + + if ( prefs_get_int_attribute_limited("options.selection", "layerdeselect", 1, 0, 1) ) { + sp_desktop_selection( _desktop )->clear(); + } +} + void LayerManager::renameLayer( SPObject* obj, gchar const *label ) { Glib::ustring incoming( label ? label : "" ); |
