]> git.saurik.com Git - wxWidgets.git/blob - wxPython/demo/DragScroller.py
use wxVERSION_NUM_DOT_STRING_T instead of wxVERSION_NUM_DOT_STRING to fix the Unicode...
[wxWidgets.git] / wxPython / demo / DragScroller.py
1 import wx
2 import wx.lib.dragscroller
3
4 #-------------------------------------------------------------------------------
5
6 def runTest(frame, nb, log):
7 win = DragScrollerExample(nb, -1)
8 return win
9
10 class DragScrollerExample(wx.ScrolledWindow):
11 def __init__(self, parent, id=-1):
12 wx.ScrolledWindow.__init__(self, parent, id)
13 self.Bind(wx.EVT_PAINT, self.OnPaint)
14 self.Bind(wx.EVT_RIGHT_DOWN, self.OnRightDown)
15 self.Bind(wx.EVT_RIGHT_UP, self.OnRightUp)
16
17 self.SetScrollbars(1, 1, 2000, 2000, 0, 0)
18
19 self.scroller = wx.lib.dragscroller.DragScroller(self)
20
21 def OnPaint(self, event):
22 dc = wx.PaintDC(self)
23 self.DoPrepareDC(dc)
24
25 pen = wx.Pen(wx.BLACK, 5)
26 dc.SetPen(pen)
27
28 for y in range(10):
29 for x in range(10):
30 dc.DrawCircle(x*400+20, y*400+20, 200)
31
32 dc.DrawText('Right click and drag in the direction you want to scroll.',
33 20, 20)
34 dc.DrawText('The distance from the start of the drag determines the speed.',
35 20, 50)
36
37 def OnRightDown(self, event):
38 self.scroller.Start(event.GetPosition())
39
40 def OnRightUp(self, event):
41 self.scroller.Stop()
42
43
44 #-------------------------------------------------------------------------------
45
46 overview = """<html><body>
47 <h2>DragScroller</h2>
48 <p>
49 A helper class that adds scrolling to a wx.ScrolledWindow in the direction
50 of the drag.
51 </body></html>
52 """
53
54 if __name__ == '__main__':
55 import sys,os
56 import run
57 run.main(['', os.path.basename(sys.argv[0])])