1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import datetime
20
21 import wx
22
23 from timelinelib.drawing.drawers.default import DefaultDrawingAlgorithm
24 from timelinelib.play.playcontroller import PlayController
25
26
28
30 wx.Dialog.__init__(self, None, style=wx.DEFAULT_FRAME_STYLE)
31 self.close_button = wx.Button(self, wx.ID_ANY, label=_("Close"))
32 self.drawing_area = DrawingArea(self)
33 self.Bind(wx.EVT_BUTTON, self.on_close_clicked, self.close_button)
34
35 vbox = wx.BoxSizer(wx.VERTICAL)
36 vbox.Add(self.drawing_area)
37 vbox.Add(self.close_button)
38 self.SetSizerAndFit(vbox)
39
40 drawing_algorithm = DefaultDrawingAlgorithm()
41 self.controller = PlayController(
42 self, timeline, drawing_algorithm, config)
43 self.controller.start_movie()
44
48
51
54
57
59 self.EndModal(wx.ID_OK)
60
62 return datetime.timedelta(days=10)
63
64
66
68 wx.Timer.__init__(self)
69 self.tick_function = fn
70
73
74
76
78 wx.Panel.__init__(self, parent, size=(600, 400))
79 self.surface_bitmap = None
80 self._create_gui()
81
83 self.Bind(wx.EVT_PAINT, self._on_paint)
84
86 width, height = self.GetSizeTuple()
87 self.surface_bitmap = wx.EmptyBitmap(width, height)
88 memdc = wx.MemoryDC()
89 memdc.SelectObject(self.surface_bitmap)
90 memdc.BeginDrawing()
91 memdc.SetBackground(wx.Brush(wx.WHITE, wx.SOLID))
92 memdc.Clear()
93 fn_draw(memdc)
94 memdc.EndDrawing()
95 del memdc
96 self.Refresh()
97 self.Update()
98
100 dc = wx.AutoBufferedPaintDC(self)
101 dc.BeginDrawing()
102 if self.surface_bitmap:
103 dc.DrawBitmap(self.surface_bitmap, 0, 0, True)
104 else:
105 pass
106 dc.EndDrawing()
107