Jrmie Melchior Donatien Grolaux Jean Vanderdonckt Peter Van

  • Slides: 16
Download presentation
Jérémie Melchior, Donatien Grolaux, Jean Vanderdonckt, Peter Van Roy Jeremie. Melchior@uclouvain. be Researcher at

Jérémie Melchior, Donatien Grolaux, Jean Vanderdonckt, Peter Van Roy Jeremie. Melchior@uclouvain. be Researcher at BCHI, http: //www. isys. ucl. ac. be/bchi Université catholique de Louvain (BELGIUM) EICS 2009 - July 15

Outline - Motivations a. Multi-user interfaces b. Multi-device environments c. Multi-platform user interfaces d.

Outline - Motivations a. Multi-user interfaces b. Multi-device environments c. Multi-platform user interfaces d. Toolkit for distributed user interfaces e. Peer-to-Peer distribution f. Demonstration g. Future work

Motivations

Motivations

Multi-user interfaces a. Whenever b. Wherever System User Group User 1 User 2 User

Multi-user interfaces a. Whenever b. Wherever System User Group User 1 User 2 User NU

Multi-device environments Device 1 Device 2 Device ND User Group User 1 User 2

Multi-device environments Device 1 Device 2 Device ND User Group User 1 User 2 User NU

Multi-platform user interfaces CP 1 CP 2 CP N CP 1 CP 2 Device

Multi-platform user interfaces CP 1 CP 2 CP N CP 1 CP 2 Device 1 CP N Device 2 Device ND User Group User 1 User 2 User NU CP N

Toolkit for distributed user interfaces a. Three-layer structure : a. Application - user interfaces

Toolkit for distributed user interfaces a. Three-layer structure : a. Application - user interfaces b. Ext/Tk - toolkit for migration and adaptation c. Mozart - for the distribution layer Application Ext/Tk Mozart

Toolkit for distributed user interfaces a. Application layer : a. UI is dynamically migratable

Toolkit for distributed user interfaces a. Application layer : a. UI is dynamically migratable a. UI is dynamically adaptable

Toolkit for distributed user interfaces a. Ext/tk : 1°) Creation of the UI UI={Build

Toolkit for distributed user interfaces a. Ext/tk : 1°) Creation of the UI UI={Build window( name: window selector( name: selector items: ["Radiobuttons" "Listbox" "Menu"] curselection: 1 text: "Selector" action: proc{$} R={UI. selector get(curselection: $)} in {UI. selector set. Context((default#listbox#menu). R)} end ))} {UI. window show}

Toolkit for distributed user interfaces a. Ext/tk : 2°) Migration of the UI {Offer

Toolkit for distributed user interfaces a. Ext/tk : 2°) Migration of the UI {Offer {UI. selector get. Ref($)}} UI 2={Build window(name: window)} {UI 2. window show} {UI 2. window display({Obtain})}

Toolkit for distributed user interfaces a. Mozart : Multi-paradigm programming language a. Strongly dynamically

Toolkit for distributed user interfaces a. Mozart : Multi-paradigm programming language a. Strongly dynamically typed b. Procedural, Object-Orientation c. Functional, Logic and Symbolic programming d. Transparent distribution support a. Distributed network protocols are attached automatically to some of the native data types of OZ

Peer-to-Peer distribution a. Widget : Proxy + Renderer Site A Proxy W Renderer W

Peer-to-Peer distribution a. Widget : Proxy + Renderer Site A Proxy W Renderer W a. Proxy = stationary, functional core b. Renderer = distributed, user interaction Site A Site B Proxy W Renderer W

Demonstration a. Mozart :

Demonstration a. Mozart :

Demonstration a. Ext/tk

Demonstration a. Ext/tk

Future work a. Android support b. Transparent migration of the top level widget c.

Future work a. Android support b. Transparent migration of the top level widget c. Compatibility with Mozart 1. 4. 0 and newer d. High-level operations (window migration, widget copy, . . . )

Bibliography a. Donatien Grolaux, Transparent Migration and Adaptation in a Graphical User Interface Toolkit,

Bibliography a. Donatien Grolaux, Transparent Migration and Adaptation in a Graphical User Interface Toolkit, Ph. D. dissertation, Department of Computing Science and Engineering, Université catholique de Louvain, Sep. 2007.