PageRenderTime 28ms CodeModel.GetById 18ms app.highlight 9ms RepoModel.GetById 0ms app.codeStats 0ms

/GUI/Win32/DrawableContainers.py

https://bitbucket.org/alsh/pygui-mirror
Python | 25 lines | 15 code | 5 blank | 5 comment | 2 complexity | a0fd2af7e7f1c9c826228b3e293b24a0 MD5 | raw file
 1#--------------------------------------------------------------------
 2#
 3#   PyGUI - DrawableContainer - Win32
 4#
 5#--------------------------------------------------------------------
 6
 7from GDrawableContainers import DrawableContainer as GDrawableContainer
 8
 9class DrawableContainer(GDrawableContainer):
10
11    def update(self):
12        self._win.UpdateWindow()
13
14    def with_canvas(self, body):
15        win = self._win
16        dc = win.GetDC()
17        self._win_prepare_dc(dc)
18        try:
19            canvas = Canvas._from_win_dc(dc)
20            body(canvas)
21        finally:
22            win.ReleaseDC(dc)
23
24    def _win_prepare_dc(self, dc):
25        pass