From e776d44fd7a3035665e622f71a135c1f275b3708 Mon Sep 17 00:00:00 2001 From: Jon Phillips Date: Tue, 22 Aug 2006 08:01:11 +0000 Subject: Committed a great patch which adds a Save A Copy menu function. This is the first gloss of this patch...I will add more stuff to it shortly... (bzr r1628) --- src/extension/output.cpp | 4 ++-- src/extension/system.cpp | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'src/extension') diff --git a/src/extension/output.cpp b/src/extension/output.cpp index eb3f85ed8..b0f254a9c 100644 --- a/src/extension/output.cpp +++ b/src/extension/output.cpp @@ -221,7 +221,7 @@ Output::save (SPDocument * doc, const gchar * uri) gboolean saved = sp_document_get_undo_sensitive(doc); sp_document_set_undo_sensitive (doc, FALSE); - repr->setAttribute("inkscape:output_extension", NULL); + //repr->setAttribute("inkscape:output_extension", NULL); repr->setAttribute("inkscape:dataloss", NULL); if (repr->attribute("sodipodi:modified") != NULL) modified = true; @@ -239,7 +239,7 @@ Output::save (SPDocument * doc, const gchar * uri) saved = sp_document_get_undo_sensitive(doc); sp_document_set_undo_sensitive (doc, FALSE); - repr->setAttribute("inkscape:output_extension", get_id()); + //repr->setAttribute("inkscape:output_extension", get_id()); if (dataloss) { repr->setAttribute("inkscape:dataloss", "true"); } diff --git a/src/extension/system.cpp b/src/extension/system.cpp index 81bf3075e..3a8a54214 100644 --- a/src/extension/system.cpp +++ b/src/extension/system.cpp @@ -244,10 +244,15 @@ save(Extension *key, SPDocument *doc, gchar const *filename, bool setextension, throw Output::no_overwrite(); } + // if 'official' save the filename and extension for future saves. if (official) { + // save the filename for next use sp_document_set_uri(doc, fileName); + // also save the extension for next use + Inkscape::XML::Node *repr = sp_document_repr_root(doc); + repr->setAttribute("inkscape:output_extension", omod->get_id()); } - + omod->save(doc, fileName); g_free(fileName); -- cgit v1.2.3