# Resource Windows

Resources are edited by double-clicking on them in the main window. This pops up a new window containing controls to view and change the attributes of the resource. With the exception of the menu editor and the form editor (see their description later), these property editors share a common set of controls.

A special resource is the one holding application data such as icon caption (as shown by the Program Manager on Palm handhelds) and the version number. Since it wouldn't make sense to have either more or less than one of these, they are not shown in the main window's tree view. Instead, you can access it by double-clicking on the "root" of the list, the item that shows the icon caption (or "Application" by default).

Tree item for application-level resources

A resource window contains controls that show the current value of different aspects, or "properties" of the resource. The left-hand side of the window contains the names of the properties, and the right-hand side has the property controls. Press Alt and the underlined letter from the property label to move the input focus to the selected property's control.

Some resource windows are broken into multiple pages of property editors. Click on the tabs at the top of the window to change pages.

## Text properties

There are three types of textual properties in Guikachu: resource ID's, single-line small strings and multi-line, long texts.

String property editor

Single-line string properties are edited by simply focusing the text entry (by clicking on it, or pressing the Alt key and the underlined letter of the left-side label) and typing. Changes are instantly applied, which is very useful for widgets, since you can see the results in real time in the form preview.

Resource ID editor

Although they look just like any other string property, resource ID's are a special case because changes are not instantly applied. This is done to make validation possible: the uniqueness of each ID is automatically enforced by Guikachu when you press Enter in a resource ID field. If there is another resource with the same ID already existing in the current project, a message is shown and the previous value is restored.

Text property editor

Certain resources can have long, multi-line string properties. These are edited just like single-line strings, but your input can include Enter and Tab.

For user-visible strings (i.e. not ID's), you can use the \ character to include "escape sequences". The two most important notions are `\nnn` where `nnn` is an octal number, and `\xnn`, where `nn` is a hexadecimal number. Since Guikachu only accepts 7-bit input, you will need to use these escape codes to include characters from the Latin-1 set. Note that as of 1.2, `\r` is not yet supported by Guikachu.

## Numeric properties

Numeric property editor

Numeric properties can be edited either by entering the new value directly to the entry field, or by clicking the up/down arrows with the mouse. Since some properties only accept a certain range of values, the value entered may be changed after you set it to a value outside the valid range.

## References

A reference to a string resource

Some properties are references to other resources, for example the "Help" property of a dialog points to a string resource that will be displayed when the user taps the help icon. Setting these is done by selecting from the drop-down list of available resources of the appropriate type. Changing a resource's ID automatically changes every other property pointing to it.

To quickly access the referenced resource, click the Edit button next to the drop-down list. This pops up the editor window for the currently selected resource.

## Toggles

Simple toggle button

Properties that are of binary nature (i.e. those that can either be set or unset) can be changed by clicking on the yes/no toggle button. The button shows the current state of the property.

Compound property editor with manual/automatic switch

The size of some widgets can be either manually specified or calculated from its contents. Automatic size is the default. To enter a manual value, first check the check-box on the left of the size entry, and then change the value in the entry.

The first time you change an automatic value to a manual one, the manual value is initialized with the currently calculated value.

## Selecting from a list

Drop-down list

Some properties can only have values from a fixed set. Clicking on the current value pops up a list of options.

## String lists

A string list editor

Some properties, like the buttons of a dialog, contain a list of strings. To insert a new item after the currently selected string, click on the Add button, then type in the new string. To modify an existing item, select it from the list and in the new string. The Up and Down buttons change the position of the currently selected item.

The dialog editor also has a special Default button. Press this to mark the currently selected item as the default response.