comparison tools/rect_drawer.py @ 243:0ea4661d134c

Show close button area in helper
author Neil Muller <neil@dip.sun.ac.za>
date Fri, 27 Aug 2010 13:01:42 +0200
parents 2510e0b0e901
children df57386908c0
comparison
equal deleted inserted replaced
242:12c4f87ea424 243:0ea4661d134c
11 from albow.utils import frame_rect 11 from albow.utils import frame_rect
12 from albow.widget import Widget 12 from albow.widget import Widget
13 from albow.controls import Button, Image 13 from albow.controls import Button, Image
14 from albow.palette_view import PaletteView 14 from albow.palette_view import PaletteView
15 from albow.file_dialogs import request_old_filename 15 from albow.file_dialogs import request_old_filename
16 from albow.resource import get_font
16 from pygame.locals import SWSURFACE 17 from pygame.locals import SWSURFACE
17 import pygame 18 import pygame
18 from pygame.colordict import THECOLORS 19 from pygame.colordict import THECOLORS
19 20
20 from gamelib.state import initial_state 21 from gamelib.state import initial_state
21 from gamelib import constants 22 from gamelib import constants
23 from gamelib.widgets import BoomLabel
22 24
23 constants.DEBUG = True 25 constants.DEBUG = True
24 26
25 27
26 28
72 self.end_pos = None 74 self.end_pos = None
73 self.draw_color = pygame.color.Color('white') 75 self.draw_color = pygame.color.Color('white')
74 self.rect_color = pygame.color.Color('white') 76 self.rect_color = pygame.color.Color('white')
75 self.current_image = None 77 self.current_image = None
76 self.place_image_menu = None 78 self.place_image_menu = None
79 self.close_button = BoomLabel('Close', font=get_font(20, 'Vera.ttf'))
80 self.close_button.fg_color = (0, 0, 0)
81 self.close_button.bg_color = (0, 0, 0)
82 if self.state.current_detail:
83 w, h = self.state.current_detail.get_detail_size()
84 rect = pygame.rect.Rect(0, 0, w, h)
85 self.close_button.rect.midbottom = rect.midbottom
86 self.add(self.close_button)
77 87
78 def draw_mode(self): 88 def draw_mode(self):
79 self.mode = 'draw' 89 self.mode = 'draw'
80 90
81 def del_mode(self): 91 def del_mode(self):
83 self.start_pos = None 93 self.start_pos = None
84 self.end_pos = None 94 self.end_pos = None
85 95
86 def draw(self, surface): 96 def draw(self, surface):
87 if self.state.current_detail: 97 if self.state.current_detail:
88 w, h = self.state.current_detail.get_detail_size()
89 self.state.draw_detail(surface, None) 98 self.state.draw_detail(surface, None)
90 else: 99 else:
91 self.state.draw(surface, None) 100 self.state.draw(surface, None)
92 if self.mode == 'draw' and self.start_pos: 101 if self.mode == 'draw' and self.start_pos:
93 rect = pygame.rect.Rect(self.start_pos[0], self.start_pos[1], 102 rect = pygame.rect.Rect(self.start_pos[0], self.start_pos[1],