X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/bb2775b9e8bc1b882d9a5c7ffe68371717b9e5dc..be05b434519887d3e8c1634120d52e052b0530c1:/wxPython/samples/wxPIA_book/Chapter-18/drop_target.py diff --git a/wxPython/samples/wxPIA_book/Chapter-18/drop_target.py b/wxPython/samples/wxPIA_book/Chapter-18/drop_target.py new file mode 100644 index 0000000000..bec7653449 --- /dev/null +++ b/wxPython/samples/wxPIA_book/Chapter-18/drop_target.py @@ -0,0 +1,40 @@ +import wx + +class MyFileDropTarget(wx.FileDropTarget): + def __init__(self, window): + wx.FileDropTarget.__init__(self) + self.window = window + + def OnDropFiles(self, x, y, filenames): + self.window.AppendText("\n%d file(s) dropped at (%d,%d):\n" % + (len(filenames), x, y)) + for file in filenames: + self.window.AppendText("\t%s\n" % file) + + +class MyFrame(wx.Frame): + def __init__(self): + wx.Frame.__init__(self, None, title="Drop Target", + size=(500,300)) + p = wx.Panel(self) + + # create the controls + label = wx.StaticText(p, -1, "Drop some files here:") + text = wx.TextCtrl(p, -1, "", + style=wx.TE_MULTILINE|wx.HSCROLL) + + # setup the layout with sizers + sizer = wx.BoxSizer(wx.VERTICAL) + sizer.Add(label, 0, wx.ALL, 5) + sizer.Add(text, 1, wx.EXPAND|wx.ALL, 5) + p.SetSizer(sizer) + + # make the text control be a drop target + dt = MyFileDropTarget(text) + text.SetDropTarget(dt) + + +app = wx.PySimpleApp() +frm = MyFrame() +frm.Show() +app.MainLoop()