1/////////////////////////////////////////////////////////////////////////////
2// Name:        helpwin.h
3// Purpose:     Help system: WinHelp implementation
4// Author:      Julian Smart
5// Modified by:
6// Created:     04/01/98
7// RCS-ID:      $Id: helpwin.h 41020 2006-09-05 20:47:48Z VZ $
8// Copyright:   (c) Julian Smart
9// Licence:     wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_HELPWIN_H_
13#define _WX_HELPWIN_H_
14
15#include "wx/wx.h"
16
17#if wxUSE_HELP
18
19#include "wx/helpbase.h"
20
21class WXDLLEXPORT wxWinHelpController: public wxHelpControllerBase
22{
23    DECLARE_CLASS(wxWinHelpController)
24
25public:
26    wxWinHelpController(wxWindow* parentWindow = NULL): wxHelpControllerBase(parentWindow) {}
27    virtual ~wxWinHelpController() {}
28
29    // Must call this to set the filename
30    virtual bool Initialize(const wxString& file);
31    virtual bool Initialize(const wxString& file, int WXUNUSED(server) ) { return Initialize( file ); }
32
33    // If file is "", reloads file given in Initialize
34    virtual bool LoadFile(const wxString& file = wxEmptyString);
35    virtual bool DisplayContents();
36    virtual bool DisplaySection(int sectionNo);
37    virtual bool DisplaySection(const wxString& section) { return KeywordSearch(section); }
38    virtual bool DisplayBlock(long blockNo);
39    virtual bool DisplayContextPopup(int contextId);
40    virtual bool KeywordSearch(const wxString& k,
41                               wxHelpSearchMode mode = wxHELP_SEARCH_ALL);
42    virtual bool Quit();
43
44    inline wxString GetHelpFile() const { return m_helpFile; }
45
46protected:
47    // Append extension if necessary.
48    wxString GetValidFilename(const wxString& file) const;
49
50private:
51    wxString m_helpFile;
52};
53
54#endif // wxUSE_HELP
55#endif
56// _WX_HELPWIN_H_
57