Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
plugin_strip_expander.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2020, 2023 Alexandros Theodotou <alex@zrythm.org>
2// SPDX-License-Identifier: LicenseRef-ZrythmLicense
3
10#ifndef __GUI_WIDGETS_PLUGIN_STRIP_EXPANDER_H__
11#define __GUI_WIDGETS_PLUGIN_STRIP_EXPANDER_H__
12
14
15#include <gtk/gtk.h>
16
17#define PLUGIN_STRIP_EXPANDER_WIDGET_TYPE \
18 (plugin_strip_expander_widget_get_type ())
19G_DECLARE_FINAL_TYPE (
21 plugin_strip_expander_widget,
22 Z,
23 PLUGIN_STRIP_EXPANDER_WIDGET,
24 ExpanderBoxWidget);
25
26typedef struct Track Track;
27typedef struct _ChannelSlotWidget ChannelSlotWidget;
28
35typedef enum PluginStripExpanderPosition
36{
37 PSE_POSITION_CHANNEL,
38 PSE_POSITION_INSPECTOR,
39} PluginStripExpanderPosition;
40
45typedef struct _PluginStripExpanderWidget
46{
47 ExpanderBoxWidget parent_instance;
48
49 ZPluginSlotType slot_type;
50 PluginStripExpanderPosition position;
51
53 GtkScrolledWindow * scroll;
54 GtkViewport * viewport;
55
57 GtkBox * box;
58
60 GtkBox * strip_boxes[STRIP_SIZE];
61
64
68
72void
75 int slot);
76
80void
82
86void
89 ZPluginSlotType type,
90 PluginStripExpanderPosition position,
91 Track * track);
92
97#endif
Expander box.
ZPluginSlotType
#define STRIP_SIZE
Number of plugin slots per channel.
Definition audio.h:76
void plugin_strip_expander_widget_refresh(PluginStripExpanderWidget *self)
Refreshes each field.
void plugin_strip_expander_widget_redraw_slot(PluginStripExpanderWidget *self, int slot)
Queues a redraw of the given slot.
void plugin_strip_expander_widget_setup(PluginStripExpanderWidget *self, ZPluginSlotType type, PluginStripExpanderPosition position, Track *track)
Sets up the PluginStripExpanderWidget.
A TwoColExpanderBoxWidget for showing the ports in the InspectorWidget.
GtkBox * box
VBox containing each slot.
GtkScrolledWindow * scroll
Scrolled window for the vbox inside.
Track to be inserted into the Project's Tracklist.
Definition track.h:177