KUIML
Blue Cat's User Interface Programming Language
PARAM_CONNECTION

Description

This element connects two parameters together: whenever one of the parameters is changed, the other one follows it. It is stronger than two PARAM_LINK elements connecting both parameters because it ensures that both parameters keep the same value.

Inherited Attributes

See Attributes Common to All Elements.

Specific Attributes

Name Value Type Default Value Description Comment V. Exp.

id1

param id

Empty

Identifier of the first parameter.

Mandatory

1.1

No

id2

param id

Empty

Identifier of the second parameter.

Mandatory

1.1

No

response_curve

response curve

linear

Response curve of the link: this enables the software to compute the value of the second parameter from the value of the first parameter. The inverse function is used to make the computation the other way round.


1.1

No

reverse

boolean

'false'

Reverse the response curve.

If the curve is normalized, the transfer function of the link is:

p2=1-f(p1),

else it is:

p2=max-f(p1)

(f being the response curve)

1.1

1.2

normalized

boolean

'false'

Links the normalized values of the parameters instead of the absolute values.

Set this parameter to true if you want to link the parameters relatively to their ranges, and not as absolute values. 'Normalized' values are set between 0 and 1, 0 corresponding to the minimum and 1 the maximum values of the parameters

1.2.2

No

enabled

boolean

'true'

Enables or disables the link.


1.1

1.2

mode

'absolute' or 'diff'

'absolute'

Chooses the operation mode of the link: in 'absolute' mode the value of the linked parameters are synchronized (according to other settings such as response curve). When diff mode is set, the link incrementally modifies the value of the parameters based on the modified parameter variations.

This parameter is exposed as an integer (0 matching to 'absolute' mode and 1 to 'diff' mode.

1.3.2

1.3.2

constraint

boolean

'true'

Enables or disables the constraint mode.

when in constraint mode, the source parameter changes may trigger a change back so that the connection acts as a constraint. When the constraint mode is off, change messages are never sent back to the source parameter (which may cause parameters not to be in perfect sync). This parameter is always disabled when the connection operates in diff mode.

1.3.2

No

Examples

A very practical example is when you want to force a value for a parameter (for example when you do not want to have a control for it). In this case just create a parameter with a single possible value and create a connection between this parameter and the one you want to constrain:

<?xml version="1.0" encoding="utf-8" ?>
<SKIN language_version="1.1">
	<!-- constraint on a parameter -->
	<PARAM type="real" name="constraint on input1" id="constraint" min="4" max="4" default="4" />
	<PARAM_CONNECTION id1="input1" id2="constraint" />
</SKIN>

The input1 parameter is now constrained to '4'.