]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxGetTopLevelParent()
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 20 Apr 2002 13:51:28 +0000 (13:51 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 20 Apr 2002 13:51:28 +0000 (13:51 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/function.tex
include/wx/window.h
src/common/wincmn.cpp

index f3c4777e4bd9193f766402f1f5a8eb52d14307d3..33ee4e679e266a408f201769144d6c3b6e7df278 100644 (file)
@@ -120,6 +120,7 @@ the corresponding topic.
 \helpref{wxGetSingleChoice}{wxgetsinglechoice}\\
 \helpref{wxGetTempFileName}{wxgettempfilename}\\
 \helpref{wxGetTextFromUser}{wxgettextfromuser}\\
+\helpref{wxGetTopLevelParent}{wxgettoplevelparent}\\
 \helpref{wxGetTranslation}{wxgettranslation}\\
 \helpref{wxGetUTCTime}{wxgetutctime}\\
 \helpref{wxGetUserHome}{wxgetuserhome}\\
@@ -2233,6 +2234,17 @@ See also \helpref{wxWriteResource}{wxwriteresource}, \helpref{wxConfigBase}{wxco
 
 <wx/utils.h>
 
+\membersection{::wxGetTopLevelParent}\label{wxgettoplevelparent}
+
+\func{wxWindow *}{wxGetTopLevelParent}{\param{wxWindow }{*win}}
+
+Returns the first top level parent of the given window, or in other words, the
+frame or dialog containing it, or {\tt NULL}.
+
+\wxheading{Include files}
+
+<wx/window.h>
+
 \membersection{::wxLoadUserResource}\label{wxloaduserresource}
 
 \func{wxString}{wxLoadUserResource}{\param{const wxString\& }{resourceName}, \param{const wxString\& }{resourceType=``TEXT"}}
index 25cb7ad47bbb36393244f8768c9a4bbd5081c66f..86a38edd76de32e6bf565e9f4372f4d2d48a39d1 100644 (file)
@@ -1114,10 +1114,12 @@ WXDLLEXPORT extern wxPoint wxGetMousePosition();
 // get the currently active window of this application or NULL
 WXDLLEXPORT extern wxWindow *wxGetActiveWindow();
 
+// get the (first) top level parent window
+WXDLLEXPORT wxWindow* wxGetTopLevelParent(wxWindow *win);
+
 // deprecated (doesn't start with 'wx' prefix), use wxWindow::NewControlId()
 inline int NewControlId() { return wxWindowBase::NewControlId(); }
 
 #endif
     // _WX_WINDOW_H_BASE_
 
-// vi:sts=4:sw=4:et
index ec067000819a6078158c599c652ef83134776d33..5922d27f4ab92cfdad82ecd993250823a98fc6ac 100644 (file)
@@ -1795,4 +1795,15 @@ void wxWindowBase::ReleaseMouse()
                GetCapture());
 }
 
-// vi:sts=4:sw=4:et
+// ----------------------------------------------------------------------------
+// global functions
+// ----------------------------------------------------------------------------
+
+wxWindow* wxGetTopLevelParent(wxWindow *win)
+{
+    while ( win && !win->IsTopLevel() )
+         win = win->GetParent();
+
+    return win;
+}
+