diff options
Diffstat (limited to 'src/svg')
| -rw-r--r-- | src/svg/stringstream-test.h | 2 | ||||
| -rw-r--r-- | src/svg/stringstream.cpp | 7 | ||||
| -rw-r--r-- | src/svg/stringstream.h | 4 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/svg/stringstream-test.h b/src/svg/stringstream-test.h index 6612f3fd2..a8da13150 100644 --- a/src/svg/stringstream-test.h +++ b/src/svg/stringstream-test.h @@ -1,5 +1,6 @@ #include <cxxtest/TestSuite.h> #include "svg/stringstream.h" +#include <2geom/point.h> template<typename T> static void @@ -45,6 +46,7 @@ public: svg_test_datum(" my string ", " my string "); svg_test_datum((signed char const *) "023", "023"); svg_test_datum((unsigned char const *) "023", "023"); + svg_test_datum(Geom::Point(1.23, 3.45), "1.23,3.45"); } void testConcat() diff --git a/src/svg/stringstream.cpp b/src/svg/stringstream.cpp index 65c01e7b6..62e20961a 100644 --- a/src/svg/stringstream.cpp +++ b/src/svg/stringstream.cpp @@ -1,6 +1,7 @@ #include "svg/stringstream.h" #include "svg/strip-trailing-zeros.h" #include "prefs-utils.h" +#include <2geom/point.h> Inkscape::SVGOStringStream::SVGOStringStream() { @@ -57,6 +58,12 @@ operator<<(Inkscape::SVGOStringStream &os, double d) return os; } +Inkscape::SVGOStringStream & +operator<<(Inkscape::SVGOStringStream &os, Geom::Point const & p) +{ + os << p[0] << ',' << p[1]; + return os; +} /* Local Variables: diff --git a/src/svg/stringstream.h b/src/svg/stringstream.h index 8ef5ece52..4e19125b4 100644 --- a/src/svg/stringstream.h +++ b/src/svg/stringstream.h @@ -5,6 +5,9 @@ #include <sstream> #include <string> +namespace Geom { + class Point; +} namespace Inkscape { typedef std::ios_base &(*std_oct_type)(std::ios_base &); @@ -78,6 +81,7 @@ Inkscape::SVGOStringStream &operator<<(Inkscape::SVGOStringStream &os, float d); Inkscape::SVGOStringStream &operator<<(Inkscape::SVGOStringStream &os, double d); +Inkscape::SVGOStringStream &operator<<(Inkscape::SVGOStringStream &os, Geom::Point const & p); #endif |
