vcl/inc/qt5/Qt5Frame.hxx             |    2 
 vcl/inc/qt5/Qt5Graphics.hxx          |    2 
 vcl/inc/qt5/Qt5Graphics_Controls.hxx |   22 ++++
 vcl/qt5/Qt5Frame.cxx                 |   19 ---
 vcl/qt5/Qt5Graphics.cxx              |    1 
 vcl/qt5/Qt5Graphics_Controls.cxx     |  174 ++++++++++++++++-------------------
 6 files changed, 107 insertions(+), 113 deletions(-)

New commits:
commit 7c6c9951d3be0af11099f78462f7dfc8772df963
Author:     Jan-Marek Glogowski <jan-marek.glogow...@extern.cib.de>
AuthorDate: Sat Feb 29 12:43:32 2020 +0100
Commit:     Jan-Marek Glogowski <glo...@fbihome.de>
CommitDate: Mon Mar 2 13:02:24 2020 +0100

    Qt5 some refactoring for HiDPI merge
    
    This is a preparatory patch for merging the initial fix for
    tdf#127687, the Qt5 HiDPI scaling support, and generally to make
    the style handling code a little bit more readable.
    
    It includes:
    * Moving all lcl_ Qt5Graphics_Controls functions into the class as
      private functions without lcl_ prefix.
    * Add three additional helpers - pixelMetric, sizeFromContents and
      subControlRect - to cut down boilerplate QApplication::style()->
      prefixes for the style calls everywhere.
    * Drop the superfluous Qt5Frame::TriggerPaintEvent functions.
    * Drop the single, broken maGeometry.nTopDecoration filling.
    * Split some very long lines of nested call code by using some
      intermediate variables.
    * Move a Qt5Data include from hxx into cpp
    
    Change-Id: Iae1bfafd14c4163447f3d55e2307f0f617e68a0e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/89751
    Tested-by: Jenkins
    Reviewed-by: Jan-Marek Glogowski <glo...@fbihome.de>

diff --git a/vcl/inc/qt5/Qt5Frame.hxx b/vcl/inc/qt5/Qt5Frame.hxx
index b5eea5b15b1e..5a88221565a3 100644
--- a/vcl/inc/qt5/Qt5Frame.hxx
+++ b/vcl/inc/qt5/Qt5Frame.hxx
@@ -132,8 +132,6 @@ class VCLPLUG_QT5_PUBLIC Qt5Frame : public QObject, public 
SalFrame
     bool isMaximized() const;
     void SetWindowStateImpl(Qt::WindowStates eState);
 
-    void TriggerPaintEvent();
-    void TriggerPaintEvent(QRect aRect);
     void fixICCCMwindowGroup();
 
 public:
diff --git a/vcl/inc/qt5/Qt5Graphics.hxx b/vcl/inc/qt5/Qt5Graphics.hxx
index a17421b2f65d..c36d22267fd2 100644
--- a/vcl/inc/qt5/Qt5Graphics.hxx
+++ b/vcl/inc/qt5/Qt5Graphics.hxx
@@ -27,8 +27,6 @@
 #include <QtGui/QPainterPath>
 #include <QtGui/QRegion>
 
-#include "Qt5Data.hxx"
-
 class PhysicalFontCollection;
 class QImage;
 class QPushButton;
diff --git a/vcl/inc/qt5/Qt5Graphics_Controls.hxx 
b/vcl/inc/qt5/Qt5Graphics_Controls.hxx
index da1af4dc066b..f70804cea844 100644
--- a/vcl/inc/qt5/Qt5Graphics_Controls.hxx
+++ b/vcl/inc/qt5/Qt5Graphics_Controls.hxx
@@ -28,6 +28,8 @@
 #include <QtGui/QPainter>
 #include <QtGui/QRegion>
 #include <QtWidgets/QPushButton>
