From f35bb1f74a0ffeb5c6477a25e3c4cde87a97bcf1 Mon Sep 17 00:00:00 2001 From: Adrian Boguszewski Date: Thu, 28 Jul 2016 12:06:06 +0200 Subject: Removed unused includes, decrease compilation time (bzr r15025) --- src/preferences.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index e5a5fe7f0..988604a14 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include "preferences.h" -- cgit v1.2.3 From 43b49e325db73cc19b1731db6c69545664ee8fbe Mon Sep 17 00:00:00 2001 From: Adrian Boguszewski Date: Thu, 28 Jul 2016 13:26:17 +0200 Subject: Reverted changes to r15024 after many building problems (bzr r15027) --- src/preferences.cpp | 1 + 1 file changed, 1 insertion(+) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 988604a14..e5a5fe7f0 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -15,6 +15,7 @@ #include #include #include +#include #include #include #include "preferences.h" -- cgit v1.2.3 From 35830f456cadaecf8b8e3944e3031a1a93f6cb41 Mon Sep 17 00:00:00 2001 From: Adrian Boguszewski Date: Wed, 3 Aug 2016 15:29:38 +0200 Subject: Removed unused includes, decreased compilation time. Once again (bzr r15034) --- src/preferences.cpp | 1 - 1 file changed, 1 deletion(-) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index e5a5fe7f0..988604a14 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include "preferences.h" -- cgit v1.2.3 From 3e00389a40816c12b9b35e3061a752295387aad9 Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Tue, 20 Sep 2016 13:19:44 +0200 Subject: Remove properties with default values from 'style' entries in users preferences.xml file. This prevents 'style' entries from becoming full of unnecessary properties. (bzr r15123) --- src/preferences.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 988604a14..4d522a1d8 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -24,6 +24,7 @@ #include "xml/node-iterators.h" #include "xml/attribute-record.h" #include "util/units.h" +#include "attribute-rel-util.h" #define PREFERENCES_FILE_NAME "preferences.xml" @@ -495,6 +496,7 @@ void Preferences::mergeStyle(Glib::ustring const &pref_path, SPCSSAttr *style) { SPCSSAttr *current = getStyle(pref_path); sp_repr_css_merge(current, style); + sp_attribute_purge_default_style(current, SP_ATTR_CLEAN_DEFAULT_REMOVE); Glib::ustring css_str; sp_repr_css_write_string(current, css_str); _setRawValue(pref_path, css_str); -- cgit v1.2.3 From 7139c8a3275224df37c3e59628355f6b3e3398b4 Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Cenoz Date: Thu, 27 Apr 2017 15:49:12 +0200 Subject: Fixing remove prefs (bzr r15620.1.7) --- src/preferences.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 4d522a1d8..2849fe068 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -512,6 +512,35 @@ void Preferences::remove(Glib::ustring const &pref_path) Inkscape::XML::Node *node = _getNode(pref_path, false); if (node && node->parent()) { node->parent()->removeChild(node); + } else { //Handle to remove also attributes in path not only the container node + // verify path + g_assert( pref_path.at(0) == '/' ); + if (_prefs_doc == NULL){ + return; + } + node = _prefs_doc->root(); + Inkscape::XML::Node *child = NULL; + gchar **splits = g_strsplit(pref_path.c_str(), "/", 0); + if ( splits ) { + for (int part_i = 0; splits[part_i]; ++part_i) { + // skip empty path segments + if (!splits[part_i][0]) { + continue; + } + if (!node->firstChild()) { + node->setAttribute(splits[part_i], NULL); + g_strfreev(splits); + return; + } + for (child = node->firstChild(); child; child = child->next()) { + if (!strcmp(splits[part_i], child->attribute("id"))) { + break; + } + } + node = child; + } + } + g_strfreev(splits); } } -- cgit v1.2.3 From 52054e24f8b98c07753588c726a1e777bad7245b Mon Sep 17 00:00:00 2001 From: Jabiertxof Date: Fri, 28 Apr 2017 21:42:36 +0200 Subject: Reset (bzr r15620.1.9) --- src/preferences.cpp | 29 ----------------------------- 1 file changed, 29 deletions(-) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 2849fe068..4d522a1d8 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -512,35 +512,6 @@ void Preferences::remove(Glib::ustring const &pref_path) Inkscape::XML::Node *node = _getNode(pref_path, false); if (node && node->parent()) { node->parent()->removeChild(node); - } else { //Handle to remove also attributes in path not only the container node - // verify path - g_assert( pref_path.at(0) == '/' ); - if (_prefs_doc == NULL){ - return; - } - node = _prefs_doc->root(); - Inkscape::XML::Node *child = NULL; - gchar **splits = g_strsplit(pref_path.c_str(), "/", 0); - if ( splits ) { - for (int part_i = 0; splits[part_i]; ++part_i) { - // skip empty path segments - if (!splits[part_i][0]) { - continue; - } - if (!node->firstChild()) { - node->setAttribute(splits[part_i], NULL); - g_strfreev(splits); - return; - } - for (child = node->firstChild(); child; child = child->next()) { - if (!strcmp(splits[part_i], child->attribute("id"))) { - break; - } - } - node = child; - } - } - g_strfreev(splits); } } -- cgit v1.2.3 From e5601e5e84df30c40d93271fd69cecd31391e309 Mon Sep 17 00:00:00 2001 From: Jabiertxof Date: Sat, 29 Apr 2017 02:01:22 +0200 Subject: Rewrite UX (bzr r15620.1.12) --- src/preferences.cpp | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'src/preferences.cpp') diff --git a/src/preferences.cpp b/src/preferences.cpp index 4d522a1d8..2849fe068 100644 --- a/src/preferences.cpp +++ b/src/preferences.cpp @@ -512,6 +512,35 @@ void Preferences::remove(Glib::ustring const &pref_path) Inkscape::XML::Node *node = _getNode(pref_path, false); if (node && node->parent()) { node->parent()->removeChild(node); + } else { //Handle to remove also attributes in path not only the container node + // verify path + g_assert( pref_path.at(0) == '/' ); + if (_prefs_doc == NULL){ + return; + } + node = _prefs_doc->root(); + Inkscape::XML::Node *child = NULL; + gchar **splits = g_strsplit(pref_path.c_str(), "/", 0); + if ( splits ) { + for (int part_i = 0; splits[part_i]; ++part_i) { + // skip empty path segments + if (!splits[part_i][0]) { + continue; + } + if (!node->firstChild()) { + node->setAttribute(splits[part_i], NULL); + g_strfreev(splits); + return; + } + for (child = node->firstChild(); child; child = child->next()) { + if (!strcmp(splits[part_i], child->attribute("id"))) { + break; + } + } + node = child; + } + } + g_strfreev(splits); } } -- cgit v1.2.3