Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

Korakot Chaovavanich http://korakot.stumbleupon.com

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS 

Gallery thumbnails

   1  
   2  from appuifw import *
   3  from graphics import Image
   4  from key_codes import *
   5  #from status import *
   6  #from e32db import format_time
   7  import os, e32
   8  
   9  dir = u'C:\\Nokia\\Images\\_PAlbTN\\'
  10  os.chdir(dir)
  11  fs = os.listdir('')
  12  mtime = os.path.getmtime
  13  # newest first
  14  fs.sort(lambda a,b: cmp(mtime(b), mtime(a)))
  15  
  16  app.body = canvas = Canvas()
  17  # show just 16 images
  18  for k in range(min(16, len(fs))):
  19      j, i = divmod(k, 4)
  20      im = Image.open(dir + fs[k])
  21      canvas.blit(im, target=(2+44*i, 2+34*j))
  22  canvas.rectangle([(0,0), (43,33)], 0xff, width=2)  # selected
  23  
  24  x, y, k = 0, 0, 0
  25  def move(dx, dy):
  26      global x, y, k
  27      canvas.rectangle([(44*x,34*y), (44*x+43,34*y+33)], 0xffffff, width=2)  
  28      k = 4*y + x + 4*dy + dx
  29      y, x = divmod(k, 4)
  30      canvas.rectangle([(44*x,34*y), (44*x+43,34*y+33)], 0xff, width=2)
  31      if 0 <= k < len(fs):
  32          app.title = u''+fs[k]
  33          #status_on(format_time(mtime(fs[k])))
  34  
  35  # move cursor and open image
  36  canvas.bind(EKeyUpArrow,   lambda: move(0,-1))
  37  canvas.bind(EKeyDownArrow, lambda: move(0,1))
  38  canvas.bind(EKeyLeftArrow, lambda: move(-1,0))
  39  canvas.bind(EKeyRightArrow,lambda: move(1,0))
  40  canvas.bind(EKeySelect,    lambda: Content_handler().open(dir[:-8]+fs[k]))
  41  
  42  # standard code for non-loop app
  43  lock = e32.Ao_lock()
  44  app.exit_key_handler = lock.signal
  45  lock.wait()

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS