diff --git a/src/ui/clipboard.cpp b/src/ui/clipboard.cpp
index 4a71174b7aaffa604b8f9b671293d25cf68878f1..d405afb8f6ec9b33ce237247f37e1c82e9fa7924 100644 (file)
--- a/src/ui/clipboard.cpp
+++ b/src/ui/clipboard.cpp
* Krzysztof KosiĆski <tweenk@o2.pl>
* Jon A. Cruz <jon@joncruz.org>
* Incorporates some code from selection-chemistry.cpp, see that file for more credits.
+ * Abhishek Sharma
*
* Copyright (C) 2008 authors
* Copyright (C) 2010 Jon A. Cruz
}
_pasteDocument(desktop, tempdoc, in_place);
- sp_document_unref(tempdoc);
+ tempdoc->doUnref();
return true;
}
return NULL;
}
- Inkscape::XML::Node
- *root = sp_document_repr_root(tempdoc);
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
if (!root) {
return NULL;
}
}
- Inkscape::XML::Node
- *root = sp_document_repr_root(tempdoc),
- *clipnode = sp_repr_lookup_name(root, "inkscape:clipboard", 1);
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
+ Inkscape::XML::Node *clipnode = sp_repr_lookup_name(root, "inkscape:clipboard", 1);
bool pasted = false;
_userWarn(desktop, _("No style on the clipboard."));
}
- sp_document_unref(tempdoc);
+ tempdoc->doUnref();
return pasted;
}
@@ -455,7 +454,7 @@ bool ClipboardManagerImpl::pasteSize(SPDesktop *desktop, bool separately, bool a
}
// retrieve size ifomration from the clipboard
- Inkscape::XML::Node *root = sp_document_repr_root(tempdoc);
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
Inkscape::XML::Node *clipnode = sp_repr_lookup_name(root, "inkscape:clipboard", 1);
bool pasted = false;
if (clipnode) {
@@ -467,7 +466,7 @@ bool ClipboardManagerImpl::pasteSize(SPDesktop *desktop, bool separately, bool a
if (separately) {
for (GSList *i = const_cast<GSList*>(selection->itemList()) ; i ; i = i->next) {
SPItem *item = SP_ITEM(i->data);
- Geom::OptRect obj_size = sp_item_bbox_desktop(item);
+ Geom::OptRect obj_size = item->getBboxDesktop();
if ( !obj_size ) {
continue;
}
@@ -484,7 +483,7 @@ bool ClipboardManagerImpl::pasteSize(SPDesktop *desktop, bool separately, bool a
}
pasted = true;
}
- sp_document_unref(tempdoc);
+ tempdoc->doUnref();
return pasted;
}
SPDocument *tempdoc = _retrieveClipboard("image/x-inkscape-svg");
if ( tempdoc ) {
- Inkscape::XML::Node *root = sp_document_repr_root(tempdoc);
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
Inkscape::XML::Node *clipnode = sp_repr_lookup_name(root, "inkscape:clipboard", 1);
if ( clipnode ) {
gchar const *effectstack = clipnode->attribute("inkscape:path-effect");
_userWarn(desktop, _("Nothing on the clipboard."));
return "";
}
- Inkscape::XML::Node
- *root = sp_document_repr_root(tempdoc),
- *path = sp_repr_lookup_name(root, "svg:path", -1); // unlimited search depth
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
+ Inkscape::XML::Node *path = sp_repr_lookup_name(root, "svg:path", -1); // unlimited search depth
if ( path == NULL ) {
_userWarn(desktop, _("Clipboard does not contain a path."));
- sp_document_unref(tempdoc);
+ tempdoc->doUnref();
return "";
}
gchar const *svgd = path->attribute("d");
_userWarn(desktop, _("Nothing on the clipboard."));
return "";
}
- Inkscape::XML::Node *root = sp_document_repr_root(tempdoc);
+ Inkscape::XML::Node *root = tempdoc->getReprRoot();
Inkscape::XML::Node *repr = sp_repr_lookup_name(root, "svg:path", -1); // unlimited search depth
if ( repr == NULL ) {
if ( repr == NULL ) {
_userWarn(desktop, _("Clipboard does not contain a path."));
- sp_document_unref(tempdoc);
+ tempdoc->doUnref();
return "";
}
gchar const *svgd = repr->attribute("id");
// write the complete accumulated transform passed to us
// (we're dealing with unattached representations, so we write to their attributes
// instead of using sp_item_set_transform)
- gchar *transform_str = sp_svg_transform_write(sp_item_i2doc_affine(SP_ITEM(i->data)));
+ gchar *transform_str = sp_svg_transform_write(SP_ITEM(i->data)->i2doc_affine());
obj_copy->setAttribute("transform", transform_str);
g_free(transform_str);
}
}
// Copy text paths
if (SP_IS_TEXT_TEXTPATH(item)) {
- _copyTextPath(SP_TEXTPATH(sp_object_first_child(SP_OBJECT(item))));
+ _copyTextPath(SP_TEXTPATH(item->firstChild()));
}
// Copy clipping objects
if (item->clip_ref->getObject()) {
_copyNode(SP_OBJECT_REPR(pattern), _doc, _defs);
// items in the pattern may also use gradients and other patterns, so recurse
- for (SPObject *child = sp_object_first_child(SP_OBJECT(pattern)) ; child != NULL ; child = SP_OBJECT_NEXT(child) ) {
+ for ( SPObject *child = pattern->firstChild() ; child ; child = child->getNext() ) {
if (!SP_IS_ITEM (child)) {
continue;
}
@@ -814,10 +812,9 @@ Inkscape::XML::Node *ClipboardManagerImpl::_copyNode(Inkscape::XML::Node *node,
void ClipboardManagerImpl::_pasteDocument(SPDesktop *desktop, SPDocument *clipdoc, bool in_place)
{
SPDocument *target_document = sp_desktop_document(desktop);
- Inkscape::XML::Node
- *root = sp_document_repr_root(clipdoc),
- *target_parent = SP_OBJECT_REPR(desktop->currentLayer());
- Inkscape::XML::Document *target_xmldoc = sp_document_repr_doc(target_document);
+ Inkscape::XML::Node *root = clipdoc->getReprRoot();
+ Inkscape::XML::Node *target_parent = SP_OBJECT_REPR(desktop->currentLayer());
+ Inkscape::XML::Document *target_xmldoc = target_document->getReprDoc();
// copy definitions
_pasteDefs(desktop, clipdoc);
@@ -847,11 +844,11 @@ void ClipboardManagerImpl::_pasteDocument(SPDesktop *desktop, SPDocument *clipdo
selection->setReprList(pasted_objects);
// invers apply parent transform
- Geom::Matrix doc2parent = sp_item_i2doc_affine(SP_ITEM(desktop->currentLayer())).inverse();
+ Geom::Matrix doc2parent = SP_ITEM(desktop->currentLayer())->i2doc_affine().inverse();
sp_selection_apply_affine(selection, desktop->dt2doc() * doc2parent * desktop->doc2dt(), true, false);
// Update (among other things) all curves in paths, for bounds() to work
- sp_document_ensure_up_to_date(target_document);
+ target_document->ensureUpToDate();
// move selection either to original position (in_place) or to mouse pointer
Geom::OptRect sel_bbox = selection->bounds();
@@ -894,11 +891,10 @@ void ClipboardManagerImpl::_pasteDefs(SPDesktop *desktop, SPDocument *clipdoc)
{
// boilerplate vars copied from _pasteDocument
SPDocument *target_document = sp_desktop_document(desktop);
- Inkscape::XML::Node
- *root = sp_document_repr_root(clipdoc),
- *defs = sp_repr_lookup_name(root, "svg:defs", 1),
- *target_defs = SP_OBJECT_REPR(SP_DOCUMENT_DEFS(target_document));
- Inkscape::XML::Document *target_xmldoc = sp_document_repr_doc(target_document);
+ Inkscape::XML::Node *root = clipdoc->getReprRoot();
+ Inkscape::XML::Node *defs = sp_repr_lookup_name(root, "svg:defs", 1);
+ Inkscape::XML::Node *target_defs = SP_OBJECT_REPR(SP_DOCUMENT_DEFS(target_document));
+ Inkscape::XML::Document *target_xmldoc = target_document->getReprDoc();
prevent_id_clashes(clipdoc, target_document);
guint32 bgcolor = 0x00000000;
Geom::Point origin (SP_ROOT(_clipboardSPDoc->root)->x.computed, SP_ROOT(_clipboardSPDoc->root)->y.computed);
- Geom::Rect area = Geom::Rect(origin, origin + sp_document_dimensions(_clipboardSPDoc));
+ Geom::Rect area = Geom::Rect(origin, origin + _clipboardSPDoc->getDimensions());
unsigned long int width = (unsigned long int) (area.width() * dpi / PX_PER_IN + 0.5);
unsigned long int height = (unsigned long int) (area.height() * dpi / PX_PER_IN + 0.5);
void ClipboardManagerImpl::_createInternalClipboard()
{
if ( _clipboardSPDoc == NULL ) {
- _clipboardSPDoc = sp_document_new(NULL, false, true);
+ _clipboardSPDoc = SPDocument::createNewDoc(NULL, false, true);
//g_assert( _clipboardSPDoc != NULL );
_defs = SP_OBJECT_REPR(SP_DOCUMENT_DEFS(_clipboardSPDoc));
- _doc = sp_document_repr_doc(_clipboardSPDoc);
- _root = sp_document_repr_root(_clipboardSPDoc);
+ _doc = _clipboardSPDoc->getReprDoc();
+ _root = _clipboardSPDoc->getReprRoot();
_clipnode = _doc->createElement("inkscape:clipboard");
_root->appendChild(_clipnode);
void ClipboardManagerImpl::_discardInternalClipboard()
{
if ( _clipboardSPDoc != NULL ) {
- sp_document_unref(_clipboardSPDoc);
+ _clipboardSPDoc->doUnref();
_clipboardSPDoc = NULL;
_defs = NULL;
_doc = NULL;
fill-column:99
End:
*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :