summaryrefslogtreecommitdiffstats
path: root/src/layer-manager.cpp
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2006-05-28 08:07:39 +0000
committerjoncruz <joncruz@users.sourceforge.net>2006-05-28 08:07:39 +0000
commitea71a299e5e412bbe98174a4c913afa63da125b2 (patch)
treed69c65fe866224eddfdd9b5bf4466ce781e7216a /src/layer-manager.cpp
parentclicking toggles doesn't change selected layer. (diff)
downloadinkscape-ea71a299e5e412bbe98174a4c913afa63da125b2.tar.gz
inkscape-ea71a299e5e412bbe98174a4c913afa63da125b2.zip
Option to keep selection when changing layers
(bzr r1037)
Diffstat (limited to 'src/layer-manager.cpp')
-rw-r--r--src/layer-manager.cpp12
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 : "" );