Mercurial > pyntnclick
comparison tools/rect_drawer.py @ 238:2510e0b0e901
Add detail view support to helper
author | Neil Muller <neil@dip.sun.ac.za> |
---|---|
date | Fri, 27 Aug 2010 09:18:27 +0200 |
parents | 20998c650ce1 |
children | 0ea4661d134c |
comparison
equal
deleted
inserted
replaced
237:ae01c10497b3 | 238:2510e0b0e901 |
---|---|
82 self.mode = 'del' | 82 self.mode = 'del' |
83 self.start_pos = None | 83 self.start_pos = None |
84 self.end_pos = None | 84 self.end_pos = None |
85 | 85 |
86 def draw(self, surface): | 86 def draw(self, surface): |
87 self.state.draw(surface, None) | 87 if self.state.current_detail: |
88 w, h = self.state.current_detail.get_detail_size() | |
89 self.state.draw_detail(surface, None) | |
90 else: | |
91 self.state.draw(surface, None) | |
88 if self.mode == 'draw' and self.start_pos: | 92 if self.mode == 'draw' and self.start_pos: |
89 rect = pygame.rect.Rect(self.start_pos[0], self.start_pos[1], | 93 rect = pygame.rect.Rect(self.start_pos[0], self.start_pos[1], |
90 self.end_pos[0] - self.start_pos[0], | 94 self.end_pos[0] - self.start_pos[0], |
91 self.end_pos[1] - self.start_pos[1]) | 95 self.end_pos[1] - self.start_pos[1]) |
92 frame_rect(surface, self.draw_color, rect, self.draw_thick) | 96 frame_rect(surface, self.draw_color, rect, self.draw_thick) |
216 sys.exit(0) | 220 sys.exit(0) |
217 pygame.display.init() | 221 pygame.display.init() |
218 pygame.font.init() | 222 pygame.font.init() |
219 display = pygame.display.set_mode((1000, 600)) | 223 display = pygame.display.set_mode((1000, 600)) |
220 state = initial_state() | 224 state = initial_state() |
221 try: | 225 if len(sys.argv) < 3: |
222 state.set_current_scene(sys.argv[1]) | 226 try: |
223 state.do_check = None | 227 state.set_current_scene(sys.argv[1]) |
224 except KeyError: | 228 state.do_check = None |
225 print 'Invalid scene name' | 229 except KeyError: |
226 sys.exit(1) | 230 print 'Invalid scene name' |
231 sys.exit(1) | |
232 else: | |
233 try: | |
234 state.set_current_scene(sys.argv[1]) | |
235 state.set_current_detail(sys.argv[2]) | |
236 state.do_check = None | |
237 except KeyError: | |
238 print 'Invalid scene name' | |
239 sys.exit(1) | |
227 app = RootWidget(display) | 240 app = RootWidget(display) |
228 image = AppImage(state) | 241 image = AppImage(state) |
229 app.add(image) | 242 app.add(image) |
230 draw = make_button('Draw Rect', image.draw_mode, 0) | 243 draw = make_button('Draw Rect', image.draw_mode, 0) |
231 app.add(draw) | 244 app.add(draw) |