Sunday 30 September 2007

Mobile Camp London: The Astonishing Tribe

license rich graphical user interface middleware & tools for phone manufacturers
offices in sweden (hq), korea, san diego, tokyo, taipei

focus on user interface for mobiles

  • kastor: rendering engine -- images, rectangles, etc
  • cascades: UI design -- lists, etc
  • motion lab: UI authoring tool for cascades or kastor
proprietary tech, selling as a product
motion lab currently approaching release 2.0
cascades available as a library & headers for symbian, windows for mobile, etc.
can integrate into a third party app

UI driven architecture to enable a seamless UI combining lots of different services (MVC architecture)
background services such as MMS service, main menu service, media player service
UI layer controlled with XML config, separated from background services
generic callbacks to service code

can try out interface without back-end on real device
allows you to test performance of UI

also have a win32 viewer that allows you to preview on windows

define a control element and tie to a visual layout and a model using ids
can specify model using model element in XML, or using a dataService element that gets data from C
dataservice defines a class and the C code registers such a class
callbacks are basic tree access methods: get root data element, get child at index, get name, get property, etc.
whenever you change something in the data structure, you can tell cascades about add, remove or change and it will update the appropriate controls and visuals for you

can define a frame that maintains a history of pages
also allows you to define transitions between pages
pages can have commands that invoke handlers
handlers can be to services and also to functions within cascades itself (e.g. navigation between pages of a frame)

action elements define animations by acting on attributes of visual nodes

also have a testing framework for the UI
have expected frames and compare by pixel
also hopper test with random clicks

next release of motion lab will move further away from page design and towards flow design

No comments: