Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
plugin_properties_expander.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2020-2021 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __GUI_WIDGETS_PLUGIN_PROPERTIES_EXPANDER_H__
11#define __GUI_WIDGETS_PLUGIN_PROPERTIES_EXPANDER_H__
12
13#include "dsp/port.h"
14#include "gui/widgets/two_col_expander_box.h"
15
16#include <gtk/gtk.h>
17
18typedef struct _EditableLabelWidget EditableLabelWidget;
19typedef struct _PluginPresetSelectorWidget PluginPresetSelectorWidget;
20typedef struct Track Track;
21typedef struct Plugin Plugin;
22
23#define PLUGIN_PROPERTIES_EXPANDER_WIDGET_TYPE \
24 (plugin_properties_expander_widget_get_type ())
25G_DECLARE_FINAL_TYPE (
27 plugin_properties_expander_widget,
28 Z,
29 PLUGIN_PROPERTIES_EXPANDER_WIDGET,
30 TwoColExpanderBoxWidget);
31
42typedef struct _PluginPropertiesExpanderWidget
43{
44 TwoColExpanderBoxWidget parent_instance;
45
47 GtkLabel * name;
48
50 GtkLabel * type;
51
52 GtkComboBoxText * banks;
53 GtkListBox * presets;
54
55 GtkButton * save_preset_btn;
56 GtkButton * load_preset_btn;
57
60
61 gulong bank_changed_handler;
62 gulong pset_changed_handler;
64
68void
71 Plugin * pl);
72
76void
79 Plugin * pl);
80
85#endif
Ports that transfer audio/midi/other signals to one another.
void plugin_properties_expander_widget_setup(PluginPropertiesExpanderWidget *self, Plugin *pl)
Sets up the PluginPropertiesExpanderWidget for a Plugin.
void plugin_properties_expander_widget_refresh(PluginPropertiesExpanderWidget *self, Plugin *pl)
Refreshes each field.
A widget for selecting plugin_properties in the plugin inspector.
Plugin * plugin
Currently selected plugin.
The base plugin Inheriting plugins must have this as a child.
Definition plugin.h:74
Track to be inserted into the Project's Tracklist.
Definition track.h:186