Added wxHtmlFilter

Also some minor tweaks and additions


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@17422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2002-10-02 00:24:38 +00:00
parent 8d5e66bc14
commit 970a937c34
6 changed files with 180 additions and 19 deletions

View File

@@ -43,6 +43,23 @@ class MyHtmlWindow(wxHtmlWindow):
self.base_OnCellClicked(cell, x, y, evt)
# This filter doesn't really do anything but show how to use filters
class MyHtmlFilter(wxHtmlFilter):
def __init__(self, log):
wxHtmlFilter.__init__(self)
self.log = log
# This method decides if this filter is able to read the file
def CanRead(self, fsfile):
self.log.write("CanRead: %s\n" % fsfile.GetMimeType())
return FALSE
# If CanRead returns true then this method is called to actually
# read the file and return the contents.
def ReadFile(self, fsfile):
return ""
class TestHtmlPanel(wxPanel):
def __init__(self, parent, frame, log):
wxPanel.__init__(self, parent, -1, style=wxNO_FULL_REPAINT_ON_RESIZE)
@@ -52,6 +69,8 @@ class TestHtmlPanel(wxPanel):
if not self.cwd:
self.cwd = os.getcwd()
wxHtmlWindow_AddFilter(MyHtmlFilter(log))
self.html = MyHtmlWindow(self, -1, log)
self.html.SetRelatedFrame(frame, "wxPython: (A Demonstration) -- %s")
self.html.SetRelatedStatusBar(0)
@@ -168,15 +187,27 @@ def runTest(frame, nb, log):
overview = """\
wxHtmlWindow is capable of parsing and rendering most simple HTML tags.
overview = """<html><body>
<h2>wxHtmlWindow</h2>
It is not intended to be a high-end HTML browser. If you're looking for something like that try http://www.mozilla.org - there's a chance you'll be able to make their widget wxWindows-compatible. I'm sure everyone will enjoy your work in that case...
<p>wxHtmlWindow is capable of parsing and rendering most
simple HTML tags.
<p>It is not intended to be a high-end HTML browser. If you're
looking for something like that try http://www.mozilla.org - there's a
chance you'll be able to make their widget wxWindows-compatible. I'm
sure everyone will enjoy your work in that case...
</body></html>
"""
if __name__ == '__main__':
import sys,os
import run
run.main(['', os.path.basename(sys.argv[0])])