]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/html/helpfrm.h
moved wxDash typedef to gdicmn.h
[wxWidgets.git] / include / wx / html / helpfrm.h
index 2046603054cb65c91e7f3afaeb6bc8259fa10c91..5ac3a97957811621ed068709a040068ba4532f83 100644 (file)
 #include "wx/listbox.h"
 #include "wx/choice.h"
 #include "wx/combobox.h"
+#include "wx/checkbox.h"
+#include "wx/stattext.h"
 #include "wx/html/htmlwin.h"
+#include "wx/html/htmprint.h"
 
 
 // style flags for the Help Frame
@@ -38,7 +41,9 @@
 #define wxHF_INDEX        0x0004
 #define wxHF_SEARCH       0x0008
 #define wxHF_BOOKMARKS    0x0010
-#define wxHF_DEFAULTSTYLE (wxHF_TOOLBAR | wxHF_CONTENTS | wxHF_INDEX | wxHF_SEARCH | wxHF_BOOKMARKS)
+#define wxHF_OPENFILES    0x0020
+#define wxHF_PRINT        0x0040
+#define wxHF_DEFAULTSTYLE (wxHF_TOOLBAR | wxHF_CONTENTS | wxHF_INDEX | wxHF_SEARCH | wxHF_BOOKMARKS | wxHF_PRINT)
 
 
 // Command IDs :
@@ -47,6 +52,11 @@ enum
     wxID_HTML_PANEL = wxID_HIGHEST + 1,
     wxID_HTML_BACK,
     wxID_HTML_FORWARD,
+    wxID_HTML_UPNODE,
+    wxID_HTML_UP,
+    wxID_HTML_DOWN,
+    wxID_HTML_PRINT,
+    wxID_HTML_OPENFILE,
     wxID_HTML_OPTIONS,
     wxID_HTML_BOOKMARKSLIST,
     wxID_HTML_BOOKMARKSADD,
@@ -63,6 +73,7 @@ enum
     wxID_HTML_SEARCHLIST,
     wxID_HTML_SEARCHBUTTON,
     wxID_HTML_SEARCHCHOICE,
+    wxID_HTML_COUNTINFO,
     wxID_HTML_HELPFRAME // the id of wxHtmlHelpController's helpframe
 }
 ;
@@ -77,6 +88,7 @@ typedef struct
 wxHtmlHelpFrameCfg;
 
 
+class WXDLLEXPORT wxHelpControllerBase;
 
 class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
 {
@@ -84,7 +96,7 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
 
     public:
         wxHtmlHelpFrame(wxHtmlHelpData* data = NULL) { Init(data); }
-        wxHtmlHelpFrame(wxWindow* parent, int wxWindowID,
+        wxHtmlHelpFrame(wxWindow* parent, wxWindowID wxWindowID,
                         const wxString& title = wxEmptyString,
                         int style = wxHF_DEFAULTSTYLE, wxHtmlHelpData* data = NULL);
         bool Create(wxWindow* parent, wxWindowID id, const wxString& title = wxEmptyString,
@@ -92,13 +104,10 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
         ~wxHtmlHelpFrame();
 
         wxHtmlHelpData* GetData() { return m_Data; }
+        wxHelpControllerBase* GetController() const { return m_helpController; }
+        void SetController(wxHelpControllerBase* controller) { m_helpController = controller; }
 
-        void SetTitleFormat(const wxString& format)
-        {
-            if (m_HtmlWin)
-                m_HtmlWin->SetRelatedFrame(this, format);
-            m_TitleFormat = format;
-        }
+        void SetTitleFormat(const wxString& format);
         // Sets format of title of the frame. Must contain exactly one "%s"
         // (for title of displayed HTML page)
 
@@ -130,18 +139,6 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
         //   (+ : page must contain the word ; - : page can't contain the word)
         // * if there is no + or - before the word, + is default
 
-        void RefreshLists(bool show_progress = FALSE);
-        // Refreshes Contents and Index tabs
-
-        void CreateContents(bool show_progress = FALSE);
-        // Adds items to m_Contents tree control
-
-        void CreateIndex(bool show_progress = FALSE);
-        // Adds items to m_IndexList
-
-        void CreateSearch();
-        // Add books to search choice panel
-
         void UseConfig(wxConfigBase *config, const wxString& rootpath = wxEmptyString)
             {
                 m_Config = config;
@@ -155,6 +152,27 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
         // saved values : things set by SetFonts, SetBorders.
         void WriteCustomization(wxConfigBase *cfg, const wxString& path = wxEmptyString);
         // ...
+        
+        void NotifyPageChanged();
+        // call this to let wxHtmlHelpFrame know page changed
+
+    protected:
+        void Init(wxHtmlHelpData* data = NULL);
+
+        void RefreshLists();
+        // Refreshes Contents and Index tabs
+
+        void CreateContents();
+        // Adds items to m_Contents tree control
+
+        void CreateIndex();
+        // Adds items to m_IndexList
+
+        void CreateSearch();
+        // Add books to search choice panel
+
+        virtual void AddToolbarButtons(wxToolBar *toolBar, int style);
+        // Add custom buttons to toolbar
 
         virtual void OptionsDialog();
         // Displays options dialog (fonts etc.)
@@ -195,6 +213,9 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
         wxButton *m_SearchButton;
         wxListBox *m_SearchList;
         wxChoice *m_SearchChoice;
+        wxStaticText *m_IndexCountInfo;
+        wxCheckBox *m_SearchCaseSensitive;
+        wxCheckBox *m_SearchWholeWords;
 
         wxComboBox *m_Bookmarks;
         wxArrayString m_BookmarksNames, m_BookmarksPages;
@@ -213,13 +234,18 @@ class WXDLLEXPORT wxHtmlHelpFrame : public wxFrame
         wxArrayString *m_NormalFonts, *m_FixedFonts;
         int m_FontSize; // 0,1,2 = small,medium,big
         wxString m_NormalFace, m_FixedFace;
+        
+        bool m_UpdateContents;
 
-    protected:
-        void Init(wxHtmlHelpData* data = NULL);
+#if wxUSE_PRINTING_ARCHITECTURE
+        wxHtmlEasyPrinting *m_Printer;
+#endif
+        wxHashTable *m_PagesHash;
+        wxHelpControllerBase* m_helpController;
 
         DECLARE_EVENT_TABLE()
 };
 
-#endif
+#endif // wxUSE_HTML
 
 #endif