VCL cleanup WidgetDrawInterface

Desktop / LibreOffice - Jan-Marek Glogowski [fbihome.de] - 18 June 2019 18:27 EDT

I don't understand why WidgetDrawInterface, which is basically a copy of the SalGraphics native controls interface, duplicated it, instead of cleaning things up.

The whole commit message of commit 8fcfa3853a81, which added this code, is just: "custom widgets: Custom Widget Themes". That's it.

So this patch does, what the original one skipped: replacing the SalGraphics interface with the WidgetDrawInterface. One result is the addition of handleDamage to SalGraphics to correctly handle the damage done by a custom widget theme to the underlying SalGraphics implementation.

Change-Id: I5fda1a64b28e6560fb3c62e02b6dcda827f698e2 Reviewed-on: https://gerrit.libreoffice.org/74118

4a478227f5af VCL cleanup WidgetDrawInterface
vcl/Library_vcl.mk | 1 -
vcl/headless/svpframe.cxx | 2 +-
vcl/headless/svpgdi.cxx | 63 --------------
vcl/inc/WidgetDrawInterface.hxx | 57 ++++++++----
vcl/inc/headless/svpgdi.hxx | 21 -----
vcl/inc/qt5/Qt5Graphics.hxx | 49 +----------
vcl/inc/qt5/Qt5Graphics_Controls.hxx | 27 +++---
vcl/inc/qt5/Qt5SvpGraphics.hxx | 41 +--------
vcl/inc/quartz/salgdi.h | 10 +--
vcl/inc/salgdi.hxx | 139 ++++++++----------------------
vcl/inc/unx/gtk/gtkgdi.hxx | 17 ++--
vcl/inc/win/salgdi.h | 5 +-
vcl/osx/salnativewidgets.cxx | 2 +-
vcl/qt5/Qt5Graphics.cxx | 25 +++---
vcl/qt5/Qt5Graphics_Controls.cxx | 4 +-
vcl/qt5/Qt5SvpGraphics.cxx | 51 +++++------
vcl/source/gdi/salgdilayout.cxx | 56 ++++--------
vcl/source/gdi/salnativewidgets-none.cxx | 53 ------------
vcl/source/outdev/nativecontrols.cxx | 2 +-
vcl/unx/gtk/gtksalframe.cxx | 2 +-
vcl/unx/gtk/salnativewidgets-gtk.cxx | 8 +-
vcl/unx/gtk3/gtk3gtkframe.cxx | 2 +-
vcl/unx/gtk3/gtk3salnativewidgets-gtk.cxx | 49 +++--------
vcl/win/gdi/salnativewidgets-luna.cxx | 2 +-
24 files changed, 193 insertions(+), 495 deletions(-)

Upstream: cgit.freedesktop.org


  • Share