From 4b553e8fce75afd0ad0df2e752edafe739db44dc Mon Sep 17 00:00:00 2001 From: Neil Date: Fri, 19 Mar 2021 14:46:09 +1100 Subject: Add Surface::PixelDivisions which detects 'retina' displays that use multiple display pixels per logical pixel. Likely will only return >1 for Apple displays. Can be used for finer placement of elements. --- qt/ScintillaEditBase/PlatQt.cpp | 6 ++++++ qt/ScintillaEditBase/PlatQt.h | 1 + 2 files changed, 7 insertions(+) (limited to 'qt') diff --git a/qt/ScintillaEditBase/PlatQt.cpp b/qt/ScintillaEditBase/PlatQt.cpp index b7d0e3a53..1b8f75c02 100644 --- a/qt/ScintillaEditBase/PlatQt.cpp +++ b/qt/ScintillaEditBase/PlatQt.cpp @@ -263,6 +263,12 @@ int SurfaceImpl::LogPixelsY() return device->logicalDpiY(); } +int SurfaceImpl::PixelDivisions() +{ + // Qt uses device pixels. + return 1; +} + int SurfaceImpl::DeviceHeightFont(int points) { return points; diff --git a/qt/ScintillaEditBase/PlatQt.h b/qt/ScintillaEditBase/PlatQt.h index ae0994b32..7b43e0b02 100644 --- a/qt/ScintillaEditBase/PlatQt.h +++ b/qt/ScintillaEditBase/PlatQt.h @@ -94,6 +94,7 @@ public: bool Initialised() override; void PenColour(ColourDesired fore) override; int LogPixelsY() override; + int PixelDivisions() override; int DeviceHeightFont(int points) override; void MoveTo(int x_, int y_) override; void LineTo(int x_, int y_) override; -- cgit v1.2.3