+#include <QtWidgets/QStyle>
+#include <QtWidgets/QStyleOption>
 
 class Qt5Graphics_Controls final : public vcl::WidgetDrawInterface
 {
@@ -51,6 +53,26 @@ public:
                                 const ImplControlValue& aValue, const 
OUString& aCaption,
                                 tools::Rectangle& rNativeBoundingRegion,
                                 tools::Rectangle& rNativeContentRegion) 
override;
+
+private:
+    static int pixelMetric(QStyle::PixelMetric metric, const QStyleOption* 
option = nullptr);
+    static QSize sizeFromContents(QStyle::ContentsType type, const 
QStyleOption* option,
+                                  const QSize& contentsSize);
+    static QRect subControlRect(QStyle::ComplexControl control, const 
QStyleOptionComplex* option,
+                                QStyle::SubControl subControl);
+
+    static void draw(QStyle::ControlElement element, QStyleOption* option, 
QImage* image,
+                     QStyle::State const state = QStyle::State_None, QRect 
rect = QRect());
+    static void draw(QStyle::PrimitiveElement element, QStyleOption* option, 
QImage* image,
+                     QStyle::State const state = QStyle::State_None, QRect 
rect = QRect());
+    static void draw(QStyle::ComplexControl element, QStyleOptionComplex* 
option, QImage* image,
+                     QStyle::State const state = QStyle::State_None);
+    static void drawFrame(QStyle::PrimitiveElement element, QImage* image,
+                          QStyle::State const& state, bool bClip = true,
+                          QStyle::PixelMetric eLineMetric = 
QStyle::PM_DefaultFrameWidth);
+
+    static void fillQStyleOptionTab(const ImplControlValue& value, 
QStyleOptionTab& sot);
+    static void fullQStyleOptionTabWidgetFrame(QStyleOptionTabWidgetFrame& 
option);
 };
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/qt5/Qt5Frame.cxx b/vcl/qt5/Qt5Frame.cxx
index 2f6738485fb0..8f1594240f46 100644
--- a/vcl/qt5/Qt5Frame.cxx
+++ b/vcl/qt5/Qt5Frame.cxx
@@ -287,19 +287,6 @@ void Qt5Frame::Damage(sal_Int32 nExtentsX, sal_Int32 
nExtentsY, sal_Int32 nExten
     m_pQWidget->update(nExtentsX, nExtentsY, nExtentsWidth, nExtentsHeight);
 }
 
-void Qt5Frame::TriggerPaintEvent()
-{
-    QSize aSize(m_pQWidget->size());
-    SalPaintEvent aPaintEvt(0, 0, aSize.width(), aSize.height(), true);
-    CallCallback(SalEvent::Paint, &aPaintEvt);
-}
-
-void Qt5Frame::TriggerPaintEvent(QRect aRect)
-{
-    SalPaintEvent aPaintEvt(aRect.x(), aRect.y(), aRect.width(), 
aRect.height(), true);
-    CallCallback(SalEvent::Paint, &aPaintEvt);
-}
-
 void Qt5Frame::InitQt5SvpGraphics(Qt5SvpGraphics* pQt5SvpGraphics)
 {
     int width = 640;
@@ -684,12 +671,6 @@ bool Qt5Frame::GetWindowState(SalFrameState* pState)
         pState->mnY = rect.y();
         pState->mnWidth = rect.width();
         pState->mnHeight = rect.height();
-        // the menubar is drawn natively, adjust for that
-        if (maGeometry.nTopDecoration)
-        {
-            pState->mnY += maGeometry.nTopDecoration;
-            pState->mnHeight -= maGeometry.nTopDecoration;
-        }
         pState->mnMask |= WindowStateMask::X | WindowStateMask::Y | 
WindowStateMask::Width
                           | WindowStateMask::Height;
     }
diff --git a/vcl/qt5/Qt5Graphics.cxx b/vcl/qt5/Qt5Graphics.cxx
index 60054700596e..e9d57d2d86af 100644
--- a/vcl/qt5/Qt5Graphics.cxx
+++ b/vcl/qt5/Qt5Graphics.cxx
@@ -19,6 +19,7 @@
 
 #include <Qt5Graphics.hxx>
 
