Don't crash in wxControl::GetLabel when getting the label
fails (perhaps because the widget is not realized?). Correct wxRTTI information for wxFrame: it derives from wxTopLevelWindow, not wxWindow. Don't try setting Widget size to 0, because it will fail: set it to 1 instead which is exactly as sensible, but does not crash. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -99,7 +99,7 @@ wxString wxControl::GetLabel() const
|
|||||||
if (!widget)
|
if (!widget)
|
||||||
return wxEmptyString;
|
return wxEmptyString;
|
||||||
|
|
||||||
XmString text;
|
XmString text = NULL;
|
||||||
XtVaGetValues (widget,
|
XtVaGetValues (widget,
|
||||||
XmNlabelString, &text,
|
XmNlabelString, &text,
|
||||||
NULL);
|
NULL);
|
||||||
|
@@ -97,7 +97,7 @@ BEGIN_EVENT_TABLE(wxFrame, wxFrameBase)
|
|||||||
EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
|
EVT_SYS_COLOUR_CHANGED(wxFrame::OnSysColourChanged)
|
||||||
END_EVENT_TABLE()
|
END_EVENT_TABLE()
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxWindow)
|
IMPLEMENT_DYNAMIC_CLASS(wxFrame, wxTopLevelWindow)
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// implementation
|
// implementation
|
||||||
|
@@ -1411,6 +1411,7 @@ void wxWindow::DoMoveWindowIntr(int xx, int yy, int w, int h,
|
|||||||
w -= 2 * (thick + margin);
|
w -= 2 * (thick + margin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if( w < 1 ) w = 1;
|
||||||
XtVaSetValues ((Widget) m_scrolledWindow, XmNwidth, w, NULL);
|
XtVaSetValues ((Widget) m_scrolledWindow, XmNwidth, w, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1427,6 +1428,7 @@ void wxWindow::DoMoveWindowIntr(int xx, int yy, int w, int h,
|
|||||||
h -= 2 * (thick + margin);
|
h -= 2 * (thick + margin);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if( h < 1 ) h = 1;
|
||||||
XtVaSetValues ((Widget) m_scrolledWindow, XmNheight, h, NULL);
|
XtVaSetValues ((Widget) m_scrolledWindow, XmNheight, h, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user