pbase.py 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. '''
  2. Created on 25 nov. 2016
  3. @author: olinox
  4. '''
  5. class BasePencil(object):
  6. def __init__(self, grid):
  7. self._grid = grid
  8. self._origin = None
  9. self._position = None
  10. self._size = 1
  11. self._selection = []
  12. self._added = []
  13. self._removed = []
  14. @property
  15. def origin(self):
  16. return self._coord0
  17. @origin.setter
  18. def origin(self, x, y):
  19. self._origin = (x, y)
  20. @property
  21. def size(self):
  22. return self._size
  23. @size.setter
  24. def size(self, size):
  25. if not size > 0:
  26. raise ValueError("size has to be strictly positive")
  27. self._size = size
  28. @property
  29. def position(self):
  30. return self._position
  31. @position.setter
  32. def position(self, x, y):
  33. self._position = (x, y)
  34. self._update()
  35. @property
  36. def selection(self):
  37. return self._selection
  38. @property
  39. def added(self):
  40. return self._added
  41. @property
  42. def removed(self):
  43. return self._removed
  44. def _update(self):
  45. pass