Mercurial > pyntnclick
comparison tools/rect_drawer.py @ 199:4821c290286d
Image loading
author | Neil Muller <neil@dip.sun.ac.za> |
---|---|
date | Thu, 26 Aug 2010 09:02:46 +0200 |
parents | e73d78d6dd83 |
children | 7bedca2376f5 |
comparison
equal
deleted
inserted
replaced
198:e73d78d6dd83 | 199:4821c290286d |
---|---|
10 from albow.root import RootWidget | 10 from albow.root import RootWidget |
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 | 13 from albow.controls import Button |
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 pygame.locals import SWSURFACE | 16 from pygame.locals import SWSURFACE |
16 import pygame | 17 import pygame |
17 from pygame.colordict import THECOLORS | 18 from pygame.colordict import THECOLORS |
18 | 19 |
19 from gamelib.state import initial_state | 20 from gamelib.state import initial_state |
69 self.rects = [] | 70 self.rects = [] |
70 self.start_pos = None | 71 self.start_pos = None |
71 self.end_pos = None | 72 self.end_pos = None |
72 self.draw_color = pygame.color.Color('white') | 73 self.draw_color = pygame.color.Color('white') |
73 self.rect_color = pygame.color.Color('white') | 74 self.rect_color = pygame.color.Color('white') |
75 self.curent_image = None | |
76 self.place_image_menu = None | |
74 | 77 |
75 def draw_mode(self): | 78 def draw_mode(self): |
76 self.mode = 'draw' | 79 self.mode = 'draw' |
77 | 80 |
78 def del_mode(self): | 81 def del_mode(self): |
103 print 'Rect %d : ' % num | 106 print 'Rect %d : ' % num |
104 for r in d[col]: | 107 for r in d[col]: |
105 print ' (%d, %d, %d, %d),' % (r.x, r.y, r.w, r.h) | 108 print ' (%d, %d, %d, %d),' % (r.x, r.y, r.w, r.h) |
106 print | 109 print |
107 | 110 |
108 def image_load(sef): | 111 def image_load(self): |
109 pass | 112 image_path= '%s/Resources/images/%s' % (script_path, self.state.current_scene.FOLDER) |
113 imagename = request_old_filename(directory=image_path) | |
114 try: | |
115 self.current_image = pygame.image.load(imagename) | |
116 self.place_image_menu.enabled = True | |
117 except pygame.error, e: | |
118 print 'Unable to load image %s' % e | |
110 | 119 |
111 def image_mode(self): | 120 def image_mode(self): |
112 self.mode = 'image' | 121 self.mode = 'image' |
113 self.start_pos = None | 122 self.start_pos = None |
114 self.end_pos = None | 123 self.end_pos = None |
171 draw = make_button('Draw Rect', image.draw_mode, 0) | 180 draw = make_button('Draw Rect', image.draw_mode, 0) |
172 app.add(draw) | 181 app.add(draw) |
173 load_image = make_button("Load image", image.image_load, 40) | 182 load_image = make_button("Load image", image.image_load, 40) |
174 app.add(load_image) | 183 app.add(load_image) |
175 add_image = make_button("Place image", image.image_mode, 80) | 184 add_image = make_button("Place image", image.image_mode, 80) |
185 add_image.enabled = False | |
176 app.add(add_image) | 186 app.add(add_image) |
187 image.place_image_menu = add_image | |
177 delete = make_button('Delete Objects', image.del_mode, 120) | 188 delete = make_button('Delete Objects', image.del_mode, 120) |
178 app.add(delete) | 189 app.add(delete) |
179 palette = AppPalette(image) | 190 palette = AppPalette(image) |
180 palette.rect.move_ip(810, 160) | 191 palette.rect.move_ip(810, 160) |
181 app.add(palette) | 192 app.add(palette) |