wxwidgets/interface/wx/generic/helpext.h
Vadim Zeitlin 4f4c5fcfdf Use nullptr instead of NULL in the code and documentation
This is a combination of running clang-tidy with modernize-use-nullptr
check for some ports (GTK, X11, OSX) and manual changes to the ports for
which it couldn't be used easily (MSW, DFB) and also manually updating
the docs.

Also replace NULL with null or nullptr in the comments as this is more
consistent with the use of nullptr in the code and makes it simpler to
grep for the remaining occurrences of NULL itself.

And also use null in the assert messages.

Only a few occurrences of "NULL" are still left in non-C files, mostly
corresponding to unclear comments or string output which it might not be
safe to change.
2022-10-18 01:25:25 +02:00

154 lines
4.7 KiB
Objective-C

/////////////////////////////////////////////////////////////////////////////
// Name: helpext.h
// Purpose: interface of wxExtHelpController
// Author: wxWidgets team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
@class wxExtHelpController
This class implements help via an external browser.
It requires the name of a directory containing the documentation
and a file mapping numerical Section numbers to relative URLS.
The map file contains two or three fields per line:
numeric_id relative_URL [; comment/documentation]
The numeric_id is the id used to look up the entry in
DisplaySection()/DisplayBlock(). The relative_URL is a filename of
an html file, relative to the help directory. The optional
comment/documentation field (after a ';') is used for keyword
searches, so some meaningful text here does not hurt.
If the documentation itself contains a ';', only the part before
that will be displayed in the listbox, but all of it used for search.
Lines starting with ';' will be ignored.
@library{wxcore}
@category{help}
@see wxHelpController
*/
class wxExtHelpController : public wxHelpControllerBase
{
public:
wxExtHelpController(wxWindow* parentWindow = nullptr);
virtual ~wxExtHelpController();
/**
Tell it which browser to use.
The Netscape support will check whether Netscape is already
running (by looking at the .netscape/lock file in the user's
home directory) and tell it to load the page into the existing window.
@param viewer
The command to call a browser/html viewer.
@param flags
Set this to wxHELP_NETSCAPE if the browser is some variant of Netscape.
*/
virtual void SetViewer(const wxString& viewer = wxEmptyString,
long flags = wxHELP_NETSCAPE);
/**
This must be called to tell the controller where to find the
documentation.
If a locale is set, look in file/localename, i.e.
If passed "/usr/local/myapp/help" and the current wxLocale is
set to be "de", then look in "/usr/local/myapp/help/de/"
first and fall back to "/usr/local/myapp/help" if that
doesn't exist.
@param dir
directory name where to fine the help files
@return @true on success
*/
virtual bool Initialize(const wxString& dir);
/**
If file is "", reloads file given in Initialize.
@param file
Name of help directory.
@return @true on success
*/
virtual bool LoadFile(const wxString& file = wxEmptyString);
/**
Display list of all help entries.
@return @true on success
*/
virtual bool DisplayContents();
/**
Display help for id sectionNo.
@return @true on success
*/
virtual bool DisplaySection(int sectionNo);
/**
Display help for id sectionNo -- identical with DisplaySection().
@return @true on success
*/
virtual bool DisplaySection(const wxString& section);
/**
Display help for URL (using DisplayHelp) or keyword (using KeywordSearch)
@return @true on success
*/
virtual bool DisplayBlock(long blockNo);
/**
Search comment/documentation fields in map file and present a
list to chose from.
@param k
string to search for, empty string will list all entries
@param mode
optional parameter allows the search the index (wxHELP_SEARCH_INDEX)
but this currently only supported by the wxHtmlHelpController.
@return @true on success
*/
virtual bool KeywordSearch(const wxString& k,
wxHelpSearchMode mode = wxHELP_SEARCH_ALL);
/**
Does nothing.
*/
virtual bool Quit();
/**
Does nothing.
*/
virtual void OnQuit();
/**
Call the browser using a relative URL.
*/
virtual bool DisplayHelp(const wxString& relativeURL) ;
/**
Allows one to override the default settings for the help frame.
*/
virtual void SetFrameParameters(const wxString& titleFormat,
const wxSize& size,
const wxPoint& pos = wxDefaultPosition,
bool newFrameEachTime = false);
/**
Obtains the latest settings used by the help frame and the help frame.
*/
virtual wxFrame *GetFrameParameters(wxSize *size = nullptr,
wxPoint *pos = nullptr,
bool *newFrameEachTime = nullptr);
};