diff options
author | Robin Gareus <robin@gareus.org> | 2015-03-23 14:20:17 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-03-23 14:20:17 +0100 |
commit | fb015b1be9d929d7dce18fdb6a033c8afad565c0 (patch) | |
tree | 16651f13bb3c79c2dae29d7ed6aa5cfdcf91c0eb /gtk2_ardour/rc_option_editor.cc | |
parent | 4b05417d2fac2bf42a7b6b89fdb121ba170570d7 (diff) |
fix “Denormal Dropdown” inconsistency
Diffstat (limited to 'gtk2_ardour/rc_option_editor.cc')
-rw-r--r-- | gtk2_ardour/rc_option_editor.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc index a3402072e8..b2cf7f0ae4 100644 --- a/gtk2_ardour/rc_option_editor.cc +++ b/gtk2_ardour/rc_option_editor.cc @@ -1885,20 +1885,34 @@ RCOptionEditor::RCOptionEditor () sigc::mem_fun (*_rc_config, &RCConfiguration::set_denormal_model) ); + int dmsize = 1; dm->add (DenormalNone, _("no processor handling")); FPU fpu; if (fpu.has_flush_to_zero()) { + ++dmsize; dm->add (DenormalFTZ, _("use FlushToZero")); + } else if (_rc_config->get_denormal_model() == DenormalFTZ) { + _rc_config->set_denormal_model(DenormalNone); } if (fpu.has_denormals_are_zero()) { + ++dmsize; dm->add (DenormalDAZ, _("use DenormalsAreZero")); + } else if (_rc_config->get_denormal_model() == DenormalDAZ) { + _rc_config->set_denormal_model(DenormalNone); } if (fpu.has_flush_to_zero() && fpu.has_denormals_are_zero()) { + ++dmsize; dm->add (DenormalFTZDAZ, _("use FlushToZero and DenormalsAreZero")); + } else if (_rc_config->get_denormal_model() == DenormalFTZDAZ) { + _rc_config->set_denormal_model(DenormalNone); + } + + if (dmsize == 1) { + dm->set_sensitive(false); } add_option (_("Audio"), dm); |