Changeset 41
- Timestamp:
- 09/27/07 18:18:09 (1 year ago)
- Files:
-
- mactorii.py (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
mactorii.py
r40 r41 26 26 from pyglet.window import mouse 27 27 from pyglet import font 28 29 renderables_key_func = lambda x : 0 28 30 29 31 files = None … … 117 119 global root 118 120 global selected 121 global renderables_key_func 119 122 120 123 if symbol == key.LEFT: … … 169 172 print "sorting by %s"%(hovering_over) 170 173 selected = images[hovering_over] 174 renderables_key_func = sort_func 171 175 update_renderables() 172 176 xoffset = 0 … … 227 231 global rows 228 232 229 item_sig = i tem[1][2]233 item_sig = images[item[0]][1] 230 234 231 235 mul = 113 … … 237 241 return score 238 242 243 def images_to_renderables(images): 244 """returns images.items() as a set, minus sig data, which is set to zero""" 245 return list( [(t[0],(t[1][0], t[1][2])) for t in images.items()]) 246 239 247 def cluster_renderables(): 240 248 """cluster renderables by their score against the 2 base lines""" 241 global images 242 global renderables 243 244 renderables = images.items() 245 246 # sort the renderables 247 renderables.sort(key=cluster_func) 248 249 #for i, r in enumerate(renderables): 250 249 global renderables_key_func 250 251 renderables_key_func = cluster_func 252 update_renderables() 251 253 252 254 def update_renderables(): … … 254 256 global renderables 255 257 global selected 256 257 renderables = images.items() 258 259 if selected != None: 260 renderables.sort(key=sort_func) 258 global renderables_key_func 259 260 if renderables: 261 n = images_to_renderables(images) 262 if len(n) > len(renderables): 263 # images were added, so just re-assign renderables 264 renderables = n 265 elif len(n) < len(renderables): 266 # images were removed, we need to remove them from renderables too 267 renderables = n 268 269 else: 270 renderables = images_to_renderables(images) 271 272 renderables.sort(key=renderables_key_func) 261 273 262 274 def sort_func(item): 263 275 assert selected != None 264 276 265 selected_sig = selected[ 2]266 item_sig = i tem[1][2]277 selected_sig = selected[1] 278 item_sig = images[item[0]][1] 267 279 268 280 return -signature_compare(selected_sig, item_sig) … … 316 328 317 329 # add to our dictionary 318 images[ file ] = (psurf, None,sig, wi.size)330 images[ file ] = (psurf, sig, wi.size) 319 331 320 332 def to_unicode(s): … … 472 484 if is_over_image(x,y,hoverx, hovery): 473 485 # draw some information 474 pix_size = font.Text(ft,"%dx%d"%(image[ 3][0], image[3][1]), x, y+config.text_yoffset)486 pix_size = font.Text(ft,"%dx%d"%(image[1][0], image[1][1]), x, y+config.text_yoffset) 475 487 pix_name = font.Text(ft, to_unicode(os.path.basename(filename)), x, y+config.text_yoffset+int(pix_size.height)) 476 488
