[Libreoffice-commits] core.git: Branch 'private/jmux/kde4-vcl-5-0-fix' - vcl/unx
Jan-Marek Glogowski
glogow at fbihome.de
Wed Jul 8 07:57:15 PDT 2015
vcl/unx/kde4/KDESalGraphics.cxx | 37 +++++++++++++++++++------------------
1 file changed, 19 insertions(+), 18 deletions(-)
New commits:
commit 310ed685c25b9631a075d728c380a9a9add21376
Author: Jan-Marek Glogowski <glogow at fbihome.de>
Date: Wed Jul 8 14:56:24 2015 +0000
test
Change-Id: Ia5b6cd25d1027569887fcacebcbd3db47eccd999
diff --git a/vcl/unx/kde4/KDESalGraphics.cxx b/vcl/unx/kde4/KDESalGraphics.cxx
index cc320ae..282fdb6 100644
--- a/vcl/unx/kde4/KDESalGraphics.cxx
+++ b/vcl/unx/kde4/KDESalGraphics.cxx
@@ -109,6 +109,7 @@ bool KDESalGraphics::IsNativeControlSupported( ControlType type, ControlPart par
case CTRL_LISTBOX:
return (part == PART_ENTIRE_CONTROL
+ || part == PART_BUTTON_DOWN
|| part == PART_SUB_EDIT);
case CTRL_SPINBOX:
@@ -247,7 +248,7 @@ bool KDESalGraphics::drawNativeControl( ControlType type, ControlPart part,
widgetRect.height(),
QImage::Format_ARGB32 );
}
- m_image->fill(KApplication::palette().color(QPalette::Window).rgb());
+ m_image->fill( Qt::transparent );
QRegion* clipRegion = NULL;
@@ -260,6 +261,7 @@ bool KDESalGraphics::drawNativeControl( ControlType type, ControlPart part,
}
else if (type == CTRL_MENUBAR)
{
+ m_image->fill( KApplication::palette().color(QPalette::Window).rgb());
if (part == PART_MENU_ITEM)
{
QStyleOptionMenuItem option;
@@ -286,6 +288,7 @@ bool KDESalGraphics::drawNativeControl( ControlType type, ControlPart part,
}
else if (type == CTRL_MENU_POPUP)
{
+ m_image->fill( KApplication::palette().color(QPalette::Window).rgb());
OSL_ASSERT( part == PART_MENU_ITEM ? lastPopupRect.isValid() : !lastPopupRect.isValid());
if( part == PART_MENU_ITEM )
{
@@ -408,24 +411,22 @@ bool KDESalGraphics::drawNativeControl( ControlType type, ControlPart part,
}
else if (type == CTRL_LISTBOX)
{
- if( part == PART_WINDOW )
- {
- lcl_drawFrame( QStyle::PE_Frame, m_image,
- vclStateValue2StateFlag(nControlState, value) );
- }
- else
- {
- QStyleOptionComboBox option;
- if (part == PART_SUB_EDIT)
- {
+ QStyleOptionComboBox option;
+ switch (part) {
+ case PART_SUB_EDIT:
draw( QStyle::CE_ComboBoxLabel, &option, m_image,
vclStateValue2StateFlag(nControlState, value) );
- }
- else
- {
+ break;
+ case PART_ENTIRE_CONTROL:
draw( QStyle::CC_ComboBox, &option, m_image,
vclStateValue2StateFlag(nControlState, value) );
- }
+ break;
+ case PART_BUTTON_DOWN:
+ m_image->fill( Qt::transparent );
+ option.subControls = QStyle::SC_ComboBoxArrow;
+ draw( QStyle::CC_ComboBox, &option, m_image,
+ vclStateValue2StateFlag(nControlState, value) );
+ break;
}
}
else if (type == CTRL_LISTNODE)
@@ -745,10 +746,10 @@ bool KDESalGraphics::getNativeControlRegion( ControlType type, ControlPart part,
// FIXME: why this difference between comboboxes and listboxes ?
// because a combobox has a sub edit and that is positioned
// inside the outer bordered control ?
- if( type == CTRL_COMBOBOX ) {
+// if( type == CTRL_COMBOBOX ) {
int size = QApplication::style()->pixelMetric(QStyle::PM_ComboBoxFrameWidth) - 2;
- contentRect.adjust(-size,-size,size,size);
- }
+ contentRect.adjust(0, 0, 2 * size, 2 * size);
+// }
retVal = true;
break;
}
More information about the Libreoffice-commits
mailing list