index ff3b17dfaef96103252f9c814e26c7dd4c5ea3f0..0025f2d07b73e51911e79c174cfb4766b72761a7 100644 (file)
--- a/src/number-opt-number.h
+++ b/src/number-opt-number.h
* Released under GNU GPL, read the file 'COPYING' for more information
*/
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
#include <glib.h>
#include <glib/gprintf.h>
//todo: use glib instead of stdlib
#include <stdlib.h>
+#include "svg/stringstream.h"
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
+
+gdouble fixed_g_ascii_strtod (const gchar *nptr, gchar **endptr);
class NumberOptNumber {
number = num;
}
- gchar *getValueString(gchar *str)
+ bool optNumIsSet(){
+ return optNumber_set;
+ }
+
+ bool numIsSet(){
+ return _set;
+ }
+
+ 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)
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