Logo Search packages:      
Sourcecode: inkscape version File versions  Download package

SPDocument Class Reference

#include <document.h>

Inheritance diagram for SPDocument:

Inkscape::GC::Managed< default_scan, default_collect > Inkscape::GC::Anchored

List of all members.


Detailed Description

Typed SVG document implementation.

SPDocument serves as the container of both model trees (agnostic XML and typed object tree), and implements all of the document-level functionality used by the program. Many document level operations, like load, save, print, export and so on, use SPDocument as their basic datatype.

SPDocument implements undo and redo stacks and an id-based object dictionary. Thanks to unique id attributes, the latter can be used to map from the XML tree back to the object tree.

SPDocument performs the basic operations needed for asynchronous update notification (SPObject modified virtual method), and implements the 'modified' signal, as well.

Definition at line 52 of file document.h.


Public Types

typedef sigc::signal< void,
SPObject * > 
IDChangedSignal
typedef sigc::signal< void, guint > ModifiedSignal
typedef sigc::signal< void > ReconstructionFinish
typedef sigc::signal< void > ReconstructionStart
typedef sigc::signal< void,
double, double > 
ResizedSignal
typedef sigc::signal< void > ResourcesChangedSignal
typedef sigc::signal< void,
gchar const * > 
URISetSignal

Public Member Functions

void _emitModified ()
void addUndoObserver (Inkscape::UndoStackObserver &observer)
void anchor () const
void bindObjectToId (gchar const *id, SPObject *object)
void bindObjectToRepr (Inkscape::XML::Node *repr, SPObject *object)
template<typename T>
void cancelClearOnceInaccessible (T **p_ptr)
 Cancels the registration of a pointer, so it will not be cleared when this object becomes inacessible.
template<typename T>
void clearOnceInaccessible (T **p_ptr)
 Registers a pointer to be cleared when this object becomes inaccessible.
void collectOrphans ()
sigc::connection connectIdChanged (const gchar *id, IDChangedSignal::slot_type slot)
sigc::connection connectModified (ModifiedSignal::slot_type slot)
sigc::connection connectReconstructionFinish (ReconstructionFinish::slot_type slot)
sigc::connection connectReconstructionStart (ReconstructionStart::slot_type slot)
sigc::connection connectResized (ResizedSignal::slot_type slot)
sigc::connection connectURISet (URISetSignal::slot_type slot)
void emitReconstructionFinish (void)
void emitReconstructionStart (void)
SPObjectgetObjectById (gchar const *id)
SPObjectgetObjectByRepr (Inkscape::XML::Node *repr)
void operator delete (void *p)
void * operator new (std::size_t size, ScanPolicy scan=default_scan, CollectionPolicy collect=default_collect) throw (std::bad_alloc)
void * operator new[] (std::size_t size, ScanPolicy scan=default_scan, CollectionPolicy collect=default_collect) throw (std::bad_alloc)
void queueForOrphanCollection (SPObject *object)
void release () const
void removeUndoObserver (Inkscape::UndoStackObserver &observer)

Public Attributes

GSList * _collection_queue
const gchar * actionkey
 Last action key.
gchar * base
unsigned int keepalive: 1
guint modified_id
 Handler ID.
gchar * name
SPDocumentPrivate * priv
Inkscape::XML::Document * rdoc
 Our Inkscape::XML::Document.
SPObjectroot
 Our SPRoot.
Inkscape::XML::Noderroot
 Root element of Inkscape::XML::Document.
CRCascadestyle_cascade
gchar * uri
 URI string or NULL.
unsigned int virgin: 1
 Has the document never been touched?

Private Member Functions

void operator= (SPDocument const &)
 SPDocument (SPDocument const &)

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index