// Author: Andreas Pflug
// Modified by:
// Created: 2005-01-19
-// RCS-ID: $Id$
// Copyright: (c) 2005 Andreas Pflug <pgadmin@pse-consulting.de>
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
if ( !s.empty() )
{
- pDt->ParseFormat(s.c_str(), m_format);
+ pDt->ParseFormat(s, m_format);
if ( !pDt->IsValid() )
return false;
}
wxSize wxDatePickerCtrlGeneric::DoGetBestSize() const
{
- return m_combo->GetBestSize();
+ // A better solution would be to use a custom text control that would have
+ // the best size determined by the current date format and let m_combo take
+ // care of the best size computation, but this isn't easily possible with
+ // wxComboCtrl currently, so we compute our own best size here instead even
+ // if this means adding some extra margins to account for text control
+ // borders, space between it and the button and so on.
+ wxSize size = m_combo->GetButtonSize();
+
+ wxTextCtrl* const text = m_combo->GetTextCtrl();
+ size.x += text->GetTextExtent(text->GetValue()).x;
+ size.x += 2*text->GetCharWidth(); // This is the margin mentioned above.
+
+ return size;
}
wxWindowList wxDatePickerCtrlGeneric::GetCompositeWindowParts() const