Properly polish QPopupMenu widgets

This relates to Bug 1489
pull/2/head
Timothy Pearson 11 years ago
parent b5f543cd3a
commit b11ba445cc

@ -783,7 +783,7 @@ void QStyle::polish( QPalette&)
*/ */
void QStyle::polishPopupMenu( QPopupMenu *pm ) { void QStyle::polishPopupMenu( QPopupMenu *pm ) {
const QStyleControlElementData &ceData = populateControlElementDataFromWidget(pm, QStyleOption()); const QStyleControlElementData &ceData = populateControlElementDataFromWidget(pm, QStyleOption());
unPolish(ceData, getControlElementFlagsForObject(pm, QStyleOption()), pm); polish(ceData, getControlElementFlagsForObject(pm, QStyleOption()), pm);
} }
/*! /*!

@ -1222,7 +1222,7 @@ QSize QPopupMenu::updateSize(bool force_update, bool do_resize)
continue; continue;
int itemh = itemHeight( mi ); int itemh = itemHeight( mi );
sz = style().sizeFromContents(QStyle::CT_PopupMenuItem, this, sz = style().sizeFromContents(QStyle::CT_PopupMenuItem, this,
QSize(0, itemh), QStyleOption(mi,maxPMWidth)); QSize(0, itemh), QStyleOption(mi,maxPMWidth));
sz = sz.expandedTo(QSize(itemw, sz.height())); sz = sz.expandedTo(QSize(itemw, sz.height()));
@ -1233,7 +1233,7 @@ QSize QPopupMenu::updateSize(bool force_update, bool do_resize)
y = contentsRect().y(); y = contentsRect().y();
x +=itemw; x +=itemw;
} }
if ( mi->widget() ) if ( mi->widget() )
mi->widget()->setGeometry( x, y, itemw, mi->widget()->height() ); mi->widget()->setGeometry( x, y, itemw, mi->widget()->height() );
y += itemh; y += itemh;
} }

Loading…
Cancel
Save