/*
- Copyright (C) 2000 Paul Davis
+ Copyright (C) 2000-2006 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- $Id$
*/
#ifndef __ardour_plugin_ui_h__
#include <ardour/types.h>
namespace ARDOUR {
- class AudioEngine;
class PluginInsert;
class Plugin;
class VSTPlugin;
class LadspaPluginUI : public PlugUIBase, public Gtk::VBox
{
public:
- LadspaPluginUI (ARDOUR::AudioEngine &, boost::shared_ptr<ARDOUR::PluginInsert> plug, bool scrollable=false);
+ LadspaPluginUI (boost::shared_ptr<ARDOUR::PluginInsert> plug, bool scrollable=false);
~LadspaPluginUI ();
gint get_preferred_height () { return prefheight; }
bool stop_updating(GdkEventAny*);
private:
- ARDOUR::AudioEngine &engine;
Gtk::HBox settings_box;
Gtk::HBox hpacker;
sigc::connection screen_update_connection;
void output_update();
- void build (ARDOUR::AudioEngine &);
- ControlUI* build_control_ui (ARDOUR::AudioEngine &, guint32 port_index, PBD::Controllable *);
+ void build ();
+ ControlUI* build_control_ui (guint32 port_index, PBD::Controllable *);
std::vector<string> setup_scale_values(guint32 port_index, ControlUI* cui);
void control_adjustment_changed (ControlUI* cui);
void parameter_changed (uint32_t, float, ControlUI* cui);
class PluginUIWindow : public ArdourDialog
{
public:
- PluginUIWindow (ARDOUR::AudioEngine &, boost::shared_ptr<ARDOUR::PluginInsert> insert, bool scrollable=false);
+ PluginUIWindow (boost::shared_ptr<ARDOUR::PluginInsert> insert, bool scrollable=false);
~PluginUIWindow ();
PlugUIBase& pluginui() { return *_pluginui; }
void resize_preferred();
+
+ virtual bool on_key_press_event (GdkEventKey*);
+ virtual bool on_key_release_event (GdkEventKey*);
private:
PlugUIBase* _pluginui;
- void plugin_going_away (ARDOUR::Redirect*);
+ void plugin_going_away ();
};
-
#ifdef VST_SUPPORT
class VSTPluginUI : public PlugUIBase, public Gtk::VBox
{
};
#endif // VST_SUPPORT
-#ifdef HAVE_COREAUDIO
-class AUPluginUI : public PlugUIBase
-{
- public:
- AUPluginUI (boost::shared_ptr<ARDOUR::PluginInsert>, boost::shared_ptr<ARDOUR::AUPlugin>);
- ~AUPluginUI ();
-
- gint get_preferred_height ();
- bool start_updating(GdkEventAny*) {return false;}
- bool stop_updating(GdkEventAny*) {return false;}
-
- private:
- boost::shared_ptr<ARDOUR::AUPlugin> au;
-};
-#endif // HAVE_COREAUDIO
-
#endif /* __ardour_plugin_ui_h__ */