11#ifndef SEEN_INKSCAPE_LAYER_MANAGER_H
12#define SEEN_INKSCAPE_LAYER_MANAGER_H
15#include <glibmm/ustring.h>
unsigned childCount(SPObject *obj) const
void toggleLayerSolo(SPObject *object, bool force_hide=false)
Toggle the visibility of every layer except the given layer.
void renameLayer(SPObject *obj, char const *label, bool uniquify)
SPObject * layerForObject(SPObject *object)
Return layer that contains object.
void _selectedLayerChanged(SPObject *top, SPObject *bottom)
sigc::signal< void(SPGroup *)> _layer_changed_signal
void setCurrentLayer(SPObject *object, bool clear=false)
Sets the current layer of the desktop.
sigc::connection _activate_connection
static SPGroup * asLayer(SPObject *object)
Return the SPGroup if we have a layer object.
void toggleHideAllLayers(bool hide)
SPGroup * currentLayer() const
Returns current top layer.
void toggleLockOtherLayers(SPObject *object, bool force_lock=false)
Toggle the sensitivity of every layer except the given layer.
SPGroup * currentRoot() const
Returns current root (=bottom) layer.
void toggleLockAllLayers(bool lock)
void _objectModified(SPObject *obj, unsigned int flags)
unsigned getLayerCount() const
std::list< SPItem * > getAllLayers()
sigc::connection _document_connection
std::unique_ptr< Inkscape::ObjectHierarchy > _layer_hierarchy
sigc::connection _deactivate_connection
Glib::ustring getNextLayerName(SPObject *obj, char const *label)
void _setDocument(SPDesktop *, SPDocument *document)
bool isLayer(SPObject *object) const
True if object is a layer.
void _layer_deactivated(SPObject *layer)
void reset()
Resets the bottom layer to the current root.
sigc::connection connectCurrentLayerChanged(const sigc::slot< void(SPGroup *)> &slot)
void _layer_activated(SPObject *layer)
sigc::connection _layer_connection
sigc::connection _resource_connection
To do: update description of desktop.
Typed SVG document implementation.
SPObject is an abstract base class of all of the document nodes at the SVG document level.
Helper class to stream background task notifications as a series of messages.
SPObject * create_layer(SPObject *root, SPObject *layer, LayerRelativePosition position)
Creates a new layer.
SPObject * next_layer(SPObject *root, SPObject *layer)
Finds the next layer under root, relative to layer in depth-first order.
SPObject * previous_layer(SPObject *root, SPObject *layer)
Finds the previous layer under root, relative to layer in depth-first order.