diff options
| author | bulia byak <buliabyak@gmail.com> | 2007-02-18 05:47:11 +0000 |
|---|---|---|
| committer | buliabyak <buliabyak@users.sourceforge.net> | 2007-02-18 05:47:11 +0000 |
| commit | a98ab31d6ed185ac36be908980170d5a22c0cdb1 (patch) | |
| tree | 33e5adfaab4ab3b1c16cc99a29a82d2bc4983b63 /src | |
| parent | reverse the order of markers, because since rev 13483 stroke-style.cpp reads ... (diff) | |
| download | inkscape-a98ab31d6ed185ac36be908980170d5a22c0cdb1.tar.gz inkscape-a98ab31d6ed185ac36be908980170d5a22c0cdb1.zip | |
standardize converting from number to string and back
(bzr r2389)
Diffstat (limited to 'src')
| -rw-r--r-- | src/number-opt-number.h | 16 | ||||
| -rw-r--r-- | src/sp-filter.cpp | 5 |
2 files changed, 12 insertions, 9 deletions
diff --git a/src/number-opt-number.h b/src/number-opt-number.h index ff3b17dfa..51966a101 100644 --- a/src/number-opt-number.h +++ b/src/number-opt-number.h @@ -17,6 +17,7 @@ #include <glib/gprintf.h> //todo: use glib instead of stdlib #include <stdlib.h> +#include "svg/stringstream.h" #ifdef HAVE_CONFIG_H #include "config.h" @@ -69,20 +70,22 @@ public: number = num; } - gchar *getValueString(gchar *str) + gchar *getValueString() { + Inkscape::SVGOStringStream os; + if( _set ) { if( optNumber_set ) { - g_sprintf(str, "%lf %lf", number, optNumber); + os << number << " " << optNumber; } else { - g_sprintf(str, "%lf", number); + os << number; } } - return str; + return g_strdup(os.str().c_str()); } void set(gchar const *str) @@ -94,13 +97,12 @@ public: if( values[0] != NULL ) { - sscanf(values[0], "%f", &number); + number = g_ascii_strtod(values[0], NULL); _set = TRUE; if( values[1] != NULL ) { - // optNumber = g_ascii_strtod(values[1], NULL); - sscanf(values[1], "%f", &optNumber); + optNumber = g_ascii_strtod(values[1], NULL); optNumber_set = TRUE; } else diff --git a/src/sp-filter.cpp b/src/sp-filter.cpp index 66cdf9aa0..c60ffb44f 100644 --- a/src/sp-filter.cpp +++ b/src/sp-filter.cpp @@ -319,8 +319,9 @@ sp_filter_write(SPObject *object, Inkscape::XML::Node *repr, guint flags) } if (filter->filterRes.getNumber()>=0) { - char filterRes[32]; - repr->setAttribute("filterRes", filter->filterRes.getValueString(filterRes)); + gchar *tmp = filter->filterRes.getValueString(); + repr->setAttribute("filterRes", tmp); + g_free(tmp); } else { repr->setAttribute("filterRes", NULL); } |
