11#ifndef __GUI_WIDGETS_PLUGIN_BROWSER_H__
12#define __GUI_WIDGETS_PLUGIN_BROWSER_H__
17#include "gtk_wrapper.h"
19#define PLUGIN_BROWSER_WIDGET_TYPE (plugin_browser_widget_get_type ())
22 plugin_browser_widget,
24 PLUGIN_BROWSER_WIDGET,
27TYPEDEF_STRUCT_UNDERSCORED (ExpanderBoxWidget);
37#define MW_PLUGIN_BROWSER MW_RIGHT_DOCK_EDGE->plugin_browser
39enum class PluginBrowserTab
41 PLUGIN_BROWSER_TAB_COLLECTION,
42 PLUGIN_BROWSER_TAB_AUTHOR,
43 PLUGIN_BROWSER_TAB_CATEGORY,
44 PLUGIN_BROWSER_TAB_PROTOCOL,
47enum class PluginBrowserFilter
49 PLUGIN_BROWSER_FILTER_NONE,
50 PLUGIN_BROWSER_FILTER_INSTRUMENT,
51 PLUGIN_BROWSER_FILTER_EFFECT,
52 PLUGIN_BROWSER_FILTER_MODULATOR,
53 PLUGIN_BROWSER_FILTER_MIDI_EFFECT,
56enum class PluginBrowserSortStyle
58 PLUGIN_BROWSER_SORT_ALPHA,
59 PLUGIN_BROWSER_SORT_LAST_USED,
60 PLUGIN_BROWSER_SORT_MOST_USED,
70typedef struct _PluginBrowserWidget
72 GtkWidget parent_instance;
78 GtkBox * stack_switcher_box;
85 GtkBox * collection_box;
87 GtkBox * category_box;
88 GtkBox * protocol_box;
89 GtkScrolledWindow * plugin_scroll;
92 GtkListView * collection_list_view;
93 GtkListView * author_list_view;
94 GtkListView * category_list_view;
95 GtkListView * protocol_list_view;
97 GtkSearchEntry * plugin_search_entry;
98 GtkListView * plugin_list_view;
105 GtkBox * plugin_toolbar;
107 GtkToggleButton * toggle_instruments;
108 GtkToggleButton * toggle_effects;
109 GtkToggleButton * toggle_modulators;
110 GtkToggleButton * toggle_midi_modifiers;
112 GtkToggleButton * alpha_sort_btn;
113 GtkToggleButton * last_used_sort_btn;
114 GtkToggleButton * most_used_sort_btn;
119 GtkLabel * plugin_type_label;
120 GtkLabel * plugin_audio_label;
121 GtkLabel * plugin_midi_label;
122 GtkLabel * plugin_ctrl_label;
123 GtkLabel * plugin_cv_label;
140 GtkFilterListModel * plugin_filter_model;
141 GtkCustomSorter * plugin_sorter;
142 GtkSortListModel * plugin_sort_model;
156 int first_time_position_set;
157 gint64 first_time_position_set_time;
Item factory for column views.
Plugin collection used in the plugin browser.
API for Symap, a basic symbol map (string interner).