+#include <Qt5Data.hxx>
 #include <Qt5Font.hxx>
 #include <Qt5Frame.hxx>
 #include <Qt5Graphics_Controls.hxx>
diff --git a/vcl/qt5/Qt5Graphics_Controls.cxx b/vcl/qt5/Qt5Graphics_Controls.cxx
index ff8537764bd9..a6d8e6fa23e5 100644
--- a/vcl/qt5/Qt5Graphics_Controls.cxx
+++ b/vcl/qt5/Qt5Graphics_Controls.cxx
@@ -21,8 +21,6 @@
 
 #include <QtGui/QPainter>
 #include <QtWidgets/QApplication>
-#include <QtWidgets/QStyle>
-#include <QtWidgets/QStyleOption>
 #include <QtWidgets/QFrame>
 #include <QtWidgets/QLabel>
 
@@ -116,10 +114,27 @@ bool 
Qt5Graphics_Controls::isNativeControlSupported(ControlType type, ControlPar
     return false;
 }
 
-namespace
+inline int Qt5Graphics_Controls::pixelMetric(QStyle::PixelMetric metric, const 
QStyleOption* option)
 {
-void draw(QStyle::ControlElement element, QStyleOption* option, QImage* image,
-          QStyle::State const state = QStyle::State_None, QRect rect = QRect())
+    return QApplication::style()->pixelMetric(metric, option);
+}
+
+inline QSize Qt5Graphics_Controls::sizeFromContents(QStyle::ContentsType type,
+                                                    const QStyleOption* option,
+                                                    const QSize& contentsSize)
+{
+    return QApplication::style()->sizeFromContents(type, option, contentsSize);
+}
+
+inline QRect Qt5Graphics_Controls::subControlRect(QStyle::ComplexControl 
control,
+                                                  const QStyleOptionComplex* 
option,
+                                                  QStyle::SubControl 
subControl)
+{
+    return QApplication::style()->subControlRect(control, option, subControl);
+}
+
+void Qt5Graphics_Controls::draw(QStyle::ControlElement element, QStyleOption* 
option, QImage* image,
+                                QStyle::State const state, QRect rect)
 {
     option->state |= state;
     option->rect = !rect.isNull() ? rect : image->rect();
@@ -128,8 +143,8 @@ void draw(QStyle::ControlElement element, QStyleOption* 
option, QImage* image,
     QApplication::style()->drawControl(element, option, &painter);
 }
 
-void draw(QStyle::PrimitiveElement element, QStyleOption* option, QImage* 
image,
-          QStyle::State const state = QStyle::State_None, QRect rect = QRect())
+void Qt5Graphics_Controls::draw(QStyle::PrimitiveElement element, 
QStyleOption* option,
+                                QImage* image, QStyle::State const state, 
QRect rect)
 {
     option->state |= state;
     option->rect = !rect.isNull() ? rect : image->rect();
@@ -138,8 +153,8 @@ void draw(QStyle::PrimitiveElement element, QStyleOption* 
option, QImage* image,
     QApplication::style()->drawPrimitive(element, option, &painter);
 }
 
-void draw(QStyle::ComplexControl element, QStyleOptionComplex* option, QImage* 
image,
-          QStyle::State const state = QStyle::State_None)
+void Qt5Graphics_Controls::draw(QStyle::ComplexControl element, 
QStyleOptionComplex* option,
+                                QImage* image, QStyle::State const state)
 {
     option->state |= state;
     option->rect = image->rect();
@@ -148,11 +163,11 @@ void draw(QStyle::ComplexControl element, 
QStyleOptionComplex* option, QImage* i
     QApplication::style()->drawComplexControl(element, option, &painter);
 }
 
-void lcl_drawFrame(QStyle::PrimitiveElement element, QImage* image, 
QStyle::State const& state,
-                   bool bClip = true,
-                   QStyle::PixelMetric eLineMetric = 
QStyle::PM_DefaultFrameWidth)
+void Qt5Graphics_Controls::drawFrame(QStyle::PrimitiveElement element, QImage* 
image,
+                                     QStyle::State const& state, bool bClip,
+                                     QStyle::PixelMetric eLineMetric)
 {
-    const int fw = QApplication::style()->pixelMetric(eLineMetric);
+    const int fw = pixelMetric(eLineMetric);
     QStyleOptionFrame option;
     option.frameShape = QFrame::StyledPanel;
     option.state = QStyle::State_Sunken | state;
@@ -167,7 +182,7 @@ void lcl_drawFrame(QStyle::PrimitiveElement element, 
QImage* image, QStyle::Stat
     QApplication::style()->drawPrimitive(element, &option, &painter);
 }
 
-void lcl_fillQStyleOptionTab(const ImplControlValue& value, QStyleOptionTab& 
sot)
+void Qt5Graphics_Controls::fillQStyleOptionTab(const ImplControlValue& value, 
QStyleOptionTab& sot)
 {
     const TabitemValue& rValue = static_cast<const TabitemValue&>(value);
     if (rValue.isFirst())
@@ -178,16 +193,15 @@ void lcl_fillQStyleOptionTab(const ImplControlValue& 
value, QStyleOptionTab& sot
         sot.position = QStyleOptionTab::Middle;
 }
 
-void lcl_fullQStyleOptionTabWidgetFrame(QStyleOptionTabWidgetFrame& option)
+void 
Qt5Graphics_Controls::fullQStyleOptionTabWidgetFrame(QStyleOptionTabWidgetFrame&
 option)
 {
     option.state = QStyle::State_Enabled;
     option.rightCornerWidgetSize = QSize(0, 0);
     option.leftCornerWidgetSize = QSize(0, 0);
-    option.lineWidth = 
QApplication::style()->pixelMetric(QStyle::PM_DefaultFrameWidth);
+    option.lineWidth = pixelMetric(QStyle::PM_DefaultFrameWidth);
     option.midLineWidth = 0;
     option.shape = QTabBar::RoundedNorth;
 }
-}
 
 bool Qt5Graphics_Controls::drawNativeControl(ControlType type, ControlPart 
part,
                                              const tools::Rectangle& 
rControlRegion,
@@ -310,8 +324,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
             // with at least Plastique style, so clip only to the separator 
itself
             // (QSize( 2, 2 ) is hardcoded in Qt)
             option.rect = m_image->rect();
-            QSize size = 
QApplication::style()->sizeFromContents(QStyle::CT_MenuItem, &option,
-                                                                 QSize(2, 2));
+            QSize size = sizeFromContents(QStyle::CT_MenuItem, &option, 
QSize(2, 2));
             QRect rect = m_image->rect();
             QPoint center = rect.center();
             rect.setHeight(size.height());
@@ -321,7 +334,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
 
             QPainter painter(m_image.get());
             // don't paint over popup frame border (like the hack above, but 
here it can be simpler)
-            const int fw = 
QApplication::style()->pixelMetric(QStyle::PM_MenuPanelWidth);
+            const int fw = pixelMetric(QStyle::PM_MenuPanelWidth);
             painter.setClipRect(rect.adjusted(fw, 0, -fw, 0));
             QApplication::style()->drawControl(QStyle::CE_MenuItem, &option, 
&painter);
         }
@@ -342,7 +355,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
             QRect rect(menuItemRect.topLeft() - widgetRect.topLeft(),
                        widgetRect.size().expandedTo(menuItemRect.size()));
             // checkboxes are always displayed next to images in menus, so are 
never centered
-            const int focus_size = 
QApplication::style()->pixelMetric(QStyle::PM_FocusFrameHMargin);
+            const int focus_size = pixelMetric(QStyle::PM_FocusFrameHMargin);
             rect.moveTo(-focus_size, rect.y());
             draw(QStyle::CE_MenuItem, &option, m_image.get(),
                  vclStateValue2StateFlag(nControlState & 
~ControlState::PRESSED, value), rect);
@@ -382,7 +395,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
              && (part == ControlPart::ThumbVert || part == 
ControlPart::ThumbHorz))
     {
         // reduce paint area only to the handle area
-        const int handleExtend = 
QApplication::style()->pixelMetric(QStyle::PM_ToolBarHandleExtent);
+        const int handleExtend = pixelMetric(QStyle::PM_ToolBarHandleExtent);
         QStyleOption option;
         QRect aRect = m_image->rect();
         if (part == ControlPart::ThumbVert)
@@ -397,8 +410,8 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
     }
     else if (type == ControlType::Editbox || type == 
ControlType::MultilineEditbox)
     {
-        lcl_drawFrame(QStyle::PE_FrameLineEdit, m_image.get(),
-                      vclStateValue2StateFlag(nControlState, value), false);
+        drawFrame(QStyle::PE_FrameLineEdit, m_image.get(),
+                  vclStateValue2StateFlag(nControlState, value), false);
     }
     else if (type == ControlType::Combobox)
     {
@@ -414,9 +427,9 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
         switch (part)
         {
             case ControlPart::ListboxWindow:
-                lcl_drawFrame(QStyle::PE_Frame, m_image.get(),
-                              vclStateValue2StateFlag(nControlState, value), 
true,
-                              QStyle::PM_ComboBoxFrameWidth);
+                drawFrame(QStyle::PE_Frame, m_image.get(),
+                          vclStateValue2StateFlag(nControlState, value), true,
+                          QStyle::PM_ComboBoxFrameWidth);
                 break;
             case ControlPart::SubEdit:
                 draw(QStyle::CE_ComboBoxLabel, &option, m_image.get(),
@@ -568,8 +581,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
     }
     else if (type == ControlType::Frame)
     {
-        lcl_drawFrame(QStyle::PE_Frame, m_image.get(),
-                      vclStateValue2StateFlag(nControlState, value));
+        drawFrame(QStyle::PE_Frame, m_image.get(), 
vclStateValue2StateFlag(nControlState, value));
     }
     else if (type == ControlType::WindowBackground)
     {
@@ -617,7 +629,7 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
     else if (type == ControlType::TabItem && part == ControlPart::Entire)
     {
         QStyleOptionTab sot;
-        lcl_fillQStyleOptionTab(value, sot);
+        fillQStyleOptionTab(value, sot);
         draw(QStyle::CE_TabBarTabShape, &sot, m_image.get(),
              vclStateValue2StateFlag(nControlState, value));
     }
@@ -628,11 +640,10 @@ bool Qt5Graphics_Controls::drawNativeControl(ControlType 
type, ControlPart part,
         // get the overlap size for the tabs, so they will overlap the frame
         QStyleOptionTab tabOverlap;
         tabOverlap.shape = QTabBar::RoundedNorth;
-        TabPaneValue::m_nOverlap
-            = QApplication::style()->pixelMetric(QStyle::PM_TabBarBaseOverlap, 
&tabOverlap);
+        TabPaneValue::m_nOverlap = pixelMetric(QStyle::PM_TabBarBaseOverlap, 
&tabOverlap);
 
         QStyleOptionTabWidgetFrame option;
-        lcl_fullQStyleOptionTabWidgetFrame(option);
+        fullQStyleOptionTabWidgetFrame(option);
         option.tabBarRect = toQRect(rValue.m_aTabHeaderRect);
         option.selectedTabRect
             = rValue.m_aSelectedTabRect.IsEmpty() ? QRect() : 
toQRect(rValue.m_aSelectedTabRect);
@@ -673,8 +684,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
 
                 if (controlState & ControlState::DEFAULT)
                 {
-                    int size = 
QApplication::style()->pixelMetric(QStyle::PM_ButtonDefaultIndicator,
-                                                                  
&styleOption);
+                    int size = pixelMetric(QStyle::PM_ButtonDefaultIndicator, 
&styleOption);
                     boundingRect.adjust(-size, -size, size, size);
                     retVal = true;
                 }
@@ -686,9 +696,8 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
             QStyleOptionFrame fo;
             fo.frameShape = QFrame::StyledPanel;
             fo.state = QStyle::State_Sunken;
-            fo.lineWidth = 
QApplication::style()->pixelMetric(QStyle::PM_DefaultFrameWidth);
-            QSize aMinSize = 
QApplication::style()->sizeFromContents(QStyle::CT_LineEdit, &fo,
-                                                                     
contentRect.size());
+            fo.lineWidth = pixelMetric(QStyle::PM_DefaultFrameWidth);
+            QSize aMinSize = sizeFromContents(QStyle::CT_LineEdit, &fo, 
contentRect.size());
             if (aMinSize.height() > boundingRect.height())
             {
                 int nHeight = (aMinSize.height() - boundingRect.height()) / 2;
@@ -709,21 +718,15 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
             {
                 styleOption.state = vclStateValue2StateFlag(controlState, val);
 
-                contentRect.setWidth(
-                    
QApplication::style()->pixelMetric(QStyle::PM_IndicatorWidth, &styleOption));
-                contentRect.setHeight(
-                    
QApplication::style()->pixelMetric(QStyle::PM_IndicatorHeight, &styleOption));
+                int nWidth = pixelMetric(QStyle::PM_IndicatorWidth, 
&styleOption);
+                int nHeight = pixelMetric(QStyle::PM_IndicatorHeight, 
&styleOption);
+                contentRect.setSize({ nWidth, nHeight });
 
-                contentRect.adjust(0, 0,
-                                   2
-                                       * QApplication::style()->pixelMetric(
-                                             QStyle::PM_FocusFrameHMargin, 
&styleOption),
-                                   2
-                                       * QApplication::style()->pixelMetric(
-                                             QStyle::PM_FocusFrameVMargin, 
&styleOption));
+                int nHMargin = pixelMetric(QStyle::PM_FocusFrameHMargin, 
&styleOption);
+                int nVMargin = pixelMetric(QStyle::PM_FocusFrameVMargin, 
&styleOption);
+                contentRect.adjust(0, 0, 2 * nHMargin, 2 * nVMargin);
 
                 boundingRect = contentRect;
-
                 retVal = true;
             }
             break;
@@ -743,8 +746,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                     // assume contents is a text line
                     int nHeight = QApplication::fontMetrics().height();
                     QSize aContentSize(contentRect.width(), nHeight);
-                    QSize aMinSize = 
QApplication::style()->sizeFromContents(QStyle::CT_ComboBox,
-                                                                             
&cbo, aContentSize);
+                    QSize aMinSize = sizeFromContents(QStyle::CT_ComboBox, 
&cbo, aContentSize);
                     if (aMinSize.height() > contentRect.height())
                         contentRect.adjust(0, 0, 0, aMinSize.height() - 
contentRect.height());
                     boundingRect = contentRect;
@@ -752,15 +754,15 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                     break;
                 }
                 case ControlPart::ButtonDown:
-                    contentRect = 
QApplication::style()->subControlRect(QStyle::CC_ComboBox, &cbo,
-                                                                        
QStyle::SC_ComboBoxArrow);
+                    contentRect
+                        = subControlRect(QStyle::CC_ComboBox, &cbo, 
QStyle::SC_ComboBoxArrow);
                     contentRect.translate(boundingRect.left(), 
boundingRect.top());
                     retVal = true;
                     break;
                 case ControlPart::SubEdit:
                 {
-                    contentRect = QApplication::style()->subControlRect(
-                        QStyle::CC_ComboBox, &cbo, 
QStyle::SC_ComboBoxEditField);
+                    contentRect
+                        = subControlRect(QStyle::CC_ComboBox, &cbo, 
QStyle::SC_ComboBoxEditField);
                     contentRect.translate(boundingRect.left(), 
boundingRect.top());
                     retVal = true;
                     break;
@@ -784,8 +786,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                 {
                     int nHeight = QApplication::fontMetrics().height();
                     QSize aContentSize(contentRect.width(), nHeight);
-                    QSize aMinSize = 
QApplication::style()->sizeFromContents(QStyle::CT_SpinBox,
-                                                                             
&sbo, aContentSize);
+                    QSize aMinSize = sizeFromContents(QStyle::CT_SpinBox, 
&sbo, aContentSize);
                     if (aMinSize.height() > contentRect.height())
                         contentRect.adjust(0, 0, 0, aMinSize.height() - 
contentRect.height());
                     boundingRect = contentRect;
@@ -793,24 +794,22 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                     break;
                 }
                 case ControlPart::ButtonUp:
-                    contentRect = 
QApplication::style()->subControlRect(QStyle::CC_SpinBox, &sbo,
-                                                                        
QStyle::SC_SpinBoxUp);
+                    contentRect = subControlRect(QStyle::CC_SpinBox, &sbo, 
QStyle::SC_SpinBoxUp);
                     contentRect.translate(boundingRect.left(), 
boundingRect.top());
                     retVal = true;
                     boundingRect = QRect();
                     break;
 
                 case ControlPart::ButtonDown:
-                    contentRect = 
QApplication::style()->subControlRect(QStyle::CC_SpinBox, &sbo,
-                                                                        
QStyle::SC_SpinBoxDown);
+                    contentRect = subControlRect(QStyle::CC_SpinBox, &sbo, 
QStyle::SC_SpinBoxDown);
                     retVal = true;
                     contentRect.translate(boundingRect.left(), 
boundingRect.top());
                     boundingRect = QRect();
                     break;
 
                 case ControlPart::SubEdit:
-                    contentRect = QApplication::style()->subControlRect(
-                        QStyle::CC_SpinBox, &sbo, QStyle::SC_SpinBoxEditField);
+                    contentRect
+                        = subControlRect(QStyle::CC_SpinBox, &sbo, 
QStyle::SC_SpinBoxEditField);
                     retVal = true;
                     contentRect.translate(boundingRect.left(), 
boundingRect.top());
                     break;
@@ -825,13 +824,13 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
             switch (part)
             {
                 case ControlPart::MenuItemCheckMark:
-                    h = 
QApplication::style()->pixelMetric(QStyle::PM_IndicatorHeight);
-                    w = 
QApplication::style()->pixelMetric(QStyle::PM_IndicatorWidth);
+                    h = pixelMetric(QStyle::PM_IndicatorHeight);
+                    w = pixelMetric(QStyle::PM_IndicatorWidth);
                     retVal = true;
                     break;
                 case ControlPart::MenuItemRadioMark:
-                    h = 
QApplication::style()->pixelMetric(QStyle::PM_ExclusiveIndicatorHeight);
-                    w = 
QApplication::style()->pixelMetric(QStyle::PM_ExclusiveIndicatorWidth);
+                    h = pixelMetric(QStyle::PM_ExclusiveIndicatorHeight);
+                    w = pixelMetric(QStyle::PM_ExclusiveIndicatorWidth);
                     retVal = true;
                     break;
                 default:
@@ -851,8 +850,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                 auto nStyle = static_cast<DrawFrameFlags>(val.getNumericVal() 
& 0xFFF0);
                 if (nStyle & DrawFrameFlags::NoDraw)
                 {
-                    const int nFrameWidth
-                        = 
QApplication::style()->pixelMetric(QStyle::PM_DefaultFrameWidth);
+                    const int nFrameWidth = 
pixelMetric(QStyle::PM_DefaultFrameWidth);
                     contentRect.adjust(nFrameWidth, nFrameWidth, -nFrameWidth, 
-nFrameWidth);
                 }
                 retVal = true;
@@ -861,14 +859,12 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
         }
         case ControlType::Radiobutton:
         {
-            const int h = 
QApplication::style()->pixelMetric(QStyle::PM_ExclusiveIndicatorHeight);
-            const int w = 
QApplication::style()->pixelMetric(QStyle::PM_ExclusiveIndicatorWidth);
+            const int h = pixelMetric(QStyle::PM_ExclusiveIndicatorHeight);
+            const int w = pixelMetric(QStyle::PM_ExclusiveIndicatorWidth);
 
             contentRect = QRect(boundingRect.left(), boundingRect.top(), w, h);
-            contentRect.adjust(
-                0, 0,
-                2 * 
QApplication::style()->pixelMetric(QStyle::PM_FocusFrameHMargin, &styleOption),
-                2 * 
QApplication::style()->pixelMetric(QStyle::PM_FocusFrameVMargin, &styleOption));
+            contentRect.adjust(0, 0, 2 * 
pixelMetric(QStyle::PM_FocusFrameHMargin, &styleOption),
+                               2 * pixelMetric(QStyle::PM_FocusFrameVMargin, 
&styleOption));
             boundingRect = contentRect;
 
             retVal = true;
@@ -876,7 +872,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
         }
         case ControlType::Slider:
         {
-            const int w = 
QApplication::style()->pixelMetric(QStyle::PM_SliderLength);
+            const int w = pixelMetric(QStyle::PM_SliderLength);
             if (part == ControlPart::ThumbHorz)
             {
                 contentRect
@@ -895,7 +891,7 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
         }
         case ControlType::Toolbar:
         {
-            const int nWorH = 
QApplication::style()->pixelMetric(QStyle::PM_ToolBarHandleExtent);
+            const int nWorH = pixelMetric(QStyle::PM_ToolBarHandleExtent);
             if (part == ControlPart::ThumbHorz)
             {
                 contentRect
@@ -934,13 +930,12 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
                 // widget and screen coordinates the same. QStyle functions 
should use screen
                 // coordinates but at least QPlastiqueStyle::subControlRect() 
is buggy
                 // and sometimes uses widget coordinates.
-                QRect rect = contentRect;
-                rect.moveTo(0, 0);
-                option.rect = rect;
-                rect = 
QApplication::style()->subControlRect(QStyle::CC_ScrollBar, &option,
-                                                             
QStyle::SC_ScrollBarGroove);
-                rect.translate(contentRect.topLeft()); // reverse the 
workaround above
-                contentRect = boundingRect = rect;
+                option.rect = QRect({ 0, 0 }, contentRect.size());
+                contentRect
+                    = subControlRect(QStyle::CC_ScrollBar, &option, 
QStyle::SC_ScrollBarGroove);
+                contentRect.translate(contentRect.topLeft()); // reverse the 
workaround above
+
+                boundingRect = contentRect;
                 retVal = true;
             }
             break;
@@ -948,9 +943,8 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
         case ControlType::TabItem:
         {
             QStyleOptionTab sot;
-            lcl_fillQStyleOptionTab(val, sot);
-            QSize aMinSize = 
QApplication::style()->sizeFromContents(QStyle::CT_TabBarTab, &sot,
-                                                                     
contentRect.size());
+            fillQStyleOptionTab(val, sot);
+            QSize aMinSize = sizeFromContents(QStyle::CT_TabBarTab, &sot, 
contentRect.size());
             contentRect.setSize(aMinSize);
             boundingRect = contentRect;
             retVal = true;
@@ -960,8 +954,8 @@ bool 
Qt5Graphics_Controls::getNativeControlRegion(ControlType type, ControlPart
         {
             const TabPaneValue& rValue = static_cast<const TabPaneValue&>(val);
             QStyleOptionTabWidgetFrame sotwf;
-            lcl_fullQStyleOptionTabWidgetFrame(sotwf);
-            QSize aMinSize = QApplication::style()->sizeFromContents(
+            fullQStyleOptionTabWidgetFrame(sotwf);
+            QSize aMinSize = sizeFromContents(
                 QStyle::CT_TabWidget, &sotwf,
                 QSize(std::max(rValue.m_aTabHeaderRect.GetWidth(), 
controlRegion.GetWidth()),
                       rValue.m_aTabHeaderRect.GetHeight() + 
controlRegion.GetHeight()));
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to