preparation work for implementing images support in wxButton: move wxBitmapButton methods to the base class (enhancing/completing them in the process); there are no functionality changes yet (hopefully)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2009-06-14 22:55:24 +00:00
parent 0455894395
commit 2352862a7e
19 changed files with 500 additions and 382 deletions

View File

@@ -128,7 +128,7 @@ bool wxButton::Create(wxWindow *parent,
SetLabel(label);
if (bitmap.Ok())
SetImageLabel(bitmap); // SetInitialSize called by SetImageLabel()
SetBitmap(bitmap); // SetInitialSize called by SetBitmap()
else
SetInitialSize(size);
@@ -315,14 +315,17 @@ wxInputHandler *wxButton::GetStdInputHandler(wxInputHandler *handlerDef)
// misc
// ----------------------------------------------------------------------------
void wxButton::SetImageLabel(const wxBitmap& bitmap)
void wxButton::DoSetBitmap(const wxBitmap& bitmap, State which)
{
m_bitmap = bitmap;
// we support only one bitmap right now, although this wouldn't be
// difficult to change
if ( which == State_Normal )
m_bitmap = bitmap;
SetImageMargins(DEFAULT_BTN_MARGIN_X, DEFAULT_BTN_MARGIN_Y);
SetBitmapMargins(DEFAULT_BTN_MARGIN_X, DEFAULT_BTN_MARGIN_Y);
}
void wxButton::SetImageMargins(wxCoord x, wxCoord y)
void wxButton::DoSetBitmapMargins(wxCoord x, wxCoord y)
{
m_marginBmpX = x + 2;
m_marginBmpY = y + 2;