From 01bd848eb9699a60e0bdd5105b9a9c591c9e1b20 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Sat, 10 Sep 2011 03:26:37 +0000 Subject: [PATCH] Enable the HWND of the task dialog to be fetched with GetHandle if it is being used. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/msw/progdlg.h | 2 ++ src/msw/progdlg.cpp | 17 +++++++++++++++++ 2 files changed, 19 insertions(+) diff --git a/include/wx/msw/progdlg.h b/include/wx/msw/progdlg.h index 8102c9f..4590024 100644 --- a/include/wx/msw/progdlg.h +++ b/include/wx/msw/progdlg.h @@ -47,6 +47,8 @@ public: // Must provide overload to avoid hiding it (and warnings about it) virtual void Update() { wxGenericProgressDialog::Update(); } + virtual WXWidget GetHandle() const; + private: // Performs common routines to Update() and Pulse(). Requires the // shared object to have been entered. diff --git a/src/msw/progdlg.cpp b/src/msw/progdlg.cpp index a39706e..09cba14 100644 --- a/src/msw/progdlg.cpp +++ b/src/msw/progdlg.cpp @@ -518,6 +518,23 @@ void wxProgressDialog::Resume() #endif // wxHAS_MSW_TASKDIALOG } +WXWidget wxProgressDialog::GetHandle() const +{ +#ifdef wxHAS_MSW_TASKDIALOG + if ( HasNativeTaskDialog() ) + { + HWND hwnd; + { + wxCriticalSectionLocker locker(m_sharedData->m_cs); + m_sharedData->m_state = m_state; + hwnd = m_sharedData->m_hwnd; + } + return hwnd; + } +#endif + return wxGenericProgressDialog::GetHandle(); +} + int wxProgressDialog::GetValue() const { #ifdef wxHAS_MSW_TASKDIALOG -- 2.7.4