X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/664d1729475f53f353e8ba02aef052129d701aca..6eef5763a81cf58ba9ca4f6adcaa996d263258a0:/src/html/helpfrm.cpp diff --git a/src/html/helpfrm.cpp b/src/html/helpfrm.cpp index ea22fa9b6e..12d914ba2a 100644 --- a/src/html/helpfrm.cpp +++ b/src/html/helpfrm.cpp @@ -55,7 +55,6 @@ #include "wx/fontenum.h" #include "wx/artprov.h" #include "wx/spinctrl.h" -#include "wx/app.h" IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpFrame, wxFrame) @@ -70,11 +69,18 @@ BEGIN_EVENT_TABLE(wxHtmlHelpFrame, wxFrame) END_EVENT_TABLE() wxHtmlHelpFrame::wxHtmlHelpFrame(wxWindow* parent, wxWindowID id, const wxString& title, - int style, wxHtmlHelpData* data, - wxConfigBase *config, const wxString& rootpath) + int style, wxHtmlHelpData* data +#if wxUSE_CONFIG + , wxConfigBase *config, const wxString& rootpath +#endif // wxUSE_CONFIG + ) { Init(data); - Create(parent, id, title, style, config, rootpath); + Create(parent, id, title, style +#if wxUSE_CONFIG + , config, rootpath +#endif // wxUSE_CONFIG + ); } void wxHtmlHelpFrame::Init(wxHtmlHelpData* data) @@ -82,7 +88,8 @@ void wxHtmlHelpFrame::Init(wxHtmlHelpData* data) // Simply pass the pointer on to the help window m_Data = data; m_HtmlHelpWin = NULL; - m_helpController = (wxHtmlHelpController*) NULL; + m_helpController = NULL; + m_shouldPreventAppExit = false; } void wxHtmlHelpFrame::SetController(wxHtmlHelpController* controller) @@ -94,14 +101,19 @@ void wxHtmlHelpFrame::SetController(wxHtmlHelpController* controller) // Create: builds the GUI components. bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id, - const wxString& WXUNUSED(title), int style, - wxConfigBase *config, const wxString& rootpath) + const wxString& WXUNUSED(title), int style +#if wxUSE_CONFIG + , wxConfigBase *config, const wxString& rootpath +#endif // wxUSE_CONFIG + ) { m_HtmlHelpWin = new wxHtmlHelpWindow(m_Data); m_HtmlHelpWin->SetController(m_helpController); - if ( config) +#if wxUSE_CONFIG + if ( config ) m_HtmlHelpWin->UseConfig(config, rootpath); - +#endif // wxUSE_CONFIG + wxFrame::Create(parent, id, _("Help"), wxPoint(m_HtmlHelpWin->GetCfgData().x, m_HtmlHelpWin->GetCfgData().y), wxSize(m_HtmlHelpWin->GetCfgData().w, m_HtmlHelpWin->GetCfgData().h), @@ -114,7 +126,7 @@ bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id, GetPosition(& (m_HtmlHelpWin->GetCfgData().x), & (m_HtmlHelpWin->GetCfgData()).y); - SetIcon(wxArtProvider::GetIcon(wxART_HELP, wxART_HELP_BROWSER)); + SetIcons(wxArtProvider::GetIconBundle(wxART_HELP, wxART_FRAME_ICON)); // On the Mac, each modeless frame must have a menubar. // TODO: add more menu items, and perhaps add a style to show @@ -128,9 +140,9 @@ bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id, fileMenu->Append(wxID_CLOSE, _("&Close")); wxMenu* helpMenu = new wxMenu; - helpMenu->Append(wxID_ABOUT, _("&About...")); + helpMenu->Append(wxID_ABOUT, _("&About")); // Ensures we don't get an empty help menu - helpMenu->Append(wxID_HELP_CONTENTS, _("&About...")); + helpMenu->Append(wxID_HELP_CONTENTS, _("&About")); menuBar->Append(fileMenu,_("&File")); menuBar->Append(helpMenu,_("&Help")); @@ -192,7 +204,7 @@ void wxHtmlHelpFrame::OnCloseWindow(wxCloseEvent& evt) if (m_HtmlHelpWin->GetSplitterWindow() && m_HtmlHelpWin->GetCfgData().navig_on) m_HtmlHelpWin->GetCfgData().sashpos = m_HtmlHelpWin->GetSplitterWindow()->GetSashPosition(); - if (m_helpController && m_helpController->IsKindOf(CLASSINFO(wxHtmlHelpController))) + if (m_helpController && wxDynamicCast(m_helpController, wxHtmlHelpController)) { ((wxHtmlHelpController*) m_helpController)->OnCloseFrame(evt); } @@ -226,12 +238,19 @@ void wxHtmlHelpFrame::AddGrabIfNeeded() #endif // __WXGTK__ } +#if wxUSE_CONFIG // For compatibility void wxHtmlHelpFrame::UseConfig(wxConfigBase *config, const wxString& rootPath) { if (m_HtmlHelpWin) m_HtmlHelpWin->UseConfig(config, rootPath); } +#endif // wxUSE_CONFIG + +void wxHtmlHelpFrame::SetShouldPreventAppExit(bool enable) +{ + m_shouldPreventAppExit = enable; +} #ifdef __WXMAC__ void wxHtmlHelpFrame::OnClose(wxCommandEvent& WXUNUSED(event)) @@ -246,11 +265,4 @@ void wxHtmlHelpFrame::OnAbout(wxCommandEvent& WXUNUSED(event)) } #endif -// we don't want to prevent the app from closing just because a help window -// remains opened -bool wxHtmlHelpFrame::ShouldPreventAppExit() const -{ - return (wx_const_cast(wxHtmlHelpFrame*, this) == wxTheApp->GetTopWindow()); -} - #endif // wxUSE_WXHTML_HELP