From 6c56011f882cdfa758898029be5cabe82fc9228c Mon Sep 17 00:00:00 2001 From: Neil Date: Sat, 20 Mar 2021 09:24:43 +1100 Subject: Implement RectangleFrame. --- gtk/PlatGTK.cxx | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'gtk') diff --git a/gtk/PlatGTK.cxx b/gtk/PlatGTK.cxx index b71689007..0b87b8743 100755 --- a/gtk/PlatGTK.cxx +++ b/gtk/PlatGTK.cxx @@ -165,6 +165,7 @@ public: void Polygon(const Point *pts, size_t npts, FillStroke fillStroke) override; void RectangleDraw(PRectangle rc, ColourDesired fore, ColourDesired back) override; void RectangleDraw(PRectangle rc, FillStroke fillStroke) override; + void RectangleFrame(PRectangle rc, Stroke stroke) override; void FillRectangle(PRectangle rc, ColourDesired back) override; void FillRectangle(PRectangle rc, Fill fill) override; void FillRectangle(PRectangle rc, Surface &surfacePattern) override; @@ -534,6 +535,15 @@ void SurfaceImpl::RectangleDraw(PRectangle rc, FillStroke fillStroke) { } } +void SurfaceImpl::RectangleFrame(PRectangle rc, Stroke stroke) { + if (context) { + CairoRectangle(rc.Inset(stroke.width / 2)); + PenColourAlpha(stroke.colour); + cairo_set_line_width(context, stroke.width); + cairo_stroke(context); + } +} + void SurfaceImpl::FillRectangle(PRectangle rc, ColourDesired back) { PenColour(back); if (context && (rc.left < maxCoordinate)) { // Protect against out of range -- cgit v1.2.3