// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
-#ifdef __VMS
-#define XtDisplay XTDISPLAY
-#endif
-
#include "wx/button.h"
#ifdef __VMS__
void wxButtonCallback (Widget w, XtPointer clientData, XtPointer ptr);
-IMPLEMENT_DYNAMIC_CLASS(wxButton, wxControl)
-
#define MIN_WIDTH 78
#define MIN_LARGE_HEIGHT 30
if( !CreateControl( parent, id, pos, size, style, validator, name ) )
return false;
+ PreCreation();
wxXmString text( GetLabelText(label) );
if( size.x != -1 ) best.x = size.x;
if( size.y != -1 ) best.y = size.y;
+ PostCreation();
AttachWidget (parent, m_mainWidget, (WXWidget) NULL,
pos.x, pos.y, best.x, best.y);
- ChangeBackgroundColour();
-
return true;
}
}
-void wxButton::SetDefault()
+wxWindow *wxButton::SetDefault()
{
- wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow);
- if ( tlw )
- tlw->SetDefaultItem(this);
+ wxWindow *oldDefault = wxButtonBase::SetDefault();
// We initially do not set XmNdefaultShadowThickness, to have
// small buttons. Unfortunately, buttons are now mis-aligned. We
XtVaSetValues ((Widget) parent->GetMainWidget(),
XmNdefaultButton, (Widget) GetMainWidget(),
NULL);
+
+ return oldDefault;
}
static inline bool wxMotifLargeButtons()