Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/button.py
diff options
context:
space:
mode:
authorerikb <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)
commitb326f156317002b75be9a44865fcc70ec3b12820 (patch)
tree4ae21b4fbbede01762b93635a897e44c35630deb /button.py
parent054e2018bc38ff2fd68bec8d324c3f435dc3dc4f (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-xbutton.py55
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