aboutsummaryrefslogtreecommitdiffhomepage
path: root/gtk/PlatGTK.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2021-03-25 10:57:35 +1100
committerNeil <nyamatongwe@gmail.com>2021-03-25 10:57:35 +1100
commit2f0011955fe7d3ac0b80247abc88ee0461104eb6 (patch)
tree803c13dc6a4cfac883ab488c975149428adebf29 /gtk/PlatGTK.cxx
parentfa10779da55ff13c95a0cd39bffdf57dcdfc9cc5 (diff)
downloadscintilla-mirror-2f0011955fe7d3ac0b80247abc88ee0461104eb6.tar.gz
Add FillRectangleAligned to align rectangle to pixel grid on x-axis before
filling it to avoid partially drawn pixels on left and right edges.
Diffstat (limited to 'gtk/PlatGTK.cxx')
-rwxr-xr-xgtk/PlatGTK.cxx5
1 files changed, 5 insertions, 0 deletions
diff --git a/gtk/PlatGTK.cxx b/gtk/PlatGTK.cxx
index 5296691d1..1732c217e 100755
--- a/gtk/PlatGTK.cxx
+++ b/gtk/PlatGTK.cxx
@@ -172,6 +172,7 @@ public:
void RectangleFrame(PRectangle rc, Stroke stroke) override;
void FillRectangle(PRectangle rc, ColourDesired back) override;
void FillRectangle(PRectangle rc, Fill fill) override;
+ void FillRectangleAligned(PRectangle rc, Fill fill) override;
void FillRectangle(PRectangle rc, Surface &surfacePattern) override;
void RoundedRectangle(PRectangle rc, ColourDesired fore, ColourDesired back) override;
void RoundedRectangle(PRectangle rc, FillStroke fillStroke) override;
@@ -592,6 +593,10 @@ void SurfaceImpl::FillRectangle(PRectangle rc, Fill fill) {
}
}
+void SurfaceImpl::FillRectangleAligned(PRectangle rc, Fill fill) {
+ FillRectangle(PixelAlign(rc, 1), fill);
+}
+
void SurfaceImpl::FillRectangle(PRectangle rc, Surface &surfacePattern) {
SurfaceImpl &surfi = dynamic_cast<SurfaceImpl &>(surfacePattern);
if (context && surfi.psurf) {