From 32ca12e65e2b841ef6024e96e43fef115dd4050d Mon Sep 17 00:00:00 2001 From: Julian Smart Date: Mon, 17 Apr 2000 09:56:16 +0000 Subject: [PATCH] Fixed bug in helpctrl.cpp (testing for m_Config); made old-style HTML help optional so will compile on MSW git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- samples/help/demo.cpp | 16 +++++++++++++++- samples/help/makefile.vc | 2 +- src/html/helpctrl.cpp | 14 ++++---------- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/samples/help/demo.cpp b/samples/help/demo.cpp index ff02c60120..7d25085792 100644 --- a/samples/help/demo.cpp +++ b/samples/help/demo.cpp @@ -39,6 +39,9 @@ #define USE_HTML_HELP 1 +// Use old-style HTML help if 1 +#define USE_OLD_HTML_HELP 0 + #if !wxUSE_HTML #undef USE_HTML_HELP #define USE_HTML_HELP 0 @@ -49,7 +52,10 @@ #include #include +#if USE_OLD_HTML_HELP #include "wx/generic/helpwxht.h" +#endif + #include "wx/html/helpctrl.h" #endif @@ -88,7 +94,9 @@ public: wxHelpController& GetHelpController() { return m_help; } #if USE_HTML_HELP +#if USE_OLD_HTML_HELP wxHelpControllerHtml& GetHtmlHelpController() { return m_htmlHelp; } +#endif wxHtmlHelpController& GetAdvancedHtmlHelpController() { return m_advancedHtmlHelp; } #endif @@ -104,7 +112,9 @@ private: wxHelpController m_help; #if USE_HTML_HELP +#if USE_OLD_HTML_HELP wxHelpControllerHtml m_htmlHelp; +#endif wxHtmlHelpController m_advancedHtmlHelp; #endif @@ -227,6 +237,7 @@ bool MyApp::OnInit() } #if USE_HTML_HELP +#if USE_OLD_HTML_HELP // initialise the standard HTML help system: this means that the HTML docs are in the // subdirectory doc for platforms using HTML help if ( !frame->GetHtmlHelpController().Initialize("doc") ) @@ -235,6 +246,7 @@ bool MyApp::OnInit() return FALSE; } +#endif // initialise the advanced HTML help system: this means that the HTML docs are in .htb // (zipped) form @@ -269,12 +281,14 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size) menuFile->Append(HelpDemo_Help_Help, "&About Help Demo..."); menuFile->Append(HelpDemo_Help_Search, "&Search help..."); #if USE_HTML_HELP +#if USE_OLD_HTML_HELP menuFile->AppendSeparator(); menuFile->Append(HelpDemo_Html_Help_Index, "HTML &Help Index..."); menuFile->Append(HelpDemo_Html_Help_Classes, "HTML &Help on Classes..."); menuFile->Append(HelpDemo_Html_Help_Functions, "HTML &Help on Functions..."); menuFile->Append(HelpDemo_Html_Help_Help, "HTML &About Help Demo..."); menuFile->Append(HelpDemo_Html_Help_Search, "HTML &Search help..."); +#endif menuFile->AppendSeparator(); menuFile->Append(HelpDemo_Advanced_Html_Help_Index, "Advanced HTML &Help Index..."); menuFile->Append(HelpDemo_Advanced_Html_Help_Classes, "Advanced HTML &Help on Classes..."); @@ -331,7 +345,7 @@ void MyFrame::OnHelp(wxCommandEvent& event) void MyFrame::OnHtmlHelp(wxCommandEvent& event) { -#if USE_HTML_HELP +#if USE_HTML_HELP && USE_OLD_HTML_HELP ShowHelp(event.GetId(), m_htmlHelp); #endif } diff --git a/samples/help/makefile.vc b/samples/help/makefile.vc index 723b606f7e..2edefc60cc 100644 --- a/samples/help/makefile.vc +++ b/samples/help/makefile.vc @@ -12,7 +12,7 @@ WXDIR = $(WXWIN) PROGRAM=demo -EXTRALIBS=htmlhelp.lib +#EXTRALIBS=htmlhelp.lib OBJECTS = $(PROGRAM).obj !include $(WXDIR)\src\makeprog.vc diff --git a/src/html/helpctrl.cpp b/src/html/helpctrl.cpp index a83b80fb91..c8287af50e 100644 --- a/src/html/helpctrl.cpp +++ b/src/html/helpctrl.cpp @@ -30,12 +30,6 @@ IMPLEMENT_DYNAMIC_CLASS(wxHtmlHelpController, wxHelpControllerBase) -#if 0 -BEGIN_EVENT_TABLE(wxHtmlHelpController, wxEvtHandler) -EVT_CLOSE(wxHtmlHelpController::OnCloseFrame) -END_EVENT_TABLE() -#endif - wxHtmlHelpController::wxHtmlHelpController(int style) { m_helpFrame = NULL; @@ -47,7 +41,8 @@ wxHtmlHelpController::wxHtmlHelpController(int style) wxHtmlHelpController::~wxHtmlHelpController() { - WriteCustomization(m_Config, m_ConfigRoot); + if (m_Config) + WriteCustomization(m_Config, m_ConfigRoot); if (m_helpFrame) DestroyHelpWindow(); } @@ -121,7 +116,6 @@ void wxHtmlHelpController::CreateHelpWindow() m_helpFrame = CreateHelpFrame(&m_helpData); m_helpFrame->SetController(this); -// m_helpFrame->PushEventHandler(this); if (m_Config) m_helpFrame->UseConfig(m_Config, m_ConfigRoot); @@ -135,14 +129,14 @@ void wxHtmlHelpController::ReadCustomization(wxConfigBase* cfg, const wxString& { /* should not be called by the user; call UseConfig, and the controller * will do the rest */ - if (m_helpFrame) + if (m_helpFrame && cfg) m_helpFrame->ReadCustomization(cfg, path); } void wxHtmlHelpController::WriteCustomization(wxConfigBase* cfg, const wxString& path) { /* typically called by the controllers OnCloseFrame handler */ - if (m_helpFrame) + if (m_helpFrame && cfg) m_helpFrame->WriteCustomization(cfg, path); }