home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wxos2233.zip / wxOS2-2_3_3.zip / wxWindows-2.3.3 / include / wx / html / helpctrl.h < prev    next >
C/C++ Source or Header  |  2002-08-31  |  4KB  |  106 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. // Name:        helpctrl.h
  3. // Purpose:     wxHtmlHelpController
  4. // Notes:       Based on htmlhelp.cpp, implementing a monolithic
  5. //              HTML Help controller class,  by Vaclav Slavik
  6. // Author:      Harm van der Heijden and Vaclav Slavik
  7. // RCS-ID:      $Id: helpctrl.h,v 1.20 2002/08/31 11:29:12 GD Exp $
  8. // Copyright:   (c) Harm van der Heijden and Vaclav Slavik
  9. // Licence:     wxWindows licence
  10. /////////////////////////////////////////////////////////////////////////////
  11.  
  12. #ifndef _WX_HELPCTRL_H_
  13. #define _WX_HELPCTRL_H_
  14.  
  15. #include "wx/defs.h"
  16.  
  17. #if defined(__GNUG__) && !defined(__APPLE__)
  18. #pragma interface "helpctrl.h"
  19. #endif
  20.  
  21. #if wxUSE_WXHTML_HELP
  22.  
  23. #include "wx/html/helpfrm.h"
  24. #include "wx/helpbase.h"
  25.  
  26. #define wxID_HTML_HELPFRAME   (wxID_HIGHEST + 1)
  27.  
  28. class WXDLLEXPORT wxHtmlHelpController : public wxHelpControllerBase // wxEvtHandler
  29. {
  30.     DECLARE_DYNAMIC_CLASS(wxHtmlHelpController)
  31.  
  32. public:
  33.     wxHtmlHelpController(int style = wxHF_DEFAULT_STYLE);
  34.     virtual ~wxHtmlHelpController();
  35.  
  36.     void SetTitleFormat(const wxString& format);
  37.     void SetTempDir(const wxString& path) { m_helpData.SetTempDir(path); }
  38.     bool AddBook(const wxString& book, bool show_wait_msg = FALSE);
  39.  
  40.     bool Display(const wxString& x);
  41.     bool Display(int id);
  42.     bool DisplayContents();
  43.     bool DisplayIndex();
  44.     bool KeywordSearch(const wxString& keyword);
  45.  
  46.     wxHtmlHelpFrame* GetFrame() { return m_helpFrame; }
  47.     void UseConfig(wxConfigBase *config, const wxString& rootpath = wxEmptyString);
  48.  
  49.     // Assigns config object to the Ctrl. This config is then
  50.     // used in subsequent calls to Read/WriteCustomization of both help
  51.     // Ctrl and it's wxHtmlWindow
  52.     virtual void ReadCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString);
  53.     virtual void WriteCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString);
  54.  
  55.     //// Backward compatibility with wxHelpController API
  56.  
  57.     virtual bool Initialize(const wxString& file, int WXUNUSED(server) ) { return Initialize(file); }
  58.     virtual bool Initialize(const wxString& file);
  59.     virtual void SetViewer(const wxString& WXUNUSED(viewer), long WXUNUSED(flags) = 0) {}
  60.     virtual bool LoadFile(const wxString& file = "");
  61.     virtual bool DisplaySection(int sectionNo);
  62.     virtual bool DisplaySection(const wxString& section) { return Display(section); }
  63.     virtual bool DisplayBlock(long blockNo) { return DisplaySection(blockNo); }
  64.     virtual bool DisplayTextPopup(const wxString& text, const wxPoint& pos);
  65.  
  66.     virtual void SetFrameParameters(const wxString& title,
  67.                                const wxSize& size,
  68.                                const wxPoint& pos = wxDefaultPosition,
  69.                                bool newFrameEachTime = FALSE);
  70.     /// Obtains the latest settings used by the help frame and the help
  71.     /// frame.
  72.     virtual wxFrame *GetFrameParameters(wxSize *size = NULL,
  73.                                wxPoint *pos = NULL,
  74.                                bool *newFrameEachTime = NULL);
  75.  
  76.     // Get direct access to help data:
  77.     wxHtmlHelpData *GetHelpData() { return &m_helpData; }
  78.  
  79.     virtual bool Quit() ;
  80.     virtual void OnQuit() {};
  81.  
  82.     void OnCloseFrame(wxCloseEvent& evt);
  83.  
  84.     // Make the help controller's frame 'modal' if
  85.     // needed
  86.     void AddGrabIfNeeded();
  87.  
  88. protected:
  89.     virtual wxHtmlHelpFrame* CreateHelpFrame(wxHtmlHelpData *data);
  90.  
  91.     virtual void CreateHelpWindow();
  92.     virtual void DestroyHelpWindow();
  93.  
  94.     wxHtmlHelpData      m_helpData;
  95.     wxHtmlHelpFrame*    m_helpFrame;
  96.     wxConfigBase *      m_Config;
  97.     wxString            m_ConfigRoot;
  98.     wxString            m_titleFormat;
  99.     int                 m_FrameStyle;
  100.     // DECLARE_EVENT_TABLE()
  101. };
  102.  
  103. #endif // wxUSE_WXHTML_HELP
  104.  
  105. #endif // _WX_HELPCTRL_H_
  106.