#include "wx/nonownedwnd.h"
#include "wx/iconbndl.h"
#include "wx/containr.h"
+#include "wx/weakref.h"
// the default names for various classes
-extern WXDLLEXPORT_DATA(const wxChar) wxFrameNameStr[];
+extern WXDLLIMPEXP_DATA_CORE(const char) wxFrameNameStr[];
-class WXDLLEXPORT wxTopLevelWindowBase;
+class WXDLLIMPEXP_FWD_CORE wxTopLevelWindowBase;
// ----------------------------------------------------------------------------
// constants
// wxTopLevelWindow: a top level (as opposed to child) window
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxTopLevelWindowBase : public wxNonOwnedWindow
+class WXDLLIMPEXP_CORE wxTopLevelWindowBase : public wxNonOwnedWindow
{
public:
// construction
static int WidthDefault(int w) { return w == wxDefaultCoord ? GetDefaultSize().x : w; }
static int HeightDefault(int h) { return h == wxDefaultCoord ? GetDefaultSize().y : h; }
- // reset m_winDefault and m_winTmpDefault if they point to the window being
- // destroyed
- void OnChildDestroy(wxWindowDestroyEvent& event);
-
// the frame icon
wxIconBundle m_icons;
// a default window (usually a button) or NULL
- wxWindow *m_winDefault;
+ wxWindowRef m_winDefault;
// a temporary override of m_winDefault, use the latter if NULL
- wxWindow *m_winTmpDefault;
+ wxWindowRef m_winTmpDefault;
- DECLARE_NO_COPY_CLASS(wxTopLevelWindowBase)
+ wxDECLARE_NO_COPY_CLASS(wxTopLevelWindowBase);
DECLARE_EVENT_TABLE()
WX_DECLARE_CONTROL_CONTAINER();
};
#include "wx/dfb/toplevel.h"
#define wxTopLevelWindowNative wxTopLevelWindowDFB
#elif defined(__WXMAC__)
- #include "wx/mac/toplevel.h"
+ #include "wx/osx/toplevel.h"
#define wxTopLevelWindowNative wxTopLevelWindowMac
#elif defined(__WXCOCOA__)
#include "wx/cocoa/toplevel.h"
#include "wx/univ/toplevel.h"
#else // !__WXUNIVERSAL__
#ifdef wxTopLevelWindowNative
- class WXDLLEXPORT wxTopLevelWindow : public wxTopLevelWindowNative
+ class WXDLLIMPEXP_CORE wxTopLevelWindow : public wxTopLevelWindowNative
{
public:
// construction