// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "button.h"
#endif
#include "wx/defs.h"
#include "wx/button.h"
-#include "wx/utils.h"
-#include "wx/panel.h"
#ifdef __VMS__
#pragma message disable nosimpint
Widget parentWidget = (Widget) parent->GetClientWidget();
- XmFontList fontList =
- (XmFontList)m_font.GetFontList(1.0, XtDisplay(parentWidget));
-
/*
* Patch Note (important)
* There is no major reason to put a defaultButtonThickness here.
m_mainWidget = (WXWidget) XtVaCreateManagedWidget ("button",
xmPushButtonWidgetClass,
parentWidget,
- XmNfontList, fontList,
+ wxFont::GetFontTag(), m_font.GetFontType(XtDisplay(parentWidget)),
XmNlabelString, text(),
+ XmNrecomputeSize, False,
// See comment for wxButton::SetDefault
// XmNdefaultButtonShadowThickness, 1,
NULL);
XmNactivateCallback, (XtCallbackProc) wxButtonCallback,
(XtPointer) this);
- SetCanAddEventHandler(TRUE);
-
wxSize best = GetBestSize();
if( size.x != -1 ) best.x = size.x;
if( size.y != -1 ) best.y = size.y;
if( managed )
XtManageChild( buttonWidget );
+ // this can't currently be done, because user code that calls SetDefault
+ // will break otherwise
+#if 0
wxSize best = GetBestSize(), actual = GetSize();
if( best.x < actual.x ) best.x = actual.x;
if( best.y < actual.y ) best.y = actual.y;
if( best != actual )
SetSize( best );
+#endif
}
// wxButton in the same row, correction is straighforward: we set
// resource for all wxButton in this parent (but not sub panels)
- for (wxWindowList::Node * node = parent->GetChildren().GetFirst ();
+ for (wxWindowList::compatibility_iterator node = parent->GetChildren().GetFirst ();
node; node = node->GetNext ())
{
wxWindow *win = node->GetData ();
wxSize wxButton::GetDefaultSize()
{
// TODO: check font size as in wxMSW ? MB
- // Note: this is only the button size (text + margin + shadow)
- return wxSize(70,25);
+ // Note: this is the button size (text + margin + shadow + defaultBorder)
+ return wxSize(78,30);
}
wxSize wxButton::DoGetBestSize() const