IOBoxes
Creating IOBoxes
IOBoxes can be used to input (edit) and output (display) data.
There are 3 ways to create an IOBox:
- via the Node Browser (open it and type IOBox)
- via a double right-click in a patch
- via a middle-click while making a connection
IOBox flavors
There is an IOBox for each of the 4 primitive data-types:
- IOBox (Value Advanced)
- IOBox (String)
- IOBox (Color)
- IOBox (Enumerations)
All other data-types (like Transform, Texture,...) share one IOBox: - IOBox (Node)
Configuring IOBoxes
All IOBoxes have some settings available via config-pins in the Inspektor in common:
Name, Pin Visibility
- Descriptive Name
- Pin Visibility
are used when creating SubPatches.
Tag
- Tag
is a string that is not used by vvvv but users can write plugin that access this information.
Spreading
- SliceCount Mode
- Columns
- Rows
- Pages
are for spreading IOBoxes.
Depending on the SliceCount Mode setting the IOBox has its SliceCount determined by:
- Input: whatever is connected to its input
- ColsRowsPages: the product of Columns, Rows and Pages
- Maximum: whatever of the above is more
If set to ColsRowsPages the product of Columns by Rows determines how many slices are visible in the IOBox.
The actual number of slices represented by the IOBox is further determined by the number of visible slices taken by the number of Pages.
If there is more than one page you can use the SliceOffset to "scroll" through all the available slices.
Visual properties
- Font
- Size
- Show Grid
- Show SliceIndex
are used for modifying the display.
Displaying Data
In order to display the current value of any output pin in a patch, connect it to an IOBox.
Editing Data
In order to specify a constant value for a pin that can easily be tweaked, connect it to an IOBox.
Value
- Left-doubleclick to enter a new value (also try math formulas.
- Alt+Rightclick to reset to default value.
Real and Integer Values
Right-drag in the IOBox vertically to change its value and optionally modify the stepsize by pressing:
- SHIFT to divide by 10
- CTRL to divide by 10
- CTRLSHIFT to divide by 100
- ALTSHIFT to multiply by 10
- ALTCTRL to multiply by 10
- ALTCTRLSHIFT to multiply by 100
Boolean values
- 'Toggle': right-click to switch between 0 and 1.
- 'Bang': right-click to set 1 for one frame, else 0.
- 'Press': right-press to set 1 as long as mouse is pressed, else 0.
Slider
- Right-drag to change it.
Press F1 on an IOBox to get different readily configured options that you can copy-paste into your patches as needed.
Color
Right-drag:
- horizontally to change hue
- vertically to change brightness
- vertically and press CTRL to change saturation
- vertically and press SHIFT to change alpha
The Color IOBox has several 'Chooser Styles', see Inspektor:
- HSVA Field (default)
- RGBA Slider
- HSVA Slider
String
Right click in the IOBox to invoke the operation according to its subtype, see Inspektor:
- most cases simply open a field to enter text
- filename - open dialog will pop up
- directory - open dialog will pop up
Note that no matter what subtype the string is if you press CTRL while right clicking the file-open dialog will appear. Pressing SHIFT will invoke the directory-open dialog.
Enumeration
Right-click in the IOBox to open up the pull-down menu, choose an item with a left- or right-click.
The enumeration IOBox can also be switched into a 'List' mode. Open the Inspektor and change the Style configuration pin.
Green IOBoxes
IOBoxes tinted green are exposed for being controlled from the outside. Use CTRLK to toggle exposing. See Kontrolleur for more information.