Code

NR::Maybe => boost::optional
[inkscape.git] / src / sp-conn-end-pair.cpp
index d13ef9e86a00f022f0f3c31df91e484928adec2d..6ef3746845d650d96ee1a9da9103f6e4a06a1c6b 100644 (file)
@@ -10,6 +10,9 @@
  * Released under GNU GPL, read the file 'COPYING' for more information
  */
 
+#include <cstring>
+#include <string>
+
 #include "attributes.h"
 #include "sp-conn-end.h"
 #include "uri.h"
@@ -164,7 +167,7 @@ SPConnEndPair::getEndpoints(NR::Point endPts[]) const {
 
     for (unsigned h = 0; h < 2; ++h) {
         if ( h2attItem[h] ) {
-            NR::Maybe<NR::Rect> bbox = h2attItem[h]->getBounds(sp_item_i2doc_affine(h2attItem[h]));
+            boost::optional<NR::Rect> bbox = h2attItem[h]->getBounds(from_2geom(sp_item_i2doc_affine(h2attItem[h])));
             if (bbox) {
                 endPts[h] = bbox->midpoint();
             } else {
@@ -175,10 +178,10 @@ SPConnEndPair::getEndpoints(NR::Point endPts[]) const {
         else
         {
             if (h == 0) {
-                endPts[h] = sp_curve_first_point(curve);
+                endPts[h] = curve->first_point();
             }
             else {
-                endPts[h] = sp_curve_last_point(curve);
+                endPts[h] = curve->last_point();
             }
         }
     }
@@ -299,12 +302,12 @@ SPConnEndPair::reroutePath(void)
     Avoid::PolyLine route = _connRef->route();
     _connRef->calcRouteDist();
 
-    sp_curve_reset(curve);
-    sp_curve_moveto(curve, endPt[0]);
+    curve->reset();
+    curve->moveto(endPt[0]);
 
     for (int i = 1; i < route.pn; ++i) {
         NR::Point p(route.ps[i].x, route.ps[i].y);
-        sp_curve_lineto(curve, p);
+        curve->lineto(p);
     }
 }