From a4cc625e3e8baed9c7c14f2c0ffa09144b6ed321 Mon Sep 17 00:00:00 2001 From: Jon Phillips Date: Tue, 22 Aug 2006 21:24:21 +0000 Subject: I added Johan's badass patch for save a copy with the features I requested. Now it all works quite well! Great! (bzr r1630) --- src/extension/output.cpp | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) (limited to 'src/extension/output.cpp') diff --git a/src/extension/output.cpp b/src/extension/output.cpp index b0f254a9c..3f8c17fb1 100644 --- a/src/extension/output.cpp +++ b/src/extension/output.cpp @@ -2,6 +2,7 @@ * Authors: * Ted Gould * + * Copyright (C) 2006 Johan Engelen * Copyright (C) 2002-2004 Authors * * Released under GNU GPL, read the file 'COPYING' for more information @@ -206,45 +207,17 @@ Output::prefs (void) only used at runtime and shouldn't be saved. One that may surprise people is the output extension. This is not saved so that the IDs could be changed, and old files will still work properly. - - After the file is saved by the implmentation the output_extension - and dataloss variables are recreated. The output_extension is set - to this extension so that future saves use this extension. Dataloss - is set so that a warning will occur on closing the document that - there may be some dataloss from this extension. */ void Output::save (SPDocument * doc, const gchar * uri) { - bool modified = false; - Inkscape::XML::Node * repr = sp_document_repr_root(doc); - - gboolean saved = sp_document_get_undo_sensitive(doc); - sp_document_set_undo_sensitive (doc, FALSE); - //repr->setAttribute("inkscape:output_extension", NULL); - repr->setAttribute("inkscape:dataloss", NULL); - if (repr->attribute("sodipodi:modified") != NULL) - modified = true; - repr->setAttribute("sodipodi:modified", NULL); - sp_document_set_undo_sensitive (doc, saved); - try { imp->save(this, doc, uri); } catch (...) { - if (modified) - repr->setAttribute("sodipodi:modified", "true"); throw; } - saved = sp_document_get_undo_sensitive(doc); - sp_document_set_undo_sensitive (doc, FALSE); - //repr->setAttribute("inkscape:output_extension", get_id()); - if (dataloss) { - repr->setAttribute("inkscape:dataloss", "true"); - } - sp_document_set_undo_sensitive (doc, saved); - return; } -- cgit v1.2.3