added wxWindow::IsVisible() method

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@41130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík
2006-09-10 15:38:54 +00:00
parent 2df5e0bff0
commit 9c72cf7619
4 changed files with 27 additions and 0 deletions

View File

@@ -1546,6 +1546,10 @@ Retained windows are only available on X platforms.
Returns {\tt true} if the window is shown, {\tt false} if it has been hidden. Returns {\tt true} if the window is shown, {\tt false} if it has been hidden.
\wxheading{See also}
\helpref{wxWindow::IsVisible}{wxwindowisvisible}
\membersection{wxWindow::IsTopLevel}\label{wxwindowistoplevel} \membersection{wxWindow::IsTopLevel}\label{wxwindowistoplevel}
@@ -1556,6 +1560,18 @@ dialogs are considered to be top-level windows (even if they have a parent
window). window).
\membersection{wxWindow::IsVisible}\label{wxwindowisvisible}
\constfunc{virtual bool}{IsVisible}{\void}
Returns {\tt true} if the window is physically visible on the screen, i.e. it
is shown and all its parents up to the toplevel window are shown as well.
\wxheading{See also}
\helpref{wxWindow::IsShown}{wxwindowisshown}
\membersection{wxWindow::Layout}\label{wxwindowlayout} \membersection{wxWindow::Layout}\label{wxwindowlayout}
\func{void}{Layout}{\void} \func{void}{Layout}{\void}

View File

@@ -229,6 +229,7 @@ public:
// override some base class virtuals // override some base class virtuals
virtual bool Destroy(); virtual bool Destroy();
virtual bool IsTopLevel() const { return true; } virtual bool IsTopLevel() const { return true; }
virtual bool IsVisible() const { return IsShown(); }
virtual wxSize GetMaxSize() const; virtual wxSize GetMaxSize() const;
// event handlers // event handlers

View File

@@ -479,6 +479,10 @@ public:
virtual bool IsShown() const { return m_isShown; } virtual bool IsShown() const { return m_isShown; }
virtual bool IsEnabled() const { return m_isEnabled; } virtual bool IsEnabled() const { return m_isEnabled; }
// returns true if the window is visible, i.e. IsShown() returns true
// if called on it and all its parents up to the first TLW
virtual bool IsVisible() const;
// get/set window style (setting style won't update the window and so // get/set window style (setting style won't update the window and so
// is only useful for internal usage) // is only useful for internal usage)
virtual void SetWindowStyleFlag( long style ) { m_windowStyle = style; } virtual void SetWindowStyleFlag( long style ) { m_windowStyle = style; }

View File

@@ -744,6 +744,12 @@ bool wxWindowBase::Enable(bool enable)
return false; return false;
} }
} }
bool wxWindowBase::IsVisible() const
{
return IsShown() && (GetParent() == NULL || GetParent()->IsVisible());
}
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// RTTI // RTTI
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------