Quanta Tag Dialog Definition XML

Richard Moore, rich@kde.org

Introduction

This document describes the XML files used to define tags in the Quanta HTML editor. I believe the files are encoded as UTF 8. The files define both the attributes supported by a tag (I don't think this is used currently), and the layout and contents of the properties dialog Quanta shows for the tag.

Note: The encoding needs checking and should be specified in the XML files (rich)

Supported Elements and Attributes

The table below lists the elements currently supported in Quanta's tag definition files.

Element Description
TAGS Top level container tag
tag Defines the tag being described
attr Define an attribute for the tag
location Specifies the location of a field in the dialog
tooltip Specifies the tooltip for a field in the dialog
whatsthis Specifies the 'Whats This' help for a field in the dialog
label Create a label
text Define the text for a label or check box
items Container element for defining lists
item Defines an item in a list
spacer Add a spacer to the dialog layout grid

TAGS

This is the root tag of the XML document. It has no attributes and should contain the definition of a single tag.

Note: Can I change this tag to be lower case for consistency with the others? [Rich]

tag

Specifies the tag being defined.

Attribute Description
name Specifies the name of the tag being defined. [required]

attr

Specifies an attribute. This element occurs once of each defined attribute and defines the name and type, it also contains additional tags that specify how this attribute should be displayed etc.

Attribute Value Description
name   Specifies the name of the attribute being defined. [required]
type   Specifies the type of the attribute being defined. The value should be one of the following strings. [optional]
  input Says the field supports free text entries (text field). [default]
  check Says the value is boolean (check box).
  color Says the value is a colour.
  url Says the value is a url (Allows the user to specify a local file to refer to).
  list Says the value is an item from a specified list.

location

Specifies the position and size of a field in the dialog. This tag should occur once for each field in the dialog (ie. one for each attr and label tag). All the attributes must have integer values, and row/column indices start from 0.

Attribute Description
row Specifies the row in the dialog layout of a field or label. [required]
col Specifies the column in the dialog layout of a field or label. [required]
rowspan Specifies the number of rows a field should span. [optional]
colspan Specifies the number of columns a field should span. [optional]

label

Place a label in the dialog. The text is specified by a nested text tag.

text

Contains the text associated with a label. The label could be standalone, or it could be part of a widget such as a check box.

spacer

Defines a spacer in the layout of a tag dialog. The spacer orientation may be horizontal or vertical.

Attribute Value Description
orientation   Specifies the orientation of the spacer within the layout. [optional]
  h Horizontal [default]
  v Vertical

items

A container tag that groups together the items in a list, it contains a bunch of item tags.

item

Contains the text for an item in a list.

tooltip

A tag containing the tool tip text for a field in the dialog. Note: Currently only plain text is supported (you can't use any markup).

whatsthis

A tag containing the Whats This text for a field in the dialog. Note: Currently only plain text is supported (you can't use any markup).

Issues with the current format

For me, the current tag definition system has a number of problems: