diff options
| author | Ted Gould <ted@gould.cx> | 2008-11-21 05:24:08 +0000 |
|---|---|---|
| committer | Ted Gould <ted@canonical.com> | 2008-11-21 05:24:08 +0000 |
| commit | 44a3a78fb6a3863c0c7f3c1193837337e68a67e4 (patch) | |
| tree | 1722ee5ec6f88c881cd4124923354b3c1311501b /src/2geom/svg-path-parser.cpp | |
| parent | Merge from trunk (diff) | |
| download | inkscape-44a3a78fb6a3863c0c7f3c1193837337e68a67e4.tar.gz inkscape-44a3a78fb6a3863c0c7f3c1193837337e68a67e4.zip | |
Merge from fe-moved
(bzr r6891)
Diffstat (limited to 'src/2geom/svg-path-parser.cpp')
| -rw-r--r-- | src/2geom/svg-path-parser.cpp | 47 |
1 files changed, 24 insertions, 23 deletions
diff --git a/src/2geom/svg-path-parser.cpp b/src/2geom/svg-path-parser.cpp index 2f26870a5..071b171b3 100644 --- a/src/2geom/svg-path-parser.cpp +++ b/src/2geom/svg-path-parser.cpp @@ -38,6 +38,7 @@ #include <2geom/point.h> #include <2geom/svg-path-parser.h> +#include <2geom/angle.h> namespace Geom { @@ -139,7 +140,7 @@ private: }; -#line 143 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" +#line 144 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" static const char _svg_path_actions[] = { 0, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5, 1, 15, 1, @@ -1144,7 +1145,7 @@ static const int svg_path_first_final = 270; static const int svg_path_en_main = 1; -#line 143 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 144 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" void Parser::parse(char const *str) @@ -1157,12 +1158,12 @@ throw(SVGPathParseError) _reset(); -#line 1161 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" +#line 1162 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" { cs = svg_path_start; } -#line 1166 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" +#line 1167 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" { int _klen; unsigned int _trans; @@ -1235,13 +1236,13 @@ _match: switch ( *_acts++ ) { case 0: -#line 155 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 156 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { start = p; } break; case 1: -#line 159 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 160 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { char const *end=p; std::string buf(start, end); @@ -1250,55 +1251,55 @@ _match: } break; case 2: -#line 166 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 167 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _push(1.0); } break; case 3: -#line 170 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 171 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _push(0.0); } break; case 4: -#line 174 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 175 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _absolute = true; } break; case 5: -#line 178 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 179 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _absolute = false; } break; case 6: -#line 182 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 183 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _moveTo(_pop_point()); } break; case 7: -#line 186 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 187 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _lineTo(_pop_point()); } break; case 8: -#line 190 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 191 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _hlineTo(Point(_pop_coord(X), _current[Y])); } break; case 9: -#line 194 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 195 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _vlineTo(Point(_current[X], _pop_coord(Y))); } break; case 10: -#line 198 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 199 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { Point p = _pop_point(); Point c1 = _pop_point(); @@ -1307,7 +1308,7 @@ _match: } break; case 11: -#line 205 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 206 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { Point p = _pop_point(); Point c1 = _pop_point(); @@ -1315,7 +1316,7 @@ _match: } break; case 12: -#line 211 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 212 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { Point p = _pop_point(); Point c = _pop_point(); @@ -1323,14 +1324,14 @@ _match: } break; case 13: -#line 217 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 218 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { Point p = _pop_point(); _quadTo(_quad_tangent, p); } break; case 14: -#line 222 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 223 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { Point point = _pop_point(); bool sweep = _pop_flag(); @@ -1343,16 +1344,16 @@ _match: } break; case 15: -#line 233 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 234 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" { _closePath(); } break; case 16: -#line 369 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 370 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" {goto _out;} break; -#line 1356 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" +#line 1357 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.cpp" } } @@ -1363,7 +1364,7 @@ _again: goto _resume; _out: {} } -#line 379 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" +#line 380 "/home/njh/svn/lib2geom/src/2geom/svg-path-parser.rl" if ( cs < svg_path_first_final ) { |
