[Libreoffice-commits] core.git: Branch 'feature/skia' - 2 commits - vcl/inc vcl/skia

Tomaž Vajngerl (via logerrit) logerrit at kemper.freedesktop.org
Mon Oct 21 08:29:06 UTC 2019


 vcl/inc/skia/gdiimpl.hxx |   11 +----------
 vcl/skia/gdiimpl.cxx     |   31 +++++++++++++++++++++----------
 2 files changed, 22 insertions(+), 20 deletions(-)

New commits:
commit 097b6b6c9b13a90e59734b329f2407b77658c1e7
Author:     Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
AuthorDate: Mon Oct 21 10:26:21 2019 +0200
Commit:     Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
CommitDate: Mon Oct 21 10:26:21 2019 +0200

    skia: move {to,from}SkColor to gdiimpl.cxx
    
    Currently {to,from}SkColor is not used elsewhere so no need to
    have it defined in the header.
    
    Change-Id: I693902a876a55caead4a82982c1420d6883dd5e8

diff --git a/vcl/inc/skia/gdiimpl.hxx b/vcl/inc/skia/gdiimpl.hxx
index e0f5074c49d2..c7c59ac9b2d6 100644
--- a/vcl/inc/skia/gdiimpl.hxx
+++ b/vcl/inc/skia/gdiimpl.hxx
@@ -210,16 +210,7 @@ protected:
     int GetWidth() const { return mProvider ? mProvider->GetWidth() : 1; }
     // get the height of the device
     int GetHeight() const { return mProvider ? mProvider->GetHeight() : 1; }
-    static SkColor toSkColor(Color color)
-    {
-        return SkColorSetARGB(255 - color.GetTransparency(), color.GetRed(), color.GetGreen(),
-                              color.GetBlue());
-    }
-    static Color fromSkColor(SkColor color)
-    {
-        return Color(255 - SkColorGetA(color), SkColorGetR(color), SkColorGetG(color),
-                     SkColorGetB(color));
-    }
+
     void drawMask(const SalTwoRect& rPosAry, const SkBitmap& rBitmap, Color nMaskColor);
 
     SalGraphics& mParent;
diff --git a/vcl/skia/gdiimpl.cxx b/vcl/skia/gdiimpl.cxx
index 560a1d1a3ee6..deb35255ddfa 100644
--- a/vcl/skia/gdiimpl.cxx
+++ b/vcl/skia/gdiimpl.cxx
@@ -67,6 +67,18 @@ void lclPolygonToPath(const basegfx::B2DPolygon& rPolygon, SkPath& rPath)
     if (bClosePath)
         rPath.close();
 }
+
+SkColor toSkColor(Color color)
+{
+    return SkColorSetARGB(255 - color.GetTransparency(), color.GetRed(), color.GetGreen(),
+                          color.GetBlue());
+}
+
+Color fromSkColor(SkColor color)
+{
+    return Color(255 - SkColorGetA(color), SkColorGetR(color), SkColorGetG(color),
+                 SkColorGetB(color));
+}
 } // end anonymous namespace
 
 // Class that triggers flushing the backing buffer when idle.
commit 727eb13774ba0ba3cd51a11e2fc5594d343f5052
Author:     Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
AuthorDate: Mon Oct 21 10:23:12 2019 +0200
Commit:     Tomaž Vajngerl <tomaz.vajngerl at collabora.co.uk>
CommitDate: Mon Oct 21 10:23:12 2019 +0200

    skia: change lclPolygonToPath to get SkPath as parameter
    
    More futureproof as it can be used for adding PolyPolygon
    
    Change-Id: Ic0c32e8bf8d2189df3ee2d80fe6dc8c00ce8fcef

diff --git a/vcl/skia/gdiimpl.cxx b/vcl/skia/gdiimpl.cxx
index 2f0519bb3d16..560a1d1a3ee6 100644
--- a/vcl/skia/gdiimpl.cxx
+++ b/vcl/skia/gdiimpl.cxx
@@ -40,14 +40,12 @@ namespace
 // Create Skia Path from B2DPolygon
 // TODO - take bezier curves into account
 // TODO - use this for all Polygon / PolyPolygon needs
-static SkPath lclPolygonToPath(const basegfx::B2DPolygon& rPolygon)
+void lclPolygonToPath(const basegfx::B2DPolygon& rPolygon, SkPath& rPath)
 {
-    SkPath aPath;
-
     const sal_uInt32 nPointCount(rPolygon.count());
 
     if (nPointCount == 0)
-        return aPath;
+        return;
 
     const bool bClosePath(rPolygon.isClosed());
 
@@ -58,19 +56,18 @@ static SkPath lclPolygonToPath(const basegfx::B2DPolygon& rPolygon)
         auto const& rPoint = rPolygon.getB2DPoint(nPointIndex);
         if (bFirst)
         {
-            aPath.moveTo(rPoint.getX(), rPoint.getY());
+            rPath.moveTo(rPoint.getX(), rPoint.getY());
             bFirst = false;
         }
         else
         {
-            aPath.lineTo(rPoint.getX(), rPoint.getY());
+            rPath.lineTo(rPoint.getX(), rPoint.getY());
         }
     }
     if (bClosePath)
-        aPath.close();
-    return aPath;
-}
+        rPath.close();
 }
+} // end anonymous namespace
 
 // Class that triggers flushing the backing buffer when idle.
 class SkiaFlushIdle : public Idle
@@ -503,7 +500,8 @@ void SkiaSalGraphicsImpl::invert(basegfx::B2DPolygon const& rPoly, SalInvert eFl
     // TrackFrame just inverts a dashed path around the polygon
     if (eFlags == SalInvert::TrackFrame)
     {
-        SkPath aPath = lclPolygonToPath(rPoly);
+        SkPath aPath;
+        lclPolygonToPath(rPoly, aPath);
         SkPaint aPaint;
         aPaint.setStrokeWidth(2);
         float intervals[] = { 4.0f, 4.0f };
@@ -516,7 +514,8 @@ void SkiaSalGraphicsImpl::invert(basegfx::B2DPolygon const& rPoly, SalInvert eFl
     }
     else
     {
-        SkPath aPath = lclPolygonToPath(rPoly);
+        SkPath aPath;
+        lclPolygonToPath(rPoly, aPath);
         SkPaint aPaint;
         aPaint.setColor(SkColorSetARGB(255, 255, 255, 255));
         aPaint.setStyle(SkPaint::kFill_Style);


More information about the Libreoffice-commits mailing list