05 - Make A Simple Amp Plugin UI With XPutty🔗
See video: https://youtu.be/no9pBAi-F1c
We create an X11, Cairo-based graphical user interface with Xputty.
Topics🔗
New requirements for X11🔗
- Declare as an X11 user interface:
ui:X11UI - Information about the host-provided parent window
- Interface for the to call the plugin UI event loops: idle interface
lv2:requiredFeature ui:idleInterfacelv2:extensionData ui:idleInterface
- Destructor to cleanup / deallocate plugin UI widgets
Construct the UI🔗
- Init Xputty:
main_init () - Create a top level widget:
create_window () - Create a dial widget inside the top level widget:
add_knob () - Link the dial to valueChangedCallback
- Add values and a value range:
set_adjustment () - Visualize:
widget_show_all ()
Set / Get dial🔗
- Set dial value via portEvent:
adj_set_value () - Get dial value in valueChangedCallback:
adj_get_value ()
Idle interface🔗
- Provide a static idle interface function
- Call
run_embedded () - Link idle interface function in extension data