Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pynxc/waxy/canvas.py
blob: 072fb85118eb1880f0564445652f26eef2bae59d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# canvas.py

import wx
import waxyobject

class Canvas(wx.ScrolledWindow, waxyobject.WaxyObject):

    __events__ = {
        'Paint': wx.EVT_PAINT,
    }

    def __init__(self, parent):
        wx.ScrolledWindow.__init__(self, parent, wx.NewId())
        self.Init()

        self.BindEvents()

    def _OnPaint(self, event=None):
        self.OnPaint(event)
    def OnPaint(self, event=None):
        dc = wx.PaintDC(self)
        self.PrepareDC(dc)
        self.OnDraw(dc)
        event.Skip()

    def OnDraw(self, dc):
        # override to draw on the canvas
        pass

    def Init(self):
        # override to place scrollbars, set color, etc.
        pass