blob: 53b3d1b4c1bad8e1d7651f1e85adb0bcdd2140ef (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
# -*- coding: utf-8 -*-
from api.Label import CLabel
from Mouse import CMouse
class CButton(CLabel):
""" a button based on the label
same properties as label +
mactive: True if user is clicking on sprite
False if user is not currently clicking
mclicked: True when user releases mouse over a
currently active button
"""
def __init__(self):
CLabel.__init__(self)
self.mactive = False
self.mclicked = False
def clicked(self):
return self.mclicked
def active(self):
return self.mactive
def mouseOver(self):
if not CMouse().pressed():
if self.rect.collidepoint(CMouse().getPos()):
return True
else:
return False
else:
return False
def update(self):
CLabel.update(self)
self.mclicked = False
if CMouse().firstPress():
if self.rect.collidepoint(CMouse().getPos()):
self.mactive = True
if self.mactive == True:
if CMouse().release():
self.mactive = False
if self.rect.collidepoint(CMouse().getPos()):
self.mclicked = True
|