GROUP
Creates a group of objects to manage them together as a single entity. Grouping can be useful for persistency, copy/paste etc.
Attributes brief detailed show all inherited
Examples
You can use GROUP to load/save settings as a whole or to trigger an action upon any change in the group.

- <!-- some strings and params -->
- <STRING id="demo_string_1" default="1176" />
- <STRING id="demo_string_2" default="Compressor" />
- <PARAM id="demo_param_1" min="0" max="7" default="1" />
- <PARAM id="demo_param_2" min="0" max="7" default="5" />
- <!-- combine into group -->
- <GROUP id="data_group"
- object_ids="demo_string_1;demo_string_2;demo_param_1;demo_param_2"
- object_aliases="name;type;attack;release" />
- <!-- Note: object_aliases are NOT required for GROUP, but they allow to load and save data from other groups if the same aliases are used for compatible object types -->
- <!-- when any object in group changes, trigger action (change color) -->
- <ACTION_TRIGGER event_id="data_group.value_changed"
- script="color_widget.background_color.r = rand(0,1);
- color_widget.background_color.g = rand(0,1);
- color_widget.background_color.b = rand(0,1);"
- requires="color_widget.background_color.*" />
- <!-- layout to display/change values -->
- <TABLE>
- <TEXT value="demo_string_1: " />
- <TEXT_EDIT_BOX string_id="demo_string_1" width="100" change_on_type="true" />
- </TABLE_ROW>
- <TEXT value="demo_string_2: " />
- <TEXT_EDIT_BOX string_id="demo_string_2" width="100" change_on_type="true" />
- </TABLE_ROW>
- <TEXT value="demo_param_1: " />
- <PARAM_TEXT_EDIT_BOX param_id="demo_param_1" width="100" />
- </TABLE_ROW>
- <TEXT value="demo_param_2: " />
- <PARAM_TEXT_EDIT_BOX param_id="demo_param_2" width="100" />
- </TABLE_ROW>
- </TABLE>
- <!-- widget to display colored line -->
- <WIDGET id="color_widget" background_color="#DD0000" width="220" height="2" />
- <!-- buttons to load/save data as group -->
- <ROW>
- <SYSTEM_ACTION_BUTTON action_id="load_data" />
- <SYSTEM_ACTION_BUTTON action_id="save_data" />
- </ROW>
- <!-- actions to load/save data -->
- <ACTION type="DisplayObjectLoadDialog"
- id="load_data"
- object_id="data_group"
- file_types="*.xml"
- default_path="$PLUGIN_USER_DOCUMENTS_PATH$/Temp"
- applicative_type="DemoConfig"
- name="Load"
- />
- <ACTION type="DisplayObjectSaveDialog"
- id="save_data"
- object_id="data_group"
- file_types="*.xml"
- default_path="$PLUGIN_USER_DOCUMENTS_PATH$/Temp"
- applicative_type="DemoConfig"
- name="Save as..."
- />
If we take a look at "demo_data.xml" from the example above, we'll see that the data is saved like this:
- <?xml version="1.0" encoding="UTF-8"?>
- <Export applicative_type="DemoConfig" data_type="{0779F8E6-34E0-4DA5-9307-ECC37BE0FA8A}">
- <content release="5" attack="7" type="Delay" name="Echoboy"/>
- </Export>
Comments
Please, authorize to view and post comments.