summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2006-08-31 19:17:00 +0000
committerDavid Robillard <d@drobilla.net>2006-08-31 19:17:00 +0000
commit017e16c530bb1a9f186aa81893089dc79b4ddc24 (patch)
tree0b4343d96214148623cf631c4cd513026de69a6e /gtk2_ardour
parent0c3d8378f3a3a7333f3095e67050b62022281275 (diff)
Merged with trunk R879
git-svn-id: svn://localhost/ardour2/branches/midi@880 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/SConscript8
-rw-r--r--gtk2_ardour/ardour.menus1
-rw-r--r--gtk2_ardour/ardour_ui.h1
-rw-r--r--gtk2_ardour/ardour_ui_ed.cc3
-rw-r--r--gtk2_ardour/ardour_ui_options.cc23
-rw-r--r--gtk2_ardour/editor_audio_import.cc14
-rw-r--r--gtk2_ardour/plugin_selector.cc18
-rw-r--r--gtk2_ardour/plugin_selector.h4
-rw-r--r--gtk2_ardour/redirect_box.cc4
-rw-r--r--gtk2_ardour/sfdb_ui.cc6
10 files changed, 53 insertions, 29 deletions
diff --git a/gtk2_ardour/SConscript b/gtk2_ardour/SConscript
index aaa686d246..8a1fd22ff2 100644
--- a/gtk2_ardour/SConscript
+++ b/gtk2_ardour/SConscript
@@ -61,7 +61,7 @@ skipped_files=Split("""
connection_editor.cc
""")
-coreaudio_files=Split("""
+audiounit_files=Split("""
au_pluginui.cc
""")
@@ -224,9 +224,9 @@ if env['VST']:
extra_sources += vst_files
gtkardour.Append (CCFLAGS="-DVST_SUPPORT", CPPPATH="#libs/fst")
-if gtkardour['COREAUDIO']:
- extra_sources += coreaudio_files
- gtkardour.Append(CCFLAGS='-DHAVE_COREAUDIO')
+if gtkardour['AUDIOUNITS']:
+ extra_sources += audiounit_files
+ gtkardour.Append(CCFLAGS='-DHAVE_AUDIOUNITS')
gtkardour.Append(LINKFLAGS='-framework Carbon')
gtkardour.Merge([libraries['appleutility']])
diff --git a/gtk2_ardour/ardour.menus b/gtk2_ardour/ardour.menus
index ab87fbb3ef..0f1f741c30 100644
--- a/gtk2_ardour/ardour.menus
+++ b/gtk2_ardour/ardour.menus
@@ -71,6 +71,7 @@
<menuitem action='ToggleAutoReturn'/>
<menuitem action='ToggleClick'/>
<menuitem action='toggle-follow-playhead'/>
+ <menuitem action='ToggleVideoSync'/>
</menu>
</menu>
<menu name='Edit' action='Edit'>
diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h
index d0e90c42be..fdaa2d74ca 100644
--- a/gtk2_ardour/ardour_ui.h
+++ b/gtk2_ardour/ardour_ui.h
@@ -377,6 +377,7 @@ class ARDOUR_UI : public Gtkmm2ext::UI
void sync_option_changed ();
void toggle_time_master ();
+ void toggle_video_sync ();
enum ShuttleBehaviour {
Sprung,
diff --git a/gtk2_ardour/ardour_ui_ed.cc b/gtk2_ardour/ardour_ui_ed.cc
index 2fe34127dc..5af62db99f 100644
--- a/gtk2_ardour/ardour_ui_ed.cc
+++ b/gtk2_ardour/ardour_ui_ed.cc
@@ -287,7 +287,8 @@ ARDOUR_UI::install_actions ()
ActionManager::session_sensitive_actions.push_back (act);
ActionManager::transport_sensitive_actions.push_back (act);
- act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Master"), mem_fun(*this, &ARDOUR_UI::toggle_time_master));
+ ActionManager::register_toggle_action (transport_actions, X_("ToggleVideoSync"), _("Sync startup to video"), mem_fun(*this, &ARDOUR_UI::toggle_video_sync));
+ act = ActionManager::register_toggle_action (transport_actions, X_("ToggleTimeMaster"), _("Time master"), mem_fun(*this, &ARDOUR_UI::toggle_time_master));
ActionManager::session_sensitive_actions.push_back (act);
act = ActionManager::register_action (common_actions, X_("ToggleRecordEnableTrack1"), _("Toggle Record Enable Track1"), bind (mem_fun(*this, &ARDOUR_UI::toggle_record_enable), 0U));
diff --git a/gtk2_ardour/ardour_ui_options.cc b/gtk2_ardour/ardour_ui_options.cc
index 665c92d264..205180a344 100644
--- a/gtk2_ardour/ardour_ui_options.cc
+++ b/gtk2_ardour/ardour_ui_options.cc
@@ -43,7 +43,8 @@ ARDOUR_UI::setup_config_options ()
std::vector<Glib::ustring> groups;
groups.push_back("options");
groups.push_back("Editor");
-
+ groups.push_back("Transport");
+
struct {
char* name;
bool (Configuration::*method)(void) const;
@@ -69,6 +70,7 @@ ARDOUR_UI::setup_config_options ()
{ "MeterHoldShort", &Configuration::get_meter_hold_short, 'r' },
{ "MeterHoldMedium", &Configuration::get_meter_hold_medium, 'r' },
{ "MeterHoldLong", &Configuration::get_meter_hold_long, 'r' },
+ { "ToggleVideoSync", &Configuration::get_use_video_sync, 't' },
{ 0, 0, 0 }
};
@@ -77,8 +79,13 @@ ARDOUR_UI::setup_config_options ()
Glib::RefPtr<Action> act = ActionManager::get_action (i->c_str(), options[n].name);
if (act) {
Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
- if (options[n].act_type == 't' || (options[n].act_type == 'r' && (Config->*(options[n].method))()))
- tact->set_active ((Config->*(options[n].method))());
+ if (options[n].act_type == 't' || options[n].act_type == 'r') {
+ if ((Config->*(options[n].method))()) {
+ tact->set_active (true);
+ } else {
+ tact->set_active (false);
+ }
+ }
continue;
}
}
@@ -237,6 +244,16 @@ ARDOUR_UI::toggle_punch_out ()
toggle_session_state ("Transport", "TogglePunchOut", &Session::set_punch_out, &Session::get_punch_out);
}
+ void
+ARDOUR_UI::toggle_video_sync()
+{
+ Glib::RefPtr<Action> act = ActionManager::get_action ("Transport", "ToggleVideoSync");
+ if (act) {
+ Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);
+ Config->set_use_video_sync (tact->get_active());
+ }
+}
+
void
ARDOUR_UI::toggle_editing_space()
{
diff --git a/gtk2_ardour/editor_audio_import.cc b/gtk2_ardour/editor_audio_import.cc
index 8efdca2dd4..fdd680beb2 100644
--- a/gtk2_ardour/editor_audio_import.cc
+++ b/gtk2_ardour/editor_audio_import.cc
@@ -82,11 +82,11 @@ Editor::bring_in_external_audio (ImportMode mode, AudioTrack* track, jack_nframe
switch (sfdb.run()) {
case SoundFileOmega::ResponseImport:
- do_import (sfdb.get_paths(), sfdb.get_split(), mode, track, pos, prompt);
+ do_import (sfdb.get_paths(), sfdb.get_split(), sfdb.get_mode(), track, pos, prompt);
break;
case SoundFileOmega::ResponseEmbed:
- do_embed (sfdb.get_paths(), sfdb.get_split(), mode, track, pos, prompt);
+ do_embed (sfdb.get_paths(), sfdb.get_split(), sfdb.get_mode(), track, pos, prompt);
break;
default:
@@ -274,12 +274,12 @@ Editor::embed_sndfile (Glib::ustring path, bool split, bool multiple_files, bool
sources.push_back(source);
}
- catch (failed_constructor& err) {
- error << string_compose(_("could not open %1"), path) << endmsg;
- goto out;
- }
+ catch (failed_constructor& err) {
+ error << string_compose(_("could not open %1"), path) << endmsg;
+ goto out;
+ }
- ARDOUR_UI::instance()->flush_pending ();
+ ARDOUR_UI::instance()->flush_pending ();
}
if (sources.empty()) {
diff --git a/gtk2_ardour/plugin_selector.cc b/gtk2_ardour/plugin_selector.cc
index 69f6f56690..8a52e8587f 100644
--- a/gtk2_ardour/plugin_selector.cc
+++ b/gtk2_ardour/plugin_selector.cc
@@ -92,7 +92,7 @@ PluginSelector::PluginSelector (PluginManager *mgr)
}
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
aumodel = ListStore::create(aucols);
au_display.set_model (aumodel);
au_display.append_column (_("Available plugins"), aucols.name);
@@ -151,7 +151,7 @@ PluginSelector::PluginSelector (PluginManager *mgr)
}
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
notebook.pages().push_back (TabElem (auscroller, _("AudioUnit")));
#endif
@@ -171,7 +171,7 @@ PluginSelector::PluginSelector (PluginManager *mgr)
}
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
au_display.signal_button_press_event().connect_notify (mem_fun(*this, &PluginSelector::row_clicked));
au_display.get_selection()->signal_changed().connect (mem_fun(*this, &PluginSelector::au_display_selection_changed));
#endif
@@ -187,7 +187,7 @@ PluginSelector::PluginSelector (PluginManager *mgr)
vst_refiller ();
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
au_refiller ();
#endif
@@ -219,7 +219,7 @@ PluginSelector::set_correct_focus()
}
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
cp--;
if (cp == 0) {
@@ -330,7 +330,7 @@ PluginSelector::vst_display_selection_changed()
#endif //VST_SUPPORT
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
void
PluginSelector::_au_refiller (void *arg)
@@ -374,7 +374,7 @@ PluginSelector::au_display_selection_changed()
current_selection = ARDOUR::AudioUnit;
}
-#endif //HAVE_COREAUDIO
+#endif //HAVE_AUDIOUNIT
void
PluginSelector::use_plugin (PluginInfoPtr pi)
@@ -413,7 +413,7 @@ PluginSelector::btn_add_clicked()
#endif
break;
case ARDOUR::AudioUnit:
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
row = *(au_display.get_selection()->get_selected());
name = row[aucols.name];
pi = row[aucols.plugin];
@@ -451,7 +451,7 @@ PluginSelector::btn_update_clicked()
#ifdef VST_SUPPORT
vst_refiller ();
#endif
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
au_refiller ();
#endif
}
diff --git a/gtk2_ardour/plugin_selector.h b/gtk2_ardour/plugin_selector.h
index d71203131c..73c3008e64 100644
--- a/gtk2_ardour/plugin_selector.h
+++ b/gtk2_ardour/plugin_selector.h
@@ -110,7 +110,7 @@ class PluginSelector : public ArdourDialog
void vst_display_selection_changed();
#endif // VST_SUPPORT
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
// page 3
struct AUColumns : public Gtk::TreeModel::ColumnRecord {
AUColumns () {
@@ -131,7 +131,7 @@ class PluginSelector : public ArdourDialog
static void _au_refiller (void *);
void au_refiller ();
void au_display_selection_changed();
-#endif //HAVE_COREAUDIO
+#endif //HAVE_AUDIOUNIT
ARDOUR::PluginManager *manager;
diff --git a/gtk2_ardour/redirect_box.cc b/gtk2_ardour/redirect_box.cc
index 642e863ddb..a7b7096829 100644
--- a/gtk2_ardour/redirect_box.cc
+++ b/gtk2_ardour/redirect_box.cc
@@ -62,7 +62,7 @@
#include "i18n.h"
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
#include "au_pluginui.h"
#endif
@@ -1001,7 +1001,7 @@ RedirectBox::edit_redirect (boost::shared_ptr<Redirect> redirect)
} else {
plugin_ui->show_all ();
}
-#ifdef HAVE_COREAUDIO
+#ifdef HAVE_AUDIOUNIT
} else if (type == ARDOUR::AudioUnit) {
AUPluginUI* plugin_ui;
if (plugin_insert->get_gui() == 0) {
diff --git a/gtk2_ardour/sfdb_ui.cc b/gtk2_ardour/sfdb_ui.cc
index 6858b8442d..b0601704c8 100644
--- a/gtk2_ardour/sfdb_ui.cc
+++ b/gtk2_ardour/sfdb_ui.cc
@@ -269,7 +269,11 @@ SoundFileBox::remove_field_clicked ()
void
SoundFileBox::field_edited (const Glib::ustring& str1, const Glib::ustring& str2)
{
- cout << "field_edited" << endl;
+ Gtk::TreeModel::Children rows(fields->children());
+ Gtk::TreeModel::Row row(rows[atoi(str1.c_str())]);
+
+ Library->set_field (path, row[label_columns.field], str2);
+
Library->save_changes ();
}