S60 Application tabs

# This script creates tabs that let you switch between different applications # listbox app, listbox app and canvas app   import appuifw import e32 from graphics import *   # define application 1: listobx app  # create your icons for the listbox content   icon1 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 28, 29) icon2 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 40, 41) icon3 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 30, 31) icon4 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 32, 33) icon5 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 34, 35) icon6 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 36, 37) icon7 = appuifw.Icon(u"z:\\system\\data\\avkon.mbm", 38, 39)  # create your content list of your listbox including the icons to be used for each entry entries = [(u"Signal", icon1),            (u"Battery", icon2),            (u"Sirene", icon3),            (u"Waste", icon4),            (u"Helicopter", icon5),            (u"Train", icon6),            (u"Auto", icon7)]  # create the listbox callback handler def handler():     print "done"      # create an instance of appuifw.Listbox(), include the content list "entries" and the callback function "handler" app1 = appuifw.Listbox(entries,handler)    # define application 2: listbox app  # define the list of items as pop-up menu content L2 = [u"Stefan", u"Holger", u"Emil", u"Ludger"]  # create the listbox callback handler def handler_L2():     print "ola"  # create the pop-up menu  app2 = appuifw.Listbox(L2, handler_L2)     # define application 3: canvas application  def app_3():     global canvas     img=Image.new((176,208))     img.line((20,20,20,120),0xff00ee)     img.rectangle((40,60,50,80),0xff0000)     img.point((50.,150.),0xff0000,width=40)     img.ellipse((100,150,150,180),0x0000ff)     img.text((100,80), u'hello')          # define your redraw function (still belonging to app 3)      def handle_redraw(rect):     #global canvas         canvas.blit(img)     # define the canvas, include the redraw callback function     canvas =appuifw.Canvas(event_callback=None, redraw_callback=handle_redraw)     appuifw.app.body = canvas        def exit_key_handler():     app_lock.signal()  # create a tab handler that switches the application based on what tab is selected def handle_tab(index):     global lb     if index == 0:         appuifw.app.body = app1 # switch to application 1     if index == 1:         appuifw.app.body = app2 # switch to application 2     if index == 2:         app_3() # switch to application 3       # create an Active Object app_lock = e32.Ao_lock()  # create the tabs with its names in unicode as a list, include the tab handler appuifw.app.set_tabs([u"One", u"Two", u"Three"],handle_tab)  # set the title of the script appuifw.app.title = u'Tabs advanced'  # set app.body to app1 (for start of script) appuifw.app.body = app1   appuifw.app.exit_key_handler = exit_key_handler app_lock.wait()