diff options
author | Taybin Rutkin <taybin@taybin.com> | 2005-12-07 22:57:47 +0000 |
---|---|---|
committer | Taybin Rutkin <taybin@taybin.com> | 2005-12-07 22:57:47 +0000 |
commit | 6039331bea9afb0ce8888659832a04b39ff6be7a (patch) | |
tree | cf22ad447eb565085d09849f8f4fed44973fad3b /gtk2_ardour/ardour_ui_dialogs.cc | |
parent | 03872f0916498ccaab0b9b2c73fdba5d21952b63 (diff) |
Part one of the sfdb reworking.
git-svn-id: svn://localhost/trunk/ardour2@180 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/ardour_ui_dialogs.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui_dialogs.cc | 32 |
1 files changed, 26 insertions, 6 deletions
diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index 5f6459c041..3d6c9fd998 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -38,6 +38,7 @@ #include "i18n.h" using namespace ARDOUR; +using namespace Glib; using namespace Gtk; using namespace Gtkmm2ext; @@ -225,7 +226,7 @@ ARDOUR_UI::toggle_options_window () { if (option_editor == 0) { option_editor = new OptionEditor (*this, *editor, *mixer); - option_editor->signal_unmap().connect(sigc::bind (ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleOptionsWindow"))); + option_editor->signal_unmap().connect(sigc::bind (ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleOptionsEditor"))); option_editor->set_session (session); } @@ -294,14 +295,33 @@ ARDOUR_UI::toggle_route_params_window () route_params->present (); } } + +int +ARDOUR_UI::create_sound_file_browser () +{ + if (sfdb == 0) { + sfdb = new SoundFileBrowser (_("Sound File Browser")); + sfdb->set_session (session); + sfdb->signal_unmap().connect (sigc::bind(ptr_fun(&ActionManager::uncheck_toggleaction), X_("<Actions>/Common/ToggleSoundFileBrowser"))); + } + return 0; +} void ARDOUR_UI::toggle_sound_file_browser () { - using namespace Glib; - - SoundFileBrowser sfdb(_("Sound File Browser")); - sfdb.run(); + if (create_sound_file_browser()) { + return; + } - ActionManager::uncheck_toggleaction(X_("<Actions>/Common/ToggleSoundFileBrowser")); + RefPtr<Action> act = ActionManager::ui_manager->get_action (X_("<Actions>/Common/ToggleSoundFileBrowser")); + if (act) { + RefPtr<ToggleAction> tact = RefPtr<ToggleAction>::cast_dynamic(act); + + if (tact->get_active()) { + sfdb->present(); + } else { + sfdb->hide (); + } + } } |