]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/htmllbox.h
process one event at once in wxEvtHandler::ProcessPendingEvents() to prevent crashes...
[wxWidgets.git] / include / wx / htmllbox.h
index 6557e4e036d6743abdc516ee97394897e5d7107d..89c06d29dc11154c52a51dc314afb33a0864345c 100644 (file)
     #include "wx/filesys.h"
 #endif // wxUSE_FILESYSTEM
 
     #include "wx/filesys.h"
 #endif // wxUSE_FILESYSTEM
 
-class WXDLLIMPEXP_HTML wxHtmlCell;
-class WXDLLIMPEXP_HTML wxHtmlWinParser;
-class WXDLLIMPEXP_HTML wxHtmlListBoxCache;
-class WXDLLIMPEXP_HTML wxHtmlListBoxStyle;
+class WXDLLIMPEXP_FWD_HTML wxHtmlCell;
+class WXDLLIMPEXP_FWD_HTML wxHtmlWinParser;
+class WXDLLIMPEXP_FWD_HTML wxHtmlListBoxCache;
+class WXDLLIMPEXP_FWD_HTML wxHtmlListBoxStyle;
 
 extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxHtmlListBoxNameStr[];
 extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxSimpleHtmlListBoxNameStr[];
 
 extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxHtmlListBoxNameStr[];
 extern WXDLLIMPEXP_DATA_HTML(const wxChar) wxSimpleHtmlListBoxNameStr[];
@@ -69,15 +69,11 @@ public:
     virtual ~wxHtmlListBox();
 
     // override some base class virtuals
     virtual ~wxHtmlListBox();
 
     // override some base class virtuals
-    virtual void RefreshLine(size_t line);
-    virtual void RefreshLines(size_t from, size_t to);
+    virtual void RefreshRow(size_t line);
+    virtual void RefreshRows(size_t from, size_t to);
     virtual void RefreshAll();
     virtual void SetItemCount(size_t count);
 
     virtual void RefreshAll();
     virtual void SetItemCount(size_t count);
 
-    // provide a way to set the default encoding (non-Unicode only)
-    void SetEncoding(wxFontEncoding encoding) { m_fontEncoding = encoding; }
-    wxFontEncoding GetEncoding() { return m_fontEncoding; }
-
 #if wxUSE_FILESYSTEM
     // retrieve the file system used by the wxHtmlWinParser: if you use
     // relative paths in your HTML, you should use its ChangePathTo() method
 #if wxUSE_FILESYSTEM
     // retrieve the file system used by the wxHtmlWinParser: if you use
     // relative paths in your HTML, you should use its ChangePathTo() method
@@ -171,9 +167,6 @@ private:
     // HTML parser we use
     wxHtmlWinParser *m_htmlParser;
 
     // HTML parser we use
     wxHtmlWinParser *m_htmlParser;
 
-    // font encoding (used in non-Unicode mode only)
-    wxFontEncoding  m_fontEncoding;
-
 #if wxUSE_FILESYSTEM
     // file system used by m_htmlParser
     wxFileSystem m_filesystem;
 #if wxUSE_FILESYSTEM
     // file system used by m_htmlParser
     wxFileSystem m_filesystem;
@@ -275,35 +268,19 @@ public:
 
     virtual void SetString(unsigned int n, const wxString& s);
 
 
     virtual void SetString(unsigned int n, const wxString& s);
 
-    virtual void Clear();
-    virtual void Delete(unsigned int n);
-
-    // override default unoptimized wxItemContainer::Append() function
-    void Append(const wxArrayString& strings);
-
-    // since we override one Append() overload, we need to overload all others too
-    int Append(const wxString& item)
-        { return wxItemContainer::Append(item); }
-    int Append(const wxString& item, void *clientData)
-        { return wxItemContainer::Append(item, clientData); }
-    int Append(const wxString& item, wxClientData *clientData)
-        { return wxItemContainer::Append(item, clientData); }
-
+    virtual void DoClear();
+    virtual void DoDeleteOneItem(unsigned int n);
 
 protected:
 
 protected:
-
-    virtual int DoAppend(const wxString& item);
-    virtual int DoInsert(const wxString& item, unsigned int pos);
+    virtual int DoInsertItems(const wxArrayStringsAdapter & items,
+                              unsigned int pos,
+                              void **clientData, wxClientDataType type);
 
     virtual void DoSetItemClientData(unsigned int n, void *clientData)
         { m_HTMLclientData[n] = clientData; }
 
     virtual void *DoGetItemClientData(unsigned int n) const
         { return m_HTMLclientData[n]; }
 
     virtual void DoSetItemClientData(unsigned int n, void *clientData)
         { m_HTMLclientData[n] = clientData; }
 
     virtual void *DoGetItemClientData(unsigned int n) const
         { return m_HTMLclientData[n]; }
-    virtual void DoSetItemClientObject(unsigned int n, wxClientData *clientData)
-        { m_HTMLclientData[n] = (void *)clientData; }
-    virtual wxClientData *DoGetItemClientObject(unsigned int n) const
-        { return (wxClientData *)m_HTMLclientData[n]; }
 
     // calls wxHtmlListBox::SetItemCount() and RefreshAll()
     void UpdateCount();
 
     // calls wxHtmlListBox::SetItemCount() and RefreshAll()
     void UpdateCount();
@@ -312,8 +289,8 @@ protected:
     // wxSimpleHtmlListBox shouldn't be allowed to call them directly!
     virtual void SetItemCount(size_t count)
         { wxHtmlListBox::SetItemCount(count); }
     // wxSimpleHtmlListBox shouldn't be allowed to call them directly!
     virtual void SetItemCount(size_t count)
         { wxHtmlListBox::SetItemCount(count); }
-    virtual void SetLineCount(size_t count)
-        { wxHtmlListBox::SetLineCount(count); }
+    virtual void SetRowCount(size_t count)
+        { wxHtmlListBox::SetRowCount(count); }
 
     virtual wxString OnGetItem(size_t n) const
         { return m_items[n]; }
 
     virtual wxString OnGetItem(size_t n) const
         { return m_items[n]; }