2 """ Demonstrate filebrowsebutton module of the wxPython.lib Library.
4 14.1.2001 Bernhard Reiter <bernhard@intevation.de>
5 Added demo for DirBrowseButton and improved overview text.
9 import wx
.lib
.filebrowsebutton
as filebrowse
11 #----------------------------------------------------------------------
13 class TestPanel(wx
.Panel
):
14 def __init__(self
, parent
, ID
, log
):
15 wx
.Panel
.__init
__(self
, parent
, ID
)
18 self
.fbb
= filebrowse
.FileBrowseButton(
19 self
, -1, size
=(450, -1), changeCallback
= self
.fbbCallback
22 self
.fbbh
= filebrowse
.FileBrowseButtonWithHistory(
23 self
, -1, size
=(450, -1), changeCallback
= self
.fbbhCallback
26 self
.dbb
= filebrowse
.DirBrowseButton(
27 self
, -1, size
=(450, -1), changeCallback
= self
.dbbCallback
30 self
.fbbh
.SetHistory(['You', 'can', 'put', 'some', 'filenames', 'here'])
32 sizer
= wx
.BoxSizer(wx
.VERTICAL
)
33 sizer
.Add(self
.fbb
, 0, wx
.ALL
, 5)
34 sizer
.Add(self
.fbbh
, 0, wx
.ALL
, 5)
35 sizer
.Add(self
.dbb
, 0, wx
.ALL
, 5)
37 box
.Add(sizer
, 0, wx
.ALL
, 20)
41 def fbbCallback(self
, evt
):
42 self
.log
.write('FileBrowseButton: %s\n' % evt
.GetString())
45 def fbbhCallback(self
, evt
):
46 if hasattr(self
, 'fbbh'):
47 value
= evt
.GetString()
48 self
.log
.write('FileBrowseButtonWithHistory: %s\n' % value
)
49 history
= self
.fbbh
.GetHistory()
50 if value
not in history
:
52 self
.fbbh
.SetHistory(history
)
53 self
.fbbh
.GetHistoryControl().SetStringSelection(value
)
56 def dbbCallback(self
, evt
):
57 self
.log
.write('DirBrowseButton: %s\n' % evt
.GetString())
60 #----------------------------------------------------------------------
62 def runTest(frame
, nb
, log
):
63 win
= TestPanel(nb
, -1, log
)
67 #----------------------------------------------------------------------
69 overview
= """<html><body>
70 <h2>class FileBrowseButton:</h2>
75 <h2>class FileBrowseButtonWithHistory(FileBrowseButton):</h2>
80 <h2>class DirBrowseButton(FileBrowseButton):</h2>
86 """ % ( filebrowse
.FileBrowseButton
.__doc
__,
87 filebrowse
.FileBrowseButtonWithHistory
.__doc
__ ,
88 filebrowse
.DirBrowseButton
.__doc
__
92 if __name__
== '__main__':
95 run
.main(['', os
.path
.basename(sys
.argv
[0])] + sys
.argv
[1:])