/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. from GDrawableContainers import DrawableContainer as GDrawableContainer
  7. class DrawableContainer(GDrawableContainer):
  8. def update(self):
  9. self._win.UpdateWindow()
  10. def with_canvas(self, body):
  11. win = self._win
  12. dc = win.GetDC()
  13. self._win_prepare_dc(dc)
  14. try:
  15. canvas = Canvas._from_win_dc(dc)
  16. body(canvas)
  17. finally:
  18. win.ReleaseDC(dc)
  19. def _win_prepare_dc(self, dc):
  20. pass