// Author: Vadim Zeitlin, Vaclav Slavik
// Modified by:
// Created: 06.08.01
-// RCS-ID: $Id$
// Copyright: (c) 2001 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Vaclav Slavik <vaclav@wxwidgets.org>
// Licence: wxWindows licence
#include "wx/nonownedwnd.h"
#include "wx/iconbndl.h"
-#include "wx/containr.h"
#include "wx/weakref.h"
// the default names for various classes
// wxTopLevelWindow: a top level (as opposed to child) window
// ----------------------------------------------------------------------------
-class WXDLLIMPEXP_CORE wxTopLevelWindowBase :
- public wxNavigationEnabled<wxNonOwnedWindow>
+class WXDLLIMPEXP_CORE wxTopLevelWindowBase : public wxNonOwnedWindow
{
public:
// construction
virtual void RequestUserAttention(int flags = wxUSER_ATTENTION_INFO);
// Is this the active frame (highlighted in the taskbar)?
- virtual bool IsActive() { return wxGetTopLevelParent(FindFocus()) == this; }
+ //
+ // A TLW is active only if it contains the currently focused window.
+ virtual bool IsActive() { return IsDescendant(FindFocus()); }
// this function may be overridden to return false to allow closing the
// application even when this top level window is still open
wxWindow *SetTmpDefaultItem(wxWindow *win)
{ wxWindow *old = GetDefaultItem(); m_winTmpDefault = win; return old; }
-
// implementation only from now on
// -------------------------------
virtual void SetRepresentedFilename(const wxString& WXUNUSED(filename)) { }
+#if wxUSE_MENUS || wxUSE_TOOLBAR
+ // show help text for the currently selected menu or toolbar item
+ // (typically in the status bar) or hide it and restore the status bar text
+ // originally shown before the menu was opened if show == false
+ virtual void DoGiveHelp(const wxString& WXUNUSED(text), bool WXUNUSED(show)) {}
+#endif
+
protected:
// the frame client to screen translation should take account of the
// toolbar which may shift the origin of the client area
// include the real class declaration
-#if defined(__WXPALMOS__)
- #include "wx/palmos/toplevel.h"
- #define wxTopLevelWindowNative wxTopLevelWindowPalm
-#elif defined(__WXMSW__)
+#if defined(__WXMSW__)
#include "wx/msw/toplevel.h"
#define wxTopLevelWindowNative wxTopLevelWindowMSW
#elif defined(__WXGTK20__)
#elif defined(__WXX11__)
#include "wx/x11/toplevel.h"
#define wxTopLevelWindowNative wxTopLevelWindowX11
-#elif defined(__WXMGL__)
- #include "wx/mgl/toplevel.h"
- #define wxTopLevelWindowNative wxTopLevelWindowMGL
#elif defined(__WXDFB__)
#include "wx/dfb/toplevel.h"
#define wxTopLevelWindowNative wxTopLevelWindowDFB