Added wxHelpControllerHelpProvider, added DisplayContextPopup, DisplayTextPopup

to wxHelpControllerBase and wxCHMHelpController; updated sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2000-09-12 14:53:39 +00:00
parent 135ce19c67
commit 5100cabffa
15 changed files with 211 additions and 75 deletions

View File

@@ -17,6 +17,7 @@
#endif
#include "wx/defs.h"
#include "wx/help.h"
#if wxUSE_HELP
@@ -83,7 +84,7 @@ private:
// classes used to implement context help support
// ----------------------------------------------------------------------------
// wxHelpProvider is an ABC used by the program implementing context help to
// wxHelpProvider is an abstract class used by the program implementing context help to
// show the help text (or whatever: it may be HTML page or anything else) for
// the given window.
//
@@ -151,5 +152,30 @@ protected:
m_hashIds;
};
// wxHelpControllerHelpProvider is an implementation of wxHelpProvider which supports
// both context identifiers and plain text help strings. If the help text is an integer,
// it is passed to wxHelpController::DisplayContextPopup. Otherwise, it shows the string
// in a tooltip as per wxSimpleHelpProvider.
class WXDLLEXPORT wxHelpControllerHelpProvider : public wxSimpleHelpProvider
{
public:
// Note that it doesn't own the help controller. The help controller
// should be deleted separately.
wxHelpControllerHelpProvider(wxHelpControllerBase* hc = (wxHelpControllerBase*) NULL);
// implement wxHelpProvider methods
virtual bool ShowHelp(wxWindowBase *window);
// Other accessors
void SetHelpController(wxHelpControllerBase* hc) { m_helpController = hc; }
wxHelpControllerBase* GetHelpController() const { return m_helpController; }
protected:
wxHelpControllerBase* m_helpController;
};
// Convenience function for turning context id into wxString
wxString wxContextId(int id);
#endif // _WX_CSHELPH__

View File

@@ -1311,6 +1311,10 @@ enum wxStretch
#define wxID_SETUP 5110
#define wxID_RESET 5111
#define wxID_CONTEXT_HELP 5112
#define wxID_YESTOALL 5113
#define wxID_NOTOALL 5114
#define wxID_ABORT 5115
#define wxID_RETRY 5116
// IDs used by generic file dialog (11 consecutive starting from this value)
#define wxID_FILEDLGG 5900

View File

@@ -47,9 +47,19 @@ public:
// If file is "", reloads file given in Initialize
virtual bool LoadFile(const wxString& file = "") = 0;
// Displays the contents
virtual bool DisplayContents(void) = 0;
// Display the given section
virtual bool DisplaySection(int sectionNo) = 0;
// Display the section using a context id
virtual bool DisplayContextPopup(int WXUNUSED(contextId)) { return FALSE; };
// Display the text in a popup, if possible
virtual bool DisplayTextPopup(const wxString& WXUNUSED(text), const wxPoint& WXUNUSED(pos)) { return FALSE; };
// By default, uses KeywordSection to display a topic. Implementations
// may override this for more specific behaviour.
virtual bool DisplaySection(const wxString& section) { return KeywordSearch(section); };

View File

@@ -39,6 +39,8 @@ public:
virtual bool DisplaySection(int sectionNo);
virtual bool DisplaySection(const wxString& section);
virtual bool DisplayBlock(long blockNo);
virtual bool DisplayContextPopup(int contextId);
virtual bool DisplayTextPopup(const wxString& text, const wxPoint& pos);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit();

View File

@@ -38,6 +38,7 @@ public:
virtual bool DisplayContents();
virtual bool DisplaySection(int sectionNo);
virtual bool DisplayBlock(long blockNo);
virtual bool DisplayContextPopup(int contextId);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit();