diff options
author | erikb <erikb@574bc980-5f2d-0410-acbc-c8f9f0eb14e0> | 2007-04-05 23:43:21 (GMT) |
---|---|---|
committer | erikb <erikb@574bc980-5f2d-0410-acbc-c8f9f0eb14e0> | 2007-04-05 23:43:21 (GMT) |
commit | b326f156317002b75be9a44865fcc70ec3b12820 (patch) | |
tree | 4ae21b4fbbede01762b93635a897e44c35630deb /button.py | |
parent | 054e2018bc38ff2fd68bec8d324c3f435dc3dc4f (diff) |
version 3 added
git-svn-id: http://mediamods.com/public-svn/camera-activity/Camera.activity@13 574bc980-5f2d-0410-acbc-c8f9f0eb14e0
Diffstat (limited to 'button.py')
-rwxr-xr-x | button.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/button.py b/button.py new file mode 100755 index 0000000..d83dc41 --- /dev/null +++ b/button.py @@ -0,0 +1,55 @@ +from polygon import Polygon + +class Button: + + def __init__(self, poly, offX, offY): + self._poly = poly + self._offX = offX + self._offY = offY + + self._enabled = True + self._pressed = False + self._toggle = False + + self._listeners = [] + + self._actionCommand = None + + self._img = None + + + def addActionListener(self, listen): + self._listeners.append(listen) + + + def removeActionListener(self, listen): + self._listeners.remove(listen) + + + def setActionCommand(self, command): + self._actionCommand = command + + + def getActionCommand(self): + return self._actionCommand + + + def setImage(self, img): + self._img = img + + + def contains( self, mx, my ): + x = mx - self._offX + y = my - self._offY + + contains = self._poly.contains( x, y ) + return contains + + + def doPressed( self ): + for i in range ( 0, len(self._listeners) ): + self._listeners[i].fireButton( self._actionCommand ) + + + def isImg( self ): + return self._img != None
\ No newline at end of file |