X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4f9297b0eead20a0bfee71df18e0d8f0cbc402fb..304862976530be1315f3861157168f6edea2195e:/src/html/helpctrl.cpp?ds=sidebyside diff --git a/src/html/helpctrl.cpp b/src/html/helpctrl.cpp index 26911db463..dbbf32c474 100644 --- a/src/html/helpctrl.cpp +++ b/src/html/helpctrl.cpp @@ -20,14 +20,20 @@ #pragma hdrstop #endif -#include "wx/defs.h" +#if wxUSE_WXHTML_HELP -#if wxUSE_HTML && wxUSE_STREAMS +#ifndef WX_PRECOMP + #include "wx/app.h" + #include "wx/intl.h" +#endif // WX_PRECOMP #include "wx/html/helpctrl.h" -#include "wx/wx.h" #include "wx/busyinfo.h" +#if wxUSE_HELP +#include "wx/tipwin.h" +#endif + IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpController, wxHelpControllerBase) wxHtmlHelpController::wxHtmlHelpController(int style) @@ -79,7 +85,7 @@ bool wxHtmlHelpController::AddBook(const wxString& book, bool show_wait_msg) #if wxUSE_BUSYINFO wxBusyInfo* busy = NULL; wxString info; - if (show_wait_msg) + if (show_wait_msg) { info.Printf(_("Adding book %s"), book.c_str()); busy = new wxBusyInfo(info); @@ -89,7 +95,9 @@ bool wxHtmlHelpController::AddBook(const wxString& book, bool show_wait_msg) #if wxUSE_BUSYINFO if (show_wait_msg) delete busy; -#endif +#endif + if (m_helpFrame) + m_helpFrame->RefreshLists(); return retval; } @@ -109,7 +117,7 @@ void wxHtmlHelpController::CreateHelpWindow() return ; } - if (m_Config == NULL) + if (m_Config == NULL) { m_Config = wxConfigBase::Get(FALSE); if (m_Config != NULL) @@ -187,6 +195,31 @@ bool wxHtmlHelpController::DisplaySection(int sectionNo) return Display(sectionNo); } +bool wxHtmlHelpController::DisplayTextPopup(const wxString& text, const wxPoint& WXUNUSED(pos)) +{ +#if wxUSE_TIPWINDOW + static wxTipWindow* s_tipWindow = NULL; + + if (s_tipWindow) + { + // Prevent s_tipWindow being nulled in OnIdle, + // thereby removing the chance for the window to be closed by ShowHelp + s_tipWindow->SetTipWindowPtr(NULL); + s_tipWindow->Close(); + } + s_tipWindow = NULL; + + if ( !text.empty() ) + { + s_tipWindow = new wxTipWindow(wxTheApp->GetTopWindow(), text, 100, & s_tipWindow); + + return TRUE; + } +#endif // wxUSE_TIPWINDOW + + return FALSE; +} + void wxHtmlHelpController::SetFrameParameters(const wxString& title, const wxSize& size, const wxPoint& pos, @@ -218,5 +251,5 @@ bool wxHtmlHelpController::Quit() return TRUE; } +#endif // wxUSE_WXHTML_HELP -#endif