mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-24 07:27:44 +01:00
splash updating on gdk/quartz; more filtering of automatable AU parameters
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@3051 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
1e7a2a3e66
commit
97f40457bf
3 changed files with 17 additions and 12 deletions
|
|
@ -118,8 +118,9 @@ Splash::message (const string& msg)
|
|||
layout->set_markup (str);
|
||||
darea.queue_draw ();
|
||||
|
||||
Glib::RefPtr<Gdk::Window> win = get_window();
|
||||
Glib::RefPtr<Gdk::Window> win = darea.get_window();
|
||||
if (win) {
|
||||
win->process_updates (true);
|
||||
gdk_flush ();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,6 +53,7 @@ struct AUParameterDescriptor : public Plugin::ParameterDescriptor {
|
|||
AudioUnitElement element;
|
||||
float default_value;
|
||||
bool automatable;
|
||||
AudioUnitParameterUnit unit;
|
||||
};
|
||||
|
||||
class AUPlugin : public ARDOUR::Plugin
|
||||
|
|
|
|||
|
|
@ -155,6 +155,15 @@ AUPlugin::discover_parameters ()
|
|||
const CAAUParameter* param = param_info.GetParamInfo (d.id);
|
||||
const AudioUnitParameterInfo& info (param->ParamInfo());
|
||||
|
||||
const int len = CFStringGetLength (param->GetName());;
|
||||
char local_buffer[len*2];
|
||||
Boolean good = CFStringGetCString(param->GetName(),local_buffer,len*2,kCFStringEncodingMacRoman);
|
||||
if (!good) {
|
||||
d.label = "???";
|
||||
} else {
|
||||
d.label = local_buffer;
|
||||
}
|
||||
|
||||
d.scope = param_info.GetScope ();
|
||||
d.element = param_info.GetElement ();
|
||||
|
||||
|
|
@ -210,18 +219,12 @@ AUPlugin::discover_parameters ()
|
|||
d.integer_step = (info.unit & kAudioUnitParameterUnit_Indexed);
|
||||
d.toggled = (info.unit & kAudioUnitParameterUnit_Boolean);
|
||||
d.sr_dependent = (info.unit & kAudioUnitParameterUnit_SampleFrames);
|
||||
|
||||
d.automatable = !(info.flags & kAudioUnitParameterFlag_NonRealTime);
|
||||
d.automatable = !d.toggled &&
|
||||
!(info.flags & kAudioUnitParameterFlag_NonRealTime) &&
|
||||
(info.flags & kAudioUnitParameterFlag_IsWritable);
|
||||
|
||||
d.logarithmic = (info.flags & kAudioUnitParameterFlag_DisplayLogarithmic);
|
||||
|
||||
const int len = CFStringGetLength (param->GetName());;
|
||||
char local_buffer[len*2];
|
||||
Boolean good = CFStringGetCString(param->GetName(),local_buffer,len*2,kCFStringEncodingMacRoman);
|
||||
if (!good) {
|
||||
d.label = "???";
|
||||
} else {
|
||||
d.label = local_buffer;
|
||||
}
|
||||
d.unit = info.unit;
|
||||
|
||||
d.lower = info.minValue;
|
||||
d.upper = info.maxValue;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue