]> git.saurik.com Git - wxWidgets.git/blob - include/wx/helpbase.h
ugh. Nesting the (per class) plugin sentries can require them to
[wxWidgets.git] / include / wx / helpbase.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: helpbase.h
3 // Purpose: Help system base classes
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 04/01/98
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
11
12 #ifndef _WX_HELPBASEH__
13 #define _WX_HELPBASEH__
14
15 #ifdef __GNUG__
16 #pragma interface "helpbase.h"
17 #endif
18
19 #include "wx/defs.h"
20
21 #if wxUSE_HELP
22
23 #include "wx/object.h"
24 #include "wx/string.h"
25 #include "wx/gdicmn.h"
26 #include "wx/frame.h"
27
28 // Flags for SetViewer
29 #define wxHELP_NETSCAPE 1
30
31 // Defines the API for help controllers
32 class WXDLLEXPORT wxHelpControllerBase: public wxObject
33 {
34 DECLARE_CLASS(wxHelpControllerBase)
35
36 public:
37 inline wxHelpControllerBase() {}
38 inline ~wxHelpControllerBase() {};
39
40 // Must call this to set the filename and server name.
41 // server is only required when implementing TCP/IP-based
42 // help controllers.
43 virtual bool Initialize(const wxString& WXUNUSED(file), int WXUNUSED(server) ) { return FALSE; }
44 virtual bool Initialize(const wxString& WXUNUSED(file)) { return FALSE; }
45
46 // Set viewer: only relevant to some kinds of controller
47 virtual void SetViewer(const wxString& WXUNUSED(viewer), long WXUNUSED(flags) = 0) {}
48
49 // If file is "", reloads file given in Initialize
50 virtual bool LoadFile(const wxString& file = "") = 0;
51
52 // Displays the contents
53 virtual bool DisplayContents(void) = 0;
54
55 // Display the given section
56 virtual bool DisplaySection(int sectionNo) = 0;
57
58 // Display the section using a context id
59 virtual bool DisplayContextPopup(int WXUNUSED(contextId)) { return FALSE; };
60
61 // Display the text in a popup, if possible
62 virtual bool DisplayTextPopup(const wxString& WXUNUSED(text), const wxPoint& WXUNUSED(pos)) { return FALSE; };
63
64 // By default, uses KeywordSection to display a topic. Implementations
65 // may override this for more specific behaviour.
66 virtual bool DisplaySection(const wxString& section) { return KeywordSearch(section); };
67 virtual bool DisplayBlock(long blockNo) = 0;
68 virtual bool KeywordSearch(const wxString& k) = 0;
69 /// Allows one to override the default settings for the help frame.
70 virtual void SetFrameParameters(const wxString& WXUNUSED(title),
71 const wxSize& WXUNUSED(size),
72 const wxPoint& WXUNUSED(pos) = wxDefaultPosition,
73 bool WXUNUSED(newFrameEachTime) = FALSE)
74 {
75 // does nothing by default
76 }
77 /// Obtains the latest settings used by the help frame and the help
78 /// frame.
79 virtual wxFrame *GetFrameParameters(wxSize *WXUNUSED(size) = NULL,
80 wxPoint *WXUNUSED(pos) = NULL,
81 bool *WXUNUSED(newFrameEachTime) = NULL)
82 {
83 return (wxFrame*) NULL;// does nothing by default
84 }
85
86 virtual bool Quit(void) = 0;
87 virtual void OnQuit(void) {};
88 };
89
90 #endif // wxUSE_HELP
91
92 #endif
93 // _WX_HELPBASEH__