# Copyright (c) 2008 Jurgen Scheible www.mobilenin.com # make sure you have created a folder named resources inside the python folder on the memory card of your phone. # copy the needed images (.jpg files) into that resources filder before running this script. import appuifw, e32, graphics, key_codes sound = 0 y_pos_contr = 100 running = 1 keyboard_state={} downs={} slidershaft = graphics.Image.open("e:\\Python\\resources\\background.jpg") makeMaskTemp = graphics.Image.open('e:\\Python\\resources\\controller_mask.jpg') makeMaskTemp.save("e:\\Python\\resources\\controller_mask.png", bpp=1) contrMask = graphics.Image.new(size = (76,117),mode = '1') contrMask.load("e:\\Python\\resources\\controller_mask.png") contr = graphics.Image.open("e:\\Python\\resources\\controller.jpg") makeMaskTemp = graphics.Image.open('e:\\Python\\resources\\button_mask.jpg') makeMaskTemp.save("e:\\Python\\resources\\button_mask.png", bpp=1) buttnMask = graphics.Image.new(size = (76,53),mode = '1') buttnMask.load("e:\\Python\\resources\\button_mask.png") buttnOn = graphics.Image.open("e:\\Python\\resources\\button_red.jpg") buttnOff = graphics.Image.open("e:\\Python\\resources\\button_dark.jpg") def handle_event(event): global downs,keyboard_state if event['type'] == appuifw.EEventKeyDown: code=event['scancode'] if not key_is_down(code): downs[code]=downs.get(code,0)+1 keyboard_state[code]=1 elif event['type'] == appuifw.EEventKeyUp: keyboard_state[event['scancode']]=0 def key_pressed(scancode): global downs if downs.get(scancode,0): downs[scancode]-=1 return True return False def key_is_down(scancode): global keyboard_state return keyboard_state.get(scancode,0) def handle_redraw(rect): global img img.blit(slidershaft, target = (0,0), source = (0,0),scale = 0 ) img.blit(contr, target=(96,y_pos_contr), source=(0,0), mask=contrMask, scale=0 ) if sound == 1: img.blit(buttnOn, target=(8,228), source=(0,0), mask=buttnMask, scale=0 ) else: img.blit(buttnOff, target=(8,228), source=(0,0), mask=buttnMask, scale=0 ) canvas.blit(img) def quit(): global running running = 0 canvas=appuifw.Canvas(event_callback=handle_event,redraw_callback=handle_redraw) appuifw.app.body=canvas appuifw.app.screen='full' appuifw.app.exit_key_handler=quit w,h = canvas.size img=graphics.Image.new((w,h)) handle_redraw(()) while running: e32.ao_yield() if key_is_down(key_codes.EScancodeDownArrow): if y_pos_contr < 195 : y_pos_contr = y_pos_contr + 5 handle_redraw(()) if key_is_down(key_codes.EScancodeUpArrow): if y_pos_contr > 15 : y_pos_contr = y_pos_contr - 5 handle_redraw(()) if key_pressed(key_codes.EScancodeSelect): if sound == 1: sound = 0 else: sound = 1 handle_redraw(())