MXPA06009486A - Rendering a user interface - Google Patents

Rendering a user interface

Info

Publication number
MXPA06009486A
MXPA06009486A MXPA/A/2006/009486A MXPA06009486A MXPA06009486A MX PA06009486 A MXPA06009486 A MX PA06009486A MX PA06009486 A MXPA06009486 A MX PA06009486A MX PA06009486 A MXPA06009486 A MX PA06009486A
Authority
MX
Mexico
Prior art keywords
user interface
actors
attributes
actor
supplier
Prior art date
Application number
MXPA/A/2006/009486A
Other languages
Spanish (es)
Inventor
Geoffrey Butlin Stefan
Holder Clarey Nicholas
Benjamin Blaukopf Jacob
Carl Brook Nicholas
Original Assignee
Trigenix Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Trigenix Limited filed Critical Trigenix Limited
Publication of MXPA06009486A publication Critical patent/MXPA06009486A/en

Links

Abstract

There is provided a user interface which is defined by a plurality of actors and the attributes) that are associated with the actors. A renderer is used to render the user interface in accordance with the attributes of the actors. Changes in actor attributes, for example in response to a keypress, cause the user interface to be updated.

Description

SUPPLY OF A USER INTERFACE.
FIELD OF THE INVENTION The present invention relates to the provision of user interfaces and, in particular, to the provision of user interfaces for communication devices.
BACKGROUND OF THE INVENTION Communication devices, such as, for example, mobile telephones and PDAs, incorporate display screens of increasing size and resolution. Due to the limitations in the processing power of these devices, it is desirable to provide users with an attractive user interface that facilitates the use of the device and provides a rapid response to user inputs. For some devices, such as mobile phones, there is a significant interest in the provisioning of user interfaces that can be updated quickly and easily by the user and / or the network operator, so that the content to update the interfaces of user can be deployed to users. Known approaches tend to lack the required flexibility or require significant and undesirable levels of processing power.
SUMMARY OF THE INVENTION According to a first aspect of the present invention, a method is provided for supplying a user interface for a device, the method comprises the steps of providing a plurality of actors, each of the plurality of actors is associated with an element of user interface and comprises one or more attributes that define the respective actor; providing a supplier to receive one or more attributes of one or more of the plurality of actors and supplying the user interface according to the received attributes. According to a second aspect of the present invention, a data carrier comprising a computer executable code is provided to perform the method described above. According to a third aspect of the present invention, there is provided a device comprising: a user interface, the user interface comprises one or more user interface elements; a plurality of actors, each of the plurality of actors is associated with a user interface element and comprises one or more attributes; and a supplier, the supplier is configured, in use, to interpret the attributes associated with one or more of the plurality of actors and to supply the user interface accordingly.
BRIEF DESCRIPTION OF THE FIGURES Figure 1 shows a schematic representation of a system embodying the present invention; Figure 2 shows in more detail the structure and operation of the server 100; Figure 3 shows a schematic representation of software 400 for mobile devices 300; Figure 4 shows a schematic representation of the content toolset 200; and Figure 5 shows a schematic representation of a device comprising a user interface according to an embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION Now the invention will be described by way of illustration only and with respect to the appended figures, wherein Figure 1 shows a schematic representation of a system comprising the server 100, the set of content tools 200, the mobile devices 300, the operational support systems (OSS) 700, the content feeds 500 and the user interface sources (Ul) 600. In use, the server 100 communicates content and data data to the mobile devices 300, 301, ..., each of which comprises the software package 400. The server 100 is interfaced with OSS 700, where the OSS are those conventionally used to operate mobile networks, for example, billing, account management , etc. The server 100 is also interfaced with the content toolset 200: the content toolset receives data from the Ul 600 sources, 601, ..., and package the Ul data so that the server can transmit the packaged Ul data to the software packages 400 comprised within the mobile devices 300. The server receives the data from a plurality of content feeds, and these data are processed and packaged so that they can be sent to the software packages 400 or so that the mobile devices 300 can access the data using the software package 400. The system can be seen as divided into three separate domains: the Operator domain 50 comprises the systems and equipment operated by the mobile network operator (MNO); user domain 60 comprises a plurality of mobile devices and third-party domain 70 comprises content feeds and feeds Ul which can be controlled or operated by a number of different entities. Figure 2 shows in more detail the structure and operation of the server 100. The server 100 comprises the publishing component 110 and the content server component 150. The publishing component comprises the database 111, the import queue. 112, the interface of the content toolset 113, the user interface 114 and the catalog 115. In operation, the editorial component receives content from the content toolset in the interface of the content toolset. The content is presented in the form of a packet 210a, 20b, ..., (see below) comprising one or more Trigs and one or more Triglets. A Trig is a user interface for a mobile device, such as a mobile phone and a Triglet is a data file that can be used to extend or alter a Trig. If a packet comprises more than one Trig interface, then one of the Trig interfaces can be a master Trig interface from which other Trig interfaces are derived. Figure 3 shows a schematic representation of the software 400 for the mobile devices 300, which comprises a markup language provider 410, an update manager 420, a network communication agent 425, a resource manager 430, a system virtual files 435, an actor manager 440, a plurality of actors 445a, 445, ..., a native U 450 provider, a support manager 460, a Trig 465 interface manager, and a language parser marked 470. The software can operate using TrigML, which is an XML application and the markup language provider 410 supplies the TrigXML code for deployment on the mobile device 300. The markup language provider also uses the TrigML Syntactic Analyzer to syntactically analyze TrigML resources , display content on the device screen and control the replacement and visualization of the content on the device. The native Ul provider is used to deploy Ul components that can be deployed without the use of trigML, and to display error messages. The software 400 is provisioned and installed in a specific way on a device. Similarly, software updates are handled on a device in a specific way. The software can be provisioned in a more limited format, such as a self-contained application that supplies its integrated content only: that is, the software is provisioned with an integrated Trig interface but no Trig interfaces can be added later. The supplied Trig interface can be updated in the air. The Trig Interface Manager 465 presents an interface to the resource manager 430 and the marking language provider. This is responsible for the administration of the Trig interface in general. This includes: persistent knowledge of the Trig interface in use, changing the current Trig interface, selecting a Trig interface at startup time, selecting an additional Trig interface as a backup system for a corrupted Trig interface, maintaining the set of Trig interfaces installed, identify the location where a particular Trig interface is installed for the resource manager and read the update channel definitions of a Trig interface and configure the update manager appropriately. The resource manager provides an abstraction of the persistent storage in the device, that is, the storage of the files as real files, or as records in a database. The resource manager presents a file system interface to the markup language provider and the update manager. It is responsible for managing the path logic of the file, distinguishing between real resource files and actor attributes, mapping trajectories related to the Trig interface over absolute paths, connecting in interface with the Trig interface manager and providing a modification interface to the update manager. The Resource Manager is also responsible for ensuring the integrity of resources stored in persistent storage, especially against interruptions unpredictable such as loss of device power. The Resource Manager is not aware of the Trig interface currently used. Its interface is secure to the threads (since it can be used by both the Update Manager and the Supplier from different threads). The Update Manager handles the reception and application of Trigs and Triglets (interfaces and files). The Update Manager presents an interface to the Supplier and the Trig Interface Manager and is responsible for: the initiation of manual updates when so ordered by the Supplier; control and execute the automatic update channel when it is configured by the manager of the Trig interface; indicate the progress of a manual update and retrieve an Update after the unexpected loss of the network connection and / or power of the device. The update package format can be defined as a binary serialization of an XML schema. The Support Manager provides an interface for other components to report the occurrence of an event or error. Depending on the severity of the error, the Support Manager will log the event and / or cause an error message to appear. XML is a convenient data formatting language that is used to define the updated package format as well as the TrigML content. For reasons of storage efficiency and bandwidth, XML text is serialized in a binary representation. Both the updated packages and the TrigML fragments are analyzed syntactically by the same component, the parser of dialed language. Any additional use of XML in the software, you must use binary XML encoding and, therefore, reuse the parser. The Actors Manager 440 searches for the set of actors 445 present in the software. This is used by: the supplier when the content is sending events to an actor; actors who want to notify that an attribute value has changed and actors who wish to broadcast an event (see below). The software can comprise a multi-threaded application that runs a minimum of two threads, with possibilities for more threads, depending on how many and what kind of actors are included. The software runs mostly in a thread, which is referred to as the main thread. The main thread is used to run the supplier, which communicates synchronously with other components. The actors always have a synchronous interface with the Supplier. If an actor requires additional threads for its functionality, then it is the responsibility of the Actor to manage inter-thread communication. The use of a luminous message sending scheme is preferred to avoid unnecessary duplication of codes in cases where many actors require inter-thread communication. It will be understood that it is also possible to execute the software using a single thread operation. In addition to the main thread, the update manager runs a network thread. The network thread is used to download update packages and is separated from the main thread to allow the supplier to remain unaffected until the package has arrived. The Update Manager is responsible for handling the sending of inter-thread messages so that the Update Manager communicates synchronously with the Supplier and the Resource Manager when applying the changes defined in an Update Package. The memory allocation strategy of the software is platform-specific. On MIDP platforms, the software simply uses the system's stack and garbage collector for all of its memory requirements. Garbage collection is forced whenever a content replacement event occurs in an attempt to keep the garbage collection predictable and not suffer unexpected breaks in the operation. It is assumed that any memory allocation could fail, in which case the software will remove all references to objects, garbage collection, and restart, assuming that the software has already been successfully started and has provided the first page. On platforms based on C ++ -, a mix of pre-assignment and assignment-on-order will be made from the system's stack. All the memory required for the start is assigned over-order during startup, where any failure here causes the output (with message, if possible) of the software. After the successful start, the memory required to deliver the content document model is pre-assigned. The content provided is written to use less than a defined limit that is guaranteed to deliver. Additional use is made of RAM for several caches required for fast software operation. In cases where memory conditions are low, these caches will be released resulting in slow delivery performance from the software. Errors that are severe enough to disrupt the normal operation of the software should result in the appearance of a dialog box. The dialog box contains one of a small number of internationalized error messages (internationalized versions of these sequences can be collected in the software at the time of their construction, where the version of a sequence of errors for deployment is determined by the configuration of the relevant language in the device). To keep the number of messages to a minimum, only a few generic problems are covered. To allow support situations, the error dialog boxes also display an error code such as a 4-digit (16-bit) hexagonal sequence. Each error code is associated with a description text that can be used by support personnel to determine the nature of a problem with the software. Errors that occur in the software and that are not severe enough to stop their operation can be registered by the Support Manager component. The Support Manager can be questioned by the user by typing special key sequences. The Support Manager can also provide its error log to a server through an HTTP GET or POST method. The Supplier receives information regarding the key pressure. If there is no configured behavior, at the time of construction, for a key, it is sent as a TrigML content event to the current focused element. The content event is then handled as defined by the normal event processing logic of the TrigML. For example, if a key is pressed, a "key pressure" event is delivered to the Supplier with a parameter set for the relevant key. When the key is released, a "key pressure" event is delivered to the Supplier. If a key is held down for an extended period of time, a "long key pressure" event is delivered to the Supplier. At the time of release, both the "prolonged key pressure" and "key pressure" events are delivered to the Supplier. Whenever the software starts, it executes the following actions: • It checks and continues with the interrupted Update processing; • Reviews and processes the Updates that reside in the file system (either previously provisioned or installed in the file system through some other means); • If you know it, start the current Trig interface (which may be the last Trig interface that was run); • If a current Trig interface is not established, then a Trig interface that has been tagged as a Trig interface "by default" can be started. «In the absence of a default Trig interface, the first valid Trig interface will be selected in alphabetical order of name. A Trig interface is started by loading the name of the defined resource, start / default. The TrigML defined in start / default is analyzed syntactically as the new content for the content source node. The first time a Trig interface is run or the software after its installation, the Trig interface is started by loading the name of the start / first time resource. The software can register whether a Trig interface has been run or not in a file located in the top-level folder for that Trig interface. Depending on the platform used by the mobile device, the automatic start of the software can be established as a configuration option at the time of construction. In addition, the placement of the software in the background, after a self-start, can also be a configuration option at the time of construction. The user can be presented with a launcher as an application icon and by selecting it the software starts with a Trig interface specified by that launcher (this Trig interface can be indicated by an insole and / or launcher name). When a launcher is used to initiate a Trig interface, it is possible to specify a "point of entry" parameter. The parameter is a resource name of a file found in the "start" folder. This file is not used if the Trig interface has never been run before, in which case the file called "first time" is used. The software uses the content resource files stored in a virtual file system on the device. The file system is described as virtual since it can not be executed as a classic file system; however, all references to resources are file paths as if they were stored in a hierarchical folder and file system. Appendix A provides details regarding the arrangement of the filing system for one embodiment of the present invention. In addition, the software stores part or all of the following information: usage statistics; active user counts; state of the Trig Interface Manager; fragments of TrigLM and update channel definition (serialized as binary XML); PNG images; flat text, encoded as UTF-8 OTA and then stored in a specific platform encoding; other platform-specific resources, for example, tone files, background images, etc. The files in the file system can be changed, either when changing an actor attribute value, or when a file is replaced by a Triglet file. When the files in the / attrs directory change, the Supplier is notified immediately and the relevant branches of the content tree are updated and renewed. When images and text resources are changed, the Supplier behaves as if the affected resources are immediately recharged (it can be renewed either the entire content tree or just the affected branches). When TrigML fragments are changed, the Supplier behaves as if it were not notified and continues to display its current content, possibly outdated. This is to avoid the need for the software to persist in < include > (< include >) and history < load > (< load >) of the current content. Software 400 is provisioned to mobile devices in a specific device method. One or more Trig interfaces can be provisioned as part of the installation, for example, can be stored as an updated non-compressed package. At the time of startup, the package can be expanded and installed in the file system. Actors 445 are components that publish attribute values and handle and issue events. The actors communicate with the Supplier synchronously. If an actor needs asynchronous behavior, then it is the responsibility of the actor to manage and communicate with a thread external to the main thread of the Supplier. Actor attributes can be read as file references. Attributes are one of four types: a single simple value; a vector of simple values; a single structure of fields, each field with a simple value; or a vector of structures. Attributes can be referenced by an expression that uses an object annotation. element similar to many programming languages oriented to the object. < image res = "signallevels / { protocol. signalstrength.}." / > When needed as a file, an attribute is accessed through the / attrs folder. < text res = "/ attr / networ / name" > An Actor can handle messages by sending an event with the < throw > (< launch >). The events emitted by the actors can be delivered to the content tree as content events: these can be addressed in an element ID or "top part". The connection in interface with an actor is defined by the Actor Interface Definition file. This is an XML document that defines the attributes, types, field names, input events and parameters, and output events. The set of actors can be configured, at the time of its construction, for the software. Appendix B provides an exemplary list of some actors that can be used, along with associated functions or variables. Updates include a new Trig interface (a new or replacement Ul) or a Triglet file (a modification to an existing Trig interface) and can be seen as modifications to the software's file system. The Update Manager to determine what needs to be changed in the file system by reading a package. The update packages can be downloaded on the air through the software 400 using http, or other convenient transport mechanisms, wrapped in a specific device package format or pre-provisioned with the software installation itself. Updates can be activated through a number of means, which include: • That the software checks the update processing interrupted at startup time • That the software checks the update packages pre-installed at startup • Automatically as required configured by an Update Channel • User initiation • The device receives a special SMS. In order to successfully deliver the user interface of a mobile device, the markup language must have the following qualities: concise page definitions, consistent deployment rules, it must be able to run on a compact supplier, provide multiple content of arbitrary overlap and layer, event model, require color readjustment only of the areas of the screen that have to switch between pages of the ül, include hooks for the platform to read property values that receive events and send events, must be extendable and graphically flexible. TrigML provides these features and Appendix C gives an overview of the elements and attributes that provide the desired functionality. It is desirable that the cost of the re-marking of the Ul and the production of a continuous stream of updates be minimal. This is enabled by the provision of an efficient flow of information from creative processing through the transmission of data to users. A deposit, which is called a package, is used for the ül, the updates of the Ul and the templates for the participation of third parties. The packages contain all the necessary information for a third party to produce, test and deliver UI and marked updates. Figure 4 shows a schematic representation of the content toolset 200, which comprises the write environment 220, the test and simulation environment 230 and the maintenance environment 240. The package procedure comprises five processing steps: 1) The writing environment 220 provides the means to design the template for one or more ül and the update strategy for the Ul based on that template. 2) The maintenance environment 240 provides a rapid production of Ul and updates in a well-controlled and guided environment that can be assigned to content providers. 3) The maintenance environment 240, the "pre-flight" functionality allows the deployment administrator to review and tune the Ul and updates they receive from third parties. 4) Editorial component 110 provides Ul management and updates at the deployment point, including the assembly of new versions. 5) The editorial component 110 enables the automatic generation of updates of the maintenance content feeds. Many different Ul can be derived from a common base. Typically, the common base would execute most of the interface itself, and Trig interfaces derived from it would execute small variations on it, such as dialing. A Triglet text can be derived from a Trig interface, and it can override any of the resources of the Trig matrix interface it chooses (optionally you can enter your own resources). It should be noted that "resources" here also refers to TrigML, so that the behavior and deployment of a Trig interface can be modified through a Triglet text as easily as replacing a single image or piece of text. A package can comprise one or more interfaces Trig base (ie, a Trig interface that does not derive from any other Trig interface), one or more multiple Trig interfaces derived from a Trig base interface, a plurality of Triglets files derived from any of the Trig interfaces and a plurality of Triglets files derived from other Triglets files. Figure 5 shows a schematic representation of a device 800 comprising a user interface according to an embodiment of the present invention. The device comprises a screen 810 that displays the user interface 815 and the user interface means 820, which allow the user to interact with the user interface 815. A processor 830 executes the software that is stored within one or more media of storage 840 and one or more wireless communication interfaces 850 may be provided to allow communication with other devices and / or communication networks. One or more batteries 860 may be received to power the device, which may also comprise interfaces for receiving electrical power and / or communication cables. The nature of these components and the interfaces will depend on the nature of the device. It will be understood that said user interface can be executed within a mobile or cell phone equipment, but also applies to other portable devices such as digital cameras, personal digital organizers, digital music players, GPS navigators, portable gaming consoles, etc. . In addition, it also applies to other devices that comprise a user interface, such as a laptop or desktop. The user interface means may comprise a plurality of buttons, such as a numeric or alphanumeric keypad, or a touch screen or the like. One or more storage devices may comprise a form of non-volatile memory, such as a memory card, so that the stored data is not lost in the event of a loss of power. The ROM storage media can be provisioned to store data that does not need updating or change. Some RAM can be provided for temporary storage since faster response times support frequently used data caching. The device can also accept user removable memory cards and, optionally, hard disk drives can be used as a storage medium. The storage medium used will be determined by taking stock of the different requirements of device size, energy consumption, the volume of storage required, etc. Said device can be executed together with virtually any wireless communication network, for example, second generation digital mobile telephony networks (ie GSM, D-AMPS) called 2.5G networks (ie, GPRS, HSCSD, EDGE), third-generation WCDMA or CDMA-2000 networks and improvements to, and derivatives of, these and similar networks. Within buildings and enclosures, other technologies such as Bluetooth, IrDA or wireless LAN (either based on optical or radio systems) can also be used. USB connectivity and / or firewall can be provided to synchronize the data with other devices and / or to charge the battery. The computer software for executing the methods and / or for configuring a device, as described above, can be provided on data carriers such as floppy disks, CD-ROMS, DVDs, non-volatile memory cards, etc. This application claims the benefit of UK Patent Application No. 0403709.9, filed on February 19, 2004, the content of which is incorporated in the present invention by reference.
APPENDIX A For file paths that start with a V: / attrs Like the unix / bow directory, it stores the attribute values of actors for reference by the content when the attribute is needed as a file reference < actor > Each subdirectory of / attrs is the actor name < attribute > Each attribute is accessed as a node in the actors subdirectory < field > If the attribute is a structure, then the field name specifies which structure element to access < index > If the attribute is a vector attribute, then the index number specifies the index on the vector of the desired attribute < field > If the vector attribute is a collection of structures, then the field name again specifies the structure element.
File paths without a V are treated as relative to the current Trig interface, that is, each Trig interface is stored in its own folder hierarchy originating in a single folder.
APPENDIX B Attribute Actor Launcher Messages browser url SMS Number Message camera Inbox Profiles missed calis dialer number native app app id url Events APPENDIX C rows cois rowsplit System Events colsplit entry < grid list > focus focus initrow initcol keypress [key] rows cois rowsplit! keypress [key] colsplit longkeypress [key] longkeypress [key] < iptagen > moreUpChanged [NewValue] res frames index moreDownChanged [NewValue] < mozaico > res bdt bdb bdr bdl < text > res font size slant weight align color fxcolor multiline < paint if > res isvalid < teleprinter > repeatover < Battery level > res frames < signal intensity > res frames < phone status > res include < incl? go > res < parameter > ñame valué valuefrom bgcolour, color # 00000000 The fill color of bgcolor (transparent) element background. If not (editable) translucent alpha values are supported, then the alpha component will be rounded down to be fully transparent. bdcolour, color # 00000000 The color of the border for bdcolor (transparent) this element. The edge (modifiable) is drawn with a width of 1 pixel and just inside the frame. The edge can be completely or partially obscured by means of children's contents. If translucent alpha is not supported, then the alpha component is rounded up at full opacity. true Boolean clip If true, the painting of all children's content will be subject to the plot of this element, that is, children will not be able to "get out" of the plot. ' If it is false, the painting of all the child content will be held by the frame of the origin element. Clip = false should be used with caution as it encourages the supplier. Raise Boolean false If true, the (modifiable) painted this item is done last within your < layer > . If more than one item specifies raise = true, then all are painted at the end, but in their normal relative order If false, the painting of this element is done in the normal order, that of painting elements in the order of parsing . hasfocus false Boolean If true, this element will be given the initial focus for the layer that is in it. If more than one element specifies hasfocus = true, then the last one within each layer in doing so is given the initial focus. When new content is loaded with hasfocus = true, the focus is only given to this element if the new content is removing the element that previously had the focus. canfocus Boolean false If true, this item will be granted focus when navigating with the cursor keys. If it is false, this item will be ignored when navigating with the cursor keys. (Note: This replaces: <attribute when = focus />) < tigml > The root element of all documents contains content by TrigML. This has no visual appearance any element none none. attributes type default none Full screen layer, each layer < layer > He manages his own approach. The most layer contains content by elevated with a non-zero focusing element any visible _tqp gets pressures from any key listener and events sent to _top. attributes type omission The name or ID of this id sequence none element. This identifier is used in the objective attribute of the elements < launch > and < load > . If the same ID is used more than once, then the last loaded ID is used. < grid > Deposit element that visible, deposit accommodates your children in one contains content per grid. < grid > it's just for deployment. Use any any < grid list > or visible deposit < grid data > for any focus management. Listener Each child is placed in their cell, where that cell forms its originating frame, that is, children that go out of width / height as "*" will be the size of their cell. attributes type omission rows integer none The number of rows in the grid. It can not be zero. If rows and no cois are provided, then the grid is filled column by column. cois integer none The number of columns in the grid. It can not be zero. If cois and no rows are provided, then the grid is filled row by row. If both, rows and cois are provided, then the grid is also filled row by row. rowsplit list of heights of each integers row. If fewer values are provided than the per semi-row number, the last two values are repeated points or for each extra row. * s All rows that have * for a rowsplit share the available space colsplit the same as the rowsplit column width equivalent of rowsplit.
All Note that clip applies attributes to the entire grid, not to type: each cell in the visible grid. < grid data > Deposit element that visible, deposit treats each child contains content individually, or rows-value of children, as any any template for the visible deposit remaining cells in any grid. If the special variable listener $$ appears in the definition of the child template, then it is replaced with the current scan position in the set of values defined by the repeatover attribute. Only the number of children entering the grid is used, where the value of $$ is swept as the focus slides up and down the grid. attribute type omit repeatover No route Specifies the omission resource set. values to be used for The variable $$ in the proporelements of the child is due. If the resource path is a folder, then the list of resources found in that folder is used (in numerical order) for the set of values for $$. If the resource path is a file, then the file is treated as an index file that specifies a list of values for $$. All attributes in < grid > All attributes in type: visible fxcolor, color # 00000000 The color of the text fxcolour effect. The effect of the (modifiable) default text is a bright background. multiline Boolean False If false, the sequence is drawn on a single line. The width of this element will be by default to the length required to fit precisely the sequence. If true, the sequence will be drawn in multiple lines. The width will be by default the same as the source element. The default height will be the height required to precisely adjust the number of lines for the sequence. scrollable Boolean False If true, the view of the sequence can be swept (horizontally for a single line, vertically for multiple lines) when this element has focus. The focus is released when the end or beginning of the sequence is reached, or if a cursor key is pressed in the non-swept direction. editable Path of none If supplied, this resource element is a box of text resource that you can edit. The edition of being text is drawn in a written form specific to the device, and may involve the selected pressure to activate text editing. The edited value of the sequence < launch > Launch an event The listener events can be contains content by sent to other parties < parameter > any visible content tree or an actor. Attributes Type Omission when Name of None The listening event. If event and a parameter value value is provided in square parameter brackets [], then optional this will only be triggered when the event with that parameter value is received. For example: when = "keypress [_select]" is triggered in the keypress event when the parameter value is? select 'event Name of None The name of the event to throw event. If this is an Actor event, it will be automatically sent to the relevant Actor, without considering the specified objective. Use square brackets to specify an anonymous parameter value to accompany this event. Use < parameter > children to specify the parameters mentioned for this event. when the event is received with that parameter value. For example: when = "keypress [_select]" is triggered in the keypress event when the parameter value is? __ select name of none The name of the attribute in attribute visible source to be modified. The attribute must be able to be modified as indicated in the attribute boxes in this description. startvalue Same as None The value to use when the start attribute of the animation. that is being modified If not provided, the current value is used. The current value depends on all the previous listener elements that modify the same attribute and the value specified by the visible source itself. endvalue Same as None The value to use when the final attribute of the animation. that is being modified This value is reached at the time specified by the duration attribute. If not provided, the current value of the attribute is used in the same way as the previous startvalue attribute. duration Number 300 The duration in time it takes to animate the mili-second attribute mentioned from startvalue to endvalue, once. It can be seen that this is not the total duration of the animation that can be calculated by multiplying the number of repetitions by this duration. repeat integer - The number of times 1 = will repeat the animation always after the first time, that is, setting it to 1 will result in the animation being played twice. bounce Boolean false If true, the animation will play backwards in alternate repetitions. persist Boolean depends. If true, the animation will keep the endvalue as the modification until it is turned off by the event! ' If it is false, the animation will return to the startvalue at the end of the animation and keep that value until the animation is turned off. The default value depends on whether the event is a normal event or a version? ! 'of an event. If the event is normal, the default value is true. If the event is an event! ', the default value is false. consumes Boolean False If true, the propagation of the event will stop at this element. No additional listener will trigger the input event after this element. < paint if > It only paints its deposit content, visible if the resource exists contains content per specified or if any any path is valid. visible element Content follows any being in the tree, and listener continues to respond to events; however, no content is painted if the condition is not met. < paint if > It can be used instead of group. Attributes Type Omission res path of None The resource path for resource proves its existence. isvalid path of None The resource path for resource proves the validity (as a resource path). It can be appreciated that this one will not really check if the file exists, but simply if the route is a valid route or not. This is useful to test if $$ is in the range or not.

Claims (12)

NOVELTY OF THE INVENTION Having described the present invention, it is considered as a novelty and, therefore, the content of the following is claimed as a priority: CLAIMS
1. - A method for providing a user interface for a device, the method comprises the steps to: provide a plurality of actors, each of the plurality of actors is associated with a respective user interface element and comprises one or more attributes that they define the appearance and functionality of the respective actor and each of the actor attributes comprises markup language; provide a supplier to receive one or more attributes from one or more of the plurality of actors; and provide the user interface only according to the received actor attributes.
2. - The method according to claim 1, characterized in that if an actor attribute is updated, the update is received by the supplier and, consequently, the user interface is updated.
3. The method according to claim 2, characterized in that an actor attribute is updated in response to a user update.
4. - The method according to claim 2, characterized in that updating an attribute causes the format of a user interface element to change.
5. - The method according to claim 2, characterized in that updating an attribute causes a user interface element to move within the user interface.
6. The method according to any of the preceding claims, characterized in that the supplier is a provider of markup language.
7. A data carrier comprising a computer executable code for performing the method of any of claims 1 to 6. 8.- A device comprising a user interface, the user interface comprises one or more interface elements of user; a plurality of actors, each of the plurality of actors is associated with a respective user interface element and comprises one or more attributes that define the appearance and functionality of the respective actor; and each of the actor attributes comprises marking language; and a supplier, the supplier is configured, in use, to interpret the attributes associated with one or more of the plurality of actors and to supply the user interface solely in accordance with actor attributes. 9. The device according to claim 8, characterized in that the device further comprises display means for displaying the user interface. 10. The device according to claim 8 or 9, characterized in that the device further comprises a communication interface for receiving additional actors for use in the provision of the user interface. 11. The device according to any of claims 8 to 10, characterized in that the device further comprises storage means configured to store the plurality of actors. 12. The device according to any of claims 8 to 11, characterized in that the device further comprises processing means configured to operate the supplier.
MXPA/A/2006/009486A 2004-02-19 2006-08-18 Rendering a user interface MXPA06009486A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0403709.9 2004-02-19

Publications (1)

Publication Number Publication Date
MXPA06009486A true MXPA06009486A (en) 2007-04-10

Family

ID=

Similar Documents

Publication Publication Date Title
CA2555102C (en) Rendering a user interface
MXPA06009486A (en) Rendering a user interface
MXPA06009485A (en) Virtual file system
MXPA06009488A (en) Layered user interface
MXPA06009489A (en) Display of menu items in a user interface
MXPA06009487A (en) Data container for user interface content data