Zrythm v2.0.0-DEV
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
inspector_plugin.h
1// SPDX-FileCopyrightText: © 2019, 2024 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
4#ifndef __GUI_WIDGETS_INSPECTOR_PLUGIN_H__
5#define __GUI_WIDGETS_INSPECTOR_PLUGIN_H__
6
7#include "common/utils/types.h"
8#include "gui/backend/backend/mixer_selections.h"
9#include "gui/backend/gtk_widgets/gtk_wrapper.h"
10
11#define INSPECTOR_PLUGIN_WIDGET_TYPE (inspector_plugin_widget_get_type ())
12G_DECLARE_FINAL_TYPE (
14 inspector_plugin_widget,
15 Z,
16 INSPECTOR_PLUGIN_WIDGET,
17 GtkBox)
18
19
24
25#define MW_PLUGIN_INSPECTOR MW_LEFT_DOCK_EDGE->plugin_inspector
26
27TYPEDEF_STRUCT_UNDERSCORED (PortsExpanderWidget);
28TYPEDEF_STRUCT_UNDERSCORED (PluginPropertiesExpanderWidget);
29TYPEDEF_STRUCT_UNDERSCORED (ColorAreaWidget);
30class MixerSelections;
31
36using InspectorPluginWidget = struct _InspectorPluginWidget
37{
38 GtkBox parent_instance;
39
41 PortsExpanderWidget * ctrl_ins;
42 PortsExpanderWidget * ctrl_outs;
43 PortsExpanderWidget * audio_ins;
44 PortsExpanderWidget * audio_outs;
45 PortsExpanderWidget * midi_ins;
46 PortsExpanderWidget * midi_outs;
47 PortsExpanderWidget * cv_ins;
48 PortsExpanderWidget * cv_outs;
49
50 ColorAreaWidget * color;
51};
52
60void
63 ProjectMixerSelections * ms,
64 bool set_notebook_page);
65
67inspector_plugin_widget_new (void);
68
72
73#endif
struct _InspectorPluginWidget { GtkBox parent_instance; PluginPropertiesExpanderWidget *properties; PortsExpanderWidget * ctrl_ins; PortsExpanderWidget * ctrl_outs; PortsExpanderWidget * audio_ins; PortsExpanderWidget * audio_outs; PortsExpanderWidget * midi_ins; PortsExpanderWidget * midi_outs; PortsExpanderWidget * cv_ins; PortsExpanderWidget * cv_outs; ColorAreaWidget *color;} InspectorPluginWidget
Inspector section for plugins.
void inspector_plugin_widget_show(InspectorPluginWidget *self, ProjectMixerSelections *ms, bool set_notebook_page)
Shows the inspector page for the given mixer selection (plugin).
A widget for selecting plugin_properties in the plugin inspector.
A TwoColExpanderBoxWidget for showing the ports in the InspectorWidget.