[View]  [Edit]  [Lock]  [References]  [Attachments]  [History]  [Home]  [Changes]  [Search]  [Help] 

[Mobile] MobileThread

A MobileThread is a process that holds an "active" coordinator with visual focus.

Uploaded Image: MobileThread.png

You can think a MobileThread as a visual Tab in any web browser. It is posible to visualize and manipulate different things (in parallel).
A thread defines a point of view of the system and let the user select the tools to access model objects.
The user can select a thread to access the system and perform works on objects using a set of tools available/shown by the thread on screen.

The lifetime of a thread use to be the same of the application (a thread can be added/removed to/from application dynamically, but it is not recommended because the user will be disappointed if he/she can't find the thread at a time using the application).

A thread has a set of coordinators to offer the user the best set of tools to handle model/domain objects in different contexts of application.
A thread instance define the coordinator to be presented at application startup and switch coordinators to let the user have the best experience & tools to handle model objects at any time.

A thread instance has an image and a name, used to set UI buttons on screen (to let the user activate thread of interest).


Uploaded Image: UnderConstructionLine.gif
coordinator stateTrack the state of the tools and UI elements to access model objects through a coordinator instance.
coordinator providerMaintain a set of coordinators to mutate UI and tools presented to the user for all application contexts under the point of view defined by the thread.
application(private) maintain a reference to MobileApplication instance as delegate.