X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/31528cd3cac75558beef4bce0ba21fd182a808ab..f3ba93c1f025870aeda36082acecc87ab277ab7d:/src/motif/control.cpp?ds=inline diff --git a/src/motif/control.cpp b/src/motif/control.cpp index 06019980d6..1dc7e344c5 100644 --- a/src/motif/control.cpp +++ b/src/motif/control.cpp @@ -13,18 +13,26 @@ #pragma implementation "control.h" #endif +#include "wx/defs.h" + #include "wx/control.h" #include "wx/panel.h" #include "wx/utils.h" +#ifdef __VMS__ +#pragma message disable nosimpint +#endif #include +#ifdef __VMS__ +#pragma message enable nosimpint +#endif + +#include "wx/motif/private.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_ABSTRACT_CLASS(wxControl, wxWindow) BEGIN_EVENT_TABLE(wxControl, wxWindow) END_EVENT_TABLE() -#endif // Item members wxControl::wxControl() @@ -39,16 +47,21 @@ wxControl::wxControl() m_inSetValue = FALSE; } -wxControl::~wxControl() +bool wxControl::Create( wxWindow *parent, + wxWindowID id, + const wxPoint &pos, + const wxSize &size, + long style, + const wxValidator& validator, + const wxString &name) { - // If we delete an item, we should initialize the parent panel, - // because it could now be invalid. - wxPanel *panel = wxDynamicCast(GetParent(), wxPanel); - if (panel) - { - if (panel->GetDefaultItem() == this) - panel->SetDefaultItem((wxButton*) NULL); - } + bool ret = wxWindow::Create(parent, id, pos, size, style, name); + +#if wxUSE_VALIDATORS + SetValidator(validator); +#endif + + return ret; } void wxControl::SetLabel(const wxString& label) @@ -57,14 +70,13 @@ void wxControl::SetLabel(const wxString& label) if (!widget) return; - wxStripMenuCodes((char*) (const char*) label, wxBuffer); + wxString buf(wxStripMenuCodes(label)); + wxXmString label_str(buf); - XmString text = XmStringCreateSimple (wxBuffer); XtVaSetValues (widget, - XmNlabelString, text, + XmNlabelString, label_str(), XmNlabelType, XmSTRING, NULL); - XmStringFree (text); } wxString wxControl::GetLabel() const