Property DefinitionsProperty Definitions — How to augment or define a #GladePropertyDef |
Properties are introspected at load time and loaded into #GladePropertyDef structures. The behaviour of properties can be modified by the catalog and fake properties can be added for editing purposes. Here is an example of the xml form:
... <property id="frobnicate-mode" default="FOO_FROBNICATE_RED"> ... spec, tooltip etc <displayable-values> <value id="FOO_FROBNICATE_RED" name="Red"/> <value id="FOO_FROBNICATE_BLUE" name="Blue"/> ... values here </displayable-values> </property> ...
Properties of the 'property' tag:
id |
This is mandatory and specifies the property that we are modifying (or adding) |
name |
The name to be used in the interface. (if name is not specified; it defaults to the nickname of the #GParamSpec) |
since |
A 'major.minor' formed version describing the version of the owning catalog in which this
property was introduced; example: |
disabled |
Remove this property from this widget class and derived classes |
default |
A default value to be used for this property |
translatable |
For text properties, whether the property value is translatable in glade interfaces (this will enable the i18n dialog on text properties). Defaults to False. |
common |
If set to "True", the property will end up on the common tab even if its not a property of GtkWidgetClass. |
optional |
Whether this property is an optional property, this will make the property insensitive and add a check box to enable it (like width/height-request for example). |
optional-default |
If this is in fact an optional property; whether it is enabled by default. |
query |
If query is set; the property will be queried from the user in a dialog when adding the owning widget class instance to the project. |
save |
Whether to save this property to the glade file (default "True") |
visible |
Whether to show the property in the editor and reset dialog (default "True") |
custom-layout |
This is used to avoid loading this property in the editor when implementing a custom #GladeEditable that embeds the base #GladeEditorTable implementation, custom-layout properties will still show up in the reset dialog (default "False) |
ignore |
Whether to set the property on the object instance (via g_object_set_property or plugin override functions) when it changes in the editor (the value in the editor is the value saved). |
themed-icon |
Depicts a string property that is used for an icon from the theme. These will the appropriate editor. |
weight |
A numerical value to specify this properties position in the property editor. |
transfer-on-paste |
Used for packing properties; depicts packing properties that should follow the widget when pasted to a new container that supports the same properties. |
save-always |
Specifies that the property should be saved regardless of its value (properties at their default values are normally not saved). |
Child tags of the 'property' tag:
spec |
Specifies a function to be used to return a #GParamSpec for this property; this is used to add virtual properties to an object (like the "size" property on #GtkBox). |
tooltip |
The tooltip to be displayed in the property editor for this property. The tooltip defaults to the blurb of the associated #GParamSpec. |
visible-lines |
An integer value to specify how many lines will be shown for text properties in the editor (this doesnt really work because of the complexity of calculating size of rendered text; instead, just set this to 2 if you want the text property to be edited in a textview with a scrolled window as opposed to a simple text entry). |
displayable-values |
Allows you to specify user friendly strings for enum and flag values as shown in the example above, use the `id' property in the value tag to depict the real value name and the `name' property for the human readable one. |