summaryrefslogtreecommitdiff
path: root/gtk2_ardour/plugin_ui.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2015-03-06 19:05:29 -0500
committerDavid Robillard <d@drobilla.net>2015-03-07 14:04:45 -0500
commit0cb096a9782bd13188e7add156af0a4c5e846e86 (patch)
tree6ca3a259d810bd8cd96ec083eaebbb504a511602 /gtk2_ardour/plugin_ui.h
parent7eb849ad2142cab7291b8d2d79563e32c92a29d1 (diff)
Use Ardour widgets consistently in plugin UI.
Several reasons: * This previously looked horribly inconsistent. * The Gtk selector was broken for plugins with many presets, making it impossible to select presets. For whatever reason, the use of a menu fixes this bug. * Towards a hierarchical menu for banked presets.
Diffstat (limited to 'gtk2_ardour/plugin_ui.h')
-rw-r--r--gtk2_ardour/plugin_ui.h17
1 files changed, 8 insertions, 9 deletions
diff --git a/gtk2_ardour/plugin_ui.h b/gtk2_ardour/plugin_ui.h
index 58dc6ce2a3..6ae548d8fb 100644
--- a/gtk2_ardour/plugin_ui.h
+++ b/gtk2_ardour/plugin_ui.h
@@ -49,9 +49,10 @@
#include "ardour/plugin.h"
#include "ardour/variant.h"
-#include "automation_controller.h"
#include "ardour_button.h"
+#include "ardour_dropdown.h"
#include "ardour_window.h"
+#include "automation_controller.h"
namespace ARDOUR {
class PluginInsert;
@@ -115,15 +116,15 @@ class PlugUIBase : public virtual sigc::trackable, public PBD::ScopedConnectionL
/* UI elements that can subclasses can add to their widgets */
/** a ComboBoxText which lists presets and manages their selection */
- Gtk::ComboBoxText _preset_combo;
+ ArdourDropdown _preset_combo;
/** a label which has a * in if the current settings are different from the preset being shown */
Gtk::Label _preset_modified;
/** a button to add a preset */
- Gtk::Button add_button;
+ ArdourButton add_button;
/** a button to save the current settings as a new user preset */
- Gtk::Button save_button;
+ ArdourButton save_button;
/** a button to delete the current preset (if it is a user one) */
- Gtk::Button delete_button;
+ ArdourButton delete_button;
/** a button to bypass the plugin */
ArdourButton bypass_button;
/** a button to acquire keyboard focus */
@@ -132,10 +133,8 @@ class PlugUIBase : public virtual sigc::trackable, public PBD::ScopedConnectionL
Gtk::Expander description_expander;
/** an expander containing the plugin analysis graph */
Gtk::Expander plugin_analysis_expander;
- /** a label indicating the plugin latency */
- Gtk::Label latency_label;
/** a button which, when clicked, opens the latency GUI */
- Gtk::Button latency_button;
+ ArdourButton latency_button;
/** a button which sets all controls' automation setting to Manual */
ArdourButton automation_manual_all_button;
/** a button which sets all controls' automation setting to Play */
@@ -157,7 +156,7 @@ class PlugUIBase : public virtual sigc::trackable, public PBD::ScopedConnectionL
Gtk::Image* focus_in_image;
int _no_load_preset;
- virtual void preset_selected ();
+ virtual void preset_selected (ARDOUR::Plugin::PresetRecord preset);
void add_plugin_setting ();
void save_plugin_setting ();
void delete_plugin_setting ();