source: rc/puzzlebox_brainstorms_client_interface_button.py @ 18

Last change on this file since 18 was 18, checked in by sc, 12 years ago

configuration:

  • button layout added

client_interface_button:

  • initial checking as distinct module

client_interface:

  • button initializing and drawing added

client_interface_component:

  • initial checking as distinct module
File size: 3.2 KB
Line 
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3#
4# Puzzlebox - Brainstorms - Client Interface - Button
5#
6# Copyright Puzzlebox Productions, LLC (2010)
7#
8# Portions of this code have been previously
9# released under the GNU Pulic License (GPL) version 2
10# and is Copyright Steven M. Castellotti (2010)
11# For more information please refer to http://www.gnu.org/copyleft/gpl.htm
12#
13# Last Update: 2010.02.01
14#
15#####################################################################
16
17import puzzlebox_brainstorms_client_interface_component as component
18
19#####################################################################
20# Classes
21#####################################################################
22
23class puzzlebox_brainstorms_client_interface_button( \
24   component.puzzlebox_brainstorms_client_interface_component):
25       
26        def __init__(self, pygame, screen, \
27                           button_image, \
28                           activated_image, \
29                           x, \
30                           y, \
31                           command, \
32                           DEBUG = 0):
33               
34                self.pygame = pygame
35                self.screen = screen
36                self.button_image = button_image
37                self.DEBUG = DEBUG
38               
39                self.button_image = self.load_image(button_image)
40                self.activated_image = self.load_image(activated_image)
41               
42                self.position = (x, y)
43               
44                self.x = self.button_image.get_rect()[2]
45                self.y = self.button_image.get_rect()[3]
46               
47                self.display_position = self.position
48               
49                # display the button graphic centered over the
50                # coordinates instead of to the lower-right
51                #self.display_position = (self.position[0] - (self.x / 2), \
52                                         #self.position[1] - (self.y / 2))
53               
54                self.rect = self.button_image.get_rect()
55                self.rect[0] = self.position[0]
56                self.rect[1] = self.position[1]
57               
58               
59                self.command = command
60               
61               
62                #if (button_image != None):
63                       
64                        ##if (os.path.exists(button_image) and \
65                            ##(button_image != '.') and \
66                            ##(button_image != '..')):
67                                ##self.image = self.load_image(button_image)
68                        ##else:
69                                ##print button_image
70                                ##self.image = self.create_text(button_image, None, 64, (0,0,0))
71                       
72                        #self.image_display_position = (self.position[0] - \
73                                                                                                                #self.image.get_width() / 2, \
74                                                                                                        #self.position[1] - \
75                                                                                                                #self.image.get_height() / 2)
76                        #self.draw_button_image = 1
77               
78                #else:
79                        #self.draw_button_image = 0
80               
81               
82                self.hits = 0
83               
84                self.display()
85       
86       
87        #####################################################################
88       
89        def display(self):
90               
91                #self.display_image(self.image, self.display_position)
92                self.draw_image(self.button_image, self.display_position)
93               
94                #if (self.draw_icon_image == 1):
95                        #self.draw_image(self.image, self.image_display_position)
96       
97       
98        #####################################################################
99       
100        def check_collision(self, target_rect):
101               
102                collision = self.rect.colliderect(target_rect)
103               
104                if collision:
105                        self.hits = self.hits + 1
106               
107               
108                return(collision)
109
110
111#####################################################################
112# Functions
113#####################################################################
114
115#####################################################################
116# Main
117#####################################################################
118
119if __name__ == '__main__':
120
121        pass
122
Note: See TracBrowser for help on using the repository browser.