]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/htmlhelp.i
Bug fix
[wxWidgets.git] / wxPython / src / htmlhelp.i
index 1143363f1525acaf8f92e57f568c72533c76cd22..b74d65fb9fd77622f6c1209964d0855daaaf39e4 100644 (file)
@@ -14,7 +14,7 @@
 %module htmlhelp
 
 %{
-#include "export.h"
+#include "wxPython.h"
 #include <wx/html/htmlwin.h>
 #include <wx/html/helpctrl.h>
 #include <wx/image.h>
 #include <wx/wfstream.h>
 %}
 
+//---------------------------------------------------------------------------
+%{
+    // Put some wx default wxChar* values into wxStrings.
+    static const wxString wxPyEmptyString(wxT(""));
+%}
 //---------------------------------------------------------------------------
 
 %include typemaps.i
 
 //---------------------------------------------------------------------------
 
-class wxHtmlBookRecord  {
+class wxHtmlBookRecord {
 public:
-    wxHtmlBookRecord(const wxString& basepath, const wxString& title,
-                    const wxString& start);
+    wxHtmlBookRecord(const wxString& bookfile, const wxString& basepath,
+                     const wxString& title, const wxString& start);
 
+    wxString GetBookFile();
     wxString GetTitle();
     wxString GetStart();
     wxString GetBasePath();
@@ -54,18 +60,26 @@ public:
     void SetContentsRange(int start, int end);
     int GetContentsStart();
     int GetContentsEnd();
+
+    void SetTitle(const wxString& title);
+    void SetBasePath(const wxString& path);
+    void SetStart(const wxString& start);
+
+    wxString GetFullPath(const wxString &page) const;
 };
 
 //---------------------------------------------------------------------------
 
-typedef struct
+struct wxHtmlContentsItem
 {
-    short int m_Level;
-    int m_ID;
-    char* m_Name;
-    char* m_Page;
-    wxHtmlBookRecord *m_Book;
-} wxHtmlContentsItem;
+    %addmethods {
+        int GetLevel() { return self->m_Level; }
+        int GetID() { return self->m_ID; }
+        wxString GetName() { return self->m_Name; }
+        wxString GetPage() { return self->m_Page; }
+        wxHtmlBookRecord* GetBook() { return self->m_Book; }
+    }
+};
 
 //---------------------------------------------------------------------------
 
@@ -73,7 +87,7 @@ class wxHtmlSearchStatus
 {
 public:
     //wxHtmlSearchStatus(wxHtmlHelpData* base, const wxString& keyword,
-    //                   const wxString& book = wxEmptyString);
+    //                   const wxString& book = wxPyEmptyString);
     bool Search();
     bool IsActive();
     int GetCurIndex();
@@ -92,9 +106,9 @@ public:
     void SetTempDir(const wxString& path);
     bool AddBook(const wxString& book);
 //      bool AddBookParam(const wxString& title, const wxString& contfile,
-//                   const wxString& indexfile=wxEmptyString,
-//                   const wxString& deftopic=wxEmptyString,
-//                   const wxString& path=wxEmptyString);
+//                   const wxString& indexfile=wxPyEmptyString,
+//                   const wxString& deftopic=wxPyEmptyString,
+//                   const wxString& path=wxPyEmptyString);
 
     wxString FindPageByName(const wxString& page);
     wxString FindPageById(int id);
@@ -113,9 +127,11 @@ public:
 class wxHtmlHelpFrame : public wxFrame {
 public:
     wxHtmlHelpFrame(wxWindow* parent, int wxWindowID,
-                   const wxString& title = wxEmptyString,
+                   const wxString& title = wxPyEmptyString,
                    int style = wxHF_DEFAULTSTYLE, wxHtmlHelpData* data = NULL);
 
+    %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
+
     wxHtmlHelpData* GetData();
     void SetTitleFormat(const wxString& format);
     void Display(const wxString& x);
@@ -123,9 +139,9 @@ public:
     void DisplayContents();
     void DisplayIndex();
     bool KeywordSearch(const wxString& keyword);
-    void UseConfig(wxConfigBase *config, const wxString& rootpath = wxEmptyString);
-    void ReadCustomization(wxConfigBase *cfg, wxString path = wxEmptyString);
-    void WriteCustomization(wxConfigBase *cfg, wxString path = wxEmptyString);
+    void UseConfig(wxConfigBase *config, const wxString& rootpath = wxPyEmptyString);
+    void ReadCustomization(wxConfigBase *cfg, wxString path = wxPyEmptyString);
+    void WriteCustomization(wxConfigBase *cfg, wxString path = wxPyEmptyString);
 };
 
 
@@ -150,6 +166,8 @@ public:
     wxHtmlHelpController(int style = wxHF_DEFAULTSTYLE);
     ~wxHtmlHelpController();
 
+    %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
+
     void SetTitleFormat(const wxString& format);
     void SetTempDir(const wxString& path);
     bool AddBook(const wxString& book, int show_wait_msg = FALSE);
@@ -158,9 +176,9 @@ public:
     void DisplayContents();
     void DisplayIndex();
     bool KeywordSearch(const wxString& keyword);
-    void UseConfig(wxConfigBase *config, const wxString& rootpath = wxEmptyString);
-    void ReadCustomization(wxConfigBase *cfg, wxString path = wxEmptyString);
-    void WriteCustomization(wxConfigBase *cfg, wxString path = wxEmptyString);
+    void UseConfig(wxConfigBase *config, const wxString& rootpath = wxPyEmptyString);
+    void ReadCustomization(wxConfigBase *cfg, wxString path = wxPyEmptyString);
+    void WriteCustomization(wxConfigBase *cfg, wxString path = wxPyEmptyString);
     wxHtmlHelpFrame* GetFrame();
 };