mirror of
https://github.com/cookiengineer/audacity
synced 2026-04-24 15:03:53 +02:00
Merge branch 'master' into wx3
This commit is contained in:
@@ -462,8 +462,21 @@ bool LV2Effect::SetHost(EffectHostInterface *host)
|
||||
{
|
||||
mHost = host;
|
||||
|
||||
// Allocate buffers for the port indices and the default control values
|
||||
int numPorts = lilv_plugin_get_num_ports(mPlug);
|
||||
|
||||
// Fail if we don't grok the port types
|
||||
for (int i = 0; i < numPorts; i++)
|
||||
{
|
||||
const LilvPort *port = lilv_plugin_get_port_by_index(mPlug, i);
|
||||
|
||||
if (!lilv_port_is_a(mPlug, port, gAudio) &&
|
||||
!lilv_port_is_a(mPlug, port, gControl))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// Allocate buffers for the port indices and the default control values
|
||||
float *minimumVals = new float [numPorts];
|
||||
float *maximumVals = new float [numPorts];
|
||||
float *defaultValues = new float [numPorts];
|
||||
@@ -1079,6 +1092,13 @@ bool LV2Effect::PopulateUI(wxWindow *parent)
|
||||
mUseGUI,
|
||||
true);
|
||||
|
||||
// Until I figure out where to put the "Duration" control in the
|
||||
// graphical editor, force usage of plain editor.
|
||||
if (GetType() == EffectTypeGenerate)
|
||||
{
|
||||
mUseGUI = false;
|
||||
}
|
||||
|
||||
if (mUseGUI)
|
||||
{
|
||||
mUseGUI = BuildFancy();
|
||||
|
||||
@@ -98,7 +98,7 @@ wxString LV2EffectsModule::GetPath()
|
||||
|
||||
wxString LV2EffectsModule::GetSymbol()
|
||||
{
|
||||
return XO("LV2 Effects Module");
|
||||
return XO("LV2 Effects");
|
||||
}
|
||||
|
||||
wxString LV2EffectsModule::GetName()
|
||||
@@ -227,7 +227,16 @@ wxArrayString LV2EffectsModule::FindPlugins(PluginManagerInterface & WXUNUSED(pm
|
||||
wxArrayString plugins;
|
||||
LILV_FOREACH(plugins, i, plugs)
|
||||
{
|
||||
plugins.Add(LilvString(lilv_plugin_get_uri(lilv_plugins_get(plugs, i))));
|
||||
const LilvPlugin *plug = lilv_plugins_get(plugs, i);
|
||||
|
||||
// Bypass Instrument (MIDI) plugins for now
|
||||
const LilvPluginClass *cls = lilv_plugin_get_class(plug);
|
||||
if (lilv_node_equals(lilv_plugin_class_get_uri(cls), LV2Effect::gInstrument))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
plugins.Add(LilvString(lilv_plugin_get_uri(plug)));
|
||||
}
|
||||
|
||||
return plugins;
|
||||
|
||||
@@ -44,6 +44,7 @@
|
||||
URI( gAudio, LV2_CORE__AudioPort ) \
|
||||
URI( gControl, LV2_CORE__ControlPort ) \
|
||||
URI( gInput, LV2_CORE__InputPort ) \
|
||||
URI( gInstrument, LV2_CORE__InstrumentPlugin ) \
|
||||
URI( gOutput, LV2_CORE__OutputPort ) \
|
||||
URI( gOptional, LV2_CORE__connectionOptional ) \
|
||||
URI( gEnumeration, LV2_CORE__enumeration ) \
|
||||
|
||||
38
src/effects/lv2/win_gtk.h
Normal file
38
src/effects/lv2/win_gtk.h
Normal file
@@ -0,0 +1,38 @@
|
||||
// Ubuntu (and probably others) do not ship this file
|
||||
// and we need it to embed the LV2 GUIs into a wxWindow.
|
||||
|
||||
/* ///////////////////////////////////////////////////////////////////////////
|
||||
// Name: wx/gtk/private/win_gtk.h
|
||||
// Purpose: native GTK+ widget for wxWindow
|
||||
// Author: Robert Roebling
|
||||
// Copyright: (c) 1998 Robert Roebling
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////// */
|
||||
|
||||
#ifndef _WX_GTK_PIZZA_H_
|
||||
#define _WX_GTK_PIZZA_H_
|
||||
|
||||
#define WX_PIZZA(obj) G_TYPE_CHECK_INSTANCE_CAST(obj, wxPizza::type(), wxPizza)
|
||||
#define WX_IS_PIZZA(obj) G_TYPE_CHECK_INSTANCE_TYPE(obj, wxPizza::type())
|
||||
|
||||
struct WXDLLIMPEXP_CORE wxPizza
|
||||
{
|
||||
// borders styles which can be used with wxPizza
|
||||
enum { BORDER_STYLES =
|
||||
wxBORDER_SIMPLE | wxBORDER_RAISED | wxBORDER_SUNKEN | wxBORDER_THEME };
|
||||
|
||||
static GtkWidget* New(long windowStyle = 0);
|
||||
static GType type();
|
||||
void move(GtkWidget* widget, int x, int y, int width, int height);
|
||||
void put(GtkWidget* widget, int x, int y, int width, int height);
|
||||
void scroll(int dx, int dy);
|
||||
void get_border(GtkBorder& border);
|
||||
|
||||
GtkFixed m_fixed;
|
||||
GList* m_children;
|
||||
int m_scroll_x;
|
||||
int m_scroll_y;
|
||||
int m_windowStyle;
|
||||
};
|
||||
|
||||
#endif // _WX_GTK_PIZZA_H_
|
||||
@@ -43,6 +43,7 @@ const static wxChar *kShippedEffects[] =
|
||||
wxT("SpectralEditShelves.ny"),
|
||||
wxT("StudioFadeOut.ny"),
|
||||
wxT("tremolo.ny"),
|
||||
wxT("vocalrediso.ny"),
|
||||
wxT("vocalremover.ny"),
|
||||
wxT("vocoder.ny"),
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user