RAP Theme Editor

Contents

Abstract

The goal of this project is to provide an Eclipse Plug-In that handles RAP theme files. At the moment RAP theme files have to be edited in a normal text editor. That is fault-prone and definitely not userfriendly. So beside syntax checking the Theme Editor will provide a graphical user interface to change several properties and values for RAP themes in an easier way.

Widgets Tab

The widgets tab contains a "widget tree" with all supported RAP widgets. All possible properties can be set for the currently selected widget.

Using the widgets tab prevents the user from thinking about the structure of a theme file, including its inheritance. So the user can just set the properties for a desired widget.

Rules Tab

A list of all rules contained in a theme file is shown in the rules tab. The selector list of each rule can be altered by adding selectors or removing applied ones. Moreover the content of a rule can be changed in a way of adding, removing or editing properties according to the desired rule.

Source Tab

The source tab gives the chance of directly editing the content in the theme file. Therefore snytax coloring and content assists are provided for the following parts of a theme file: selectors, styles, states, variants and properties. Additionally, text hover information is shown if the mouse hovers such token.

Whenever the document's content has been changed, it is parsed again and accordingly problem markers are shown. These ones can either be of the type "error marker" if the parser has found a structural disorder, or of the type "warning marker" if the css structure is valid but there are parts, which are not supported by RAP, and so will be ignored.

Prospective Features

preview for all widgets in order to see directly an visual impact when changing a property

ability to register custom widgets in order to style them as well

element hierarchy in *.theme.xml files: This xml structure should correspond with the one in the widget tree in widget tab.

Button, which will start the RAP application instantly with the currently opened theme file

after some "refine" actions the theme file could be cluttered and unclear to read: so provide a feature that will clean up the theme file by removing unused rules or properties and merge rules with same selector list if possible