Results

The results of my thesis are placed in the RESULTS section.

Add comment May 31st, 2007

Card Game Case

I created a ‘card game case’ on two different screen-sizes, which are interpolated.

Add comment April 25th, 2007

Structural interpolation result

I have some results for the structural interpolation, which is demonstrated in this movie. It’s also noticable that the rule-editor is changed, intervals can be specified by the rules near the interface.

Add comment April 12th, 2007

Interpolation runtime: Remappings work !

I have completed a new version of the uiml.net interpolation runtime. The three types of rules described in a previous post are working now. The remapping-system follows a slightly modified version of the working principle described in this post. The major differences/additions are:

  • The designer now generates two xslt transformation files: one for the vocabulary and one for the interface. This involves a double xslt transformation in the uiml.net renderer also.
  • The identifiers used to map part-elements on vocabulary d-classes are uniquely defined per part. The mapping between the part and the concrete interface element is decided trough an xslt-transformation. For example: part id=”part_1″ class=”part_1″ will be mapped trough d-class id=”part_1″ maps-to=”checkbutton” at size X, or trough id=”part_1″ maps-to=”label” at size Y.
  • The uiml.net renderer should be called like this: ./uiml.net.exe -uxsl interface_transform.uiml -voc vocabulary_transform.uiml

Example of a very simple mp3-player

  • A screenshot of the designer
  • A movie which shows the output in the uiml.net runtime with the intervals (conditions) automatically calculated by the designer. In this movie some annoying effects are noticeable: the horizontal ruler goes over the play button and the image comes above the listbox.
  • To solve this, some modifications on the conditions were made trough the built-in rule-editor.
  • A new movie shows the output after some modifications on the rule-conditions.
  • The vocabulary and interface xslt’s generated by the designer.

Structural interpolation

The runtime and designer doesn’t support structural interpolation so far. For example: a button should be a child of a panel at size X and a child of a tab-page at size Y. To support this, a new type of rule is necessary: ‘restructuring rules’. When the user modifies something at the structural level of the interface, a rule of this type should be created. The serialization of this type of rules into uiml and xslt is not clear for me right now.

Jan

Add comment April 9th, 2007

Uiml.Net interpolation Runtime: first results

I have completed the first runtime version for the uiml.net renderer today :-) . This runtime interprets the resizement and position changing rules of the design environment.

Working principle:

A short explanation of the working principle:

  • The width and height of the interface are stored in a device-model.xml file (= a configuration file for the interface)
  • The output of the designer is an xslt file which transforms the device_model.xml file into an uiml file. Examples of designer outcomes are: export2.uiml, export3.uiml, export4.uiml and export5.uiml
  • The uiml.net renderer has a new startup argument: ‘./uiml.net.exe -uxslt export3.uiml’. When the renderer is called like this, an xslt transformation will be executed before the document can be rendered.
  • When the interface is resized, device-model.xml is adjusted with the new width and height. The xslt transformation is executed on the new device-model and the outcoming uiml file is rerendered.

This working-principle involves that the rule-based interpolation system is embedded into uiml without affecting the uiml standards!

Example and movie:

In this example, an interface is created by the designer as shown on THIS screenshot, the export of this interface is given by export5.uiml. The result of export5.uiml in the renderer is demonstrated in this movie. Most of the rule-conditions were set by the designer automatically but some fine-tuning was necessary (some rules depend only on the height, larger intervals, …).

The next step will be the implementation of the mapping-rules in the uiml.net runtime. I’ve already pointed out how to do this, I just need some time to complete it.

1 comment April 7th, 2007

Rule serialization in uiml

Hello,

Today I’m going to serialize the rules into UIML. There are two places to store the rules: