// ----------------------------------------------------------------------------
// draw focus background on area in a way typical on platform
-void wxComboCtrlBase::DrawFocusBackground( wxDC& dc, const wxRect& rect, int flags )
+void wxComboCtrlBase::DrawFocusBackground( wxDC& dc, const wxRect& rect, int flags ) const
{
wxSize sz = GetClientSize();
bool isEnabled;
wxRect selRect(rect);
selRect.y += focusSpacingY;
selRect.height -= (focusSpacingY*2);
- selRect.x += m_widthCustomPaint + focusSpacingX;
- selRect.width -= m_widthCustomPaint + (focusSpacingX*2);
+
+ int wcp = 0;
+
+ if ( !(flags & wxCONTROL_ISSUBMENU) )
+ wcp += m_widthCustomPaint;
+
+ selRect.x += wcp + focusSpacingX;
+ selRect.width -= wcp + (focusSpacingX*2);
wxColour bgCol;
m_popup = (wxWindow*) NULL;
}
-void wxComboCtrlBase::SetPopupControl( wxComboPopup* iface )
+void wxComboCtrlBase::DoSetPopupControl(wxComboPopup* iface)
{
wxCHECK_RET( iface, wxT("no popup interface set for wxComboCtrl") );