cabbage3docs

Cabbage Widgets

While it’s possible to create custom widgets for Cabbage using any JavaScript/HTML framework, Cabbage also provides a built-in set of user-friendly widgets to simplify the process. These widgets can generally be divided into two categories: interactive and non-interactive.

Interactive widgets—such as sliders, buttons, and others—are accessible within a plugin host, allowing users to interact with them directly. On the other hand, non-interactive widgets, like group boxes or images, can only be manually controlled or manipulated via Csound. To facilitate communication between Csound and the graphical user interface, named software channels are used.

Each widget in Cabbage has a unique set of properties defined in JSON format. These properties can be modified at any time to adjust the appearance and behavior of the widget as needed. In the following manual pages, you’ll find detailed information about all the widgets available in Cabbage. Additionally, at the end of each entry, there is a sample .csd file that demonstrates how to use the widget in practice.