when selecting one of a set of variable I/O configs for an AudioUnit so that its...
[ardour.git] / libs / gtkmm2ext / selector.cc
index 371c946fe7f9417842acc0a936081e3ca7ac6c12..85924e82ab728f842d0b67f218d698e00fbf6a91 100644 (file)
 #include <vector>
 #include <string>
 
-#include <gtkmm2ext/selector.h>
-#include <gtkmm2ext/utils.h>
-#include <pbd/pathscanner.h>
-#include <pbd/error.h>
+#include "pbd/pathscanner.h"
+
+#include "gtkmm2ext/keyboard.h"
+#include "gtkmm2ext/selector.h"
+#include "gtkmm2ext/utils.h"
 
 using namespace std;
 using namespace Gtkmm2ext;
@@ -143,7 +144,8 @@ Selector::accept ()
        Gtk::TreeModel::iterator iter = tree_sel->get_selected();
 
        if (iter) {
-               selection_made (tview, tree_sel);
+
+               selection_made (new Result (tview, tree_sel));
        } else {
                cancel ();
        }
@@ -151,13 +153,12 @@ Selector::accept ()
 
 void
 Selector::chosen ()
-
 {
        Glib::RefPtr<Gtk::TreeSelection> tree_sel = tview.get_selection();
        Gtk::TreeModel::iterator iter = tree_sel->get_selected();
-
+       
        if (iter) {
-               choice_made (tview, tree_sel);
+               choice_made (new Result (tview, tree_sel));
        } else {
                cancel ();
        }
@@ -165,13 +166,12 @@ Selector::chosen ()
 
 void
 Selector::shift_clicked ()
-
 {
        Glib::RefPtr<Gtk::TreeSelection> tree_sel = tview.get_selection();
        Gtk::TreeModel::iterator iter = tree_sel->get_selected();
 
        if (iter) {
-               shift_made (tview, tree_sel);
+               shift_made (new Result (tview, tree_sel));
        } else {
                cancel ();
        }
@@ -179,13 +179,12 @@ Selector::shift_clicked ()
 
 void
 Selector::control_clicked ()
-
 {
        Glib::RefPtr<Gtk::TreeSelection> tree_sel = tview.get_selection();
        Gtk::TreeModel::iterator iter = tree_sel->get_selected();
 
        if (iter) {
-               control_made (tview, tree_sel);
+               control_made (new Result (tview, tree_sel));
        } else {
                cancel ();
        }
@@ -193,12 +192,11 @@ Selector::control_clicked ()
 
 void
 Selector::cancel ()
-
 {
         Glib::RefPtr<Gtk::TreeSelection> tree_sel = tview.get_selection();
        tree_sel->unselect_all();
 
-       selection_made (tview, tree_sel);
+       selection_made (new Result (tview, tree_sel));
 }
 
 void
@@ -223,14 +221,14 @@ TreeView_Selector::on_button_press_event(GdkEventButton* ev)
        bool return_value = TreeView::on_button_press_event(ev);
 
        if (ev && (ev->type == GDK_BUTTON_RELEASE || ev->type == GDK_2BUTTON_PRESS)) {
-               if (ev->state & Gdk::CONTROL_MASK) {
-                       gtk_idle_add (Selector::_control_clicked, this);
-               } else if (ev->state & Gdk::SHIFT_MASK) {
-                       gtk_idle_add (Selector::_shift_clicked, this);
+               if (ev->state & Keyboard::PrimaryModifier) {
+                       g_idle_add (Selector::_control_clicked, this);
+               } else if (ev->state & Keyboard::TertiaryModifier) {
+                       g_idle_add (Selector::_shift_clicked, this);
                } else if (ev->type == GDK_2BUTTON_PRESS) {
-                       gtk_idle_add (Selector::_accept, this);
+                       g_idle_add (Selector::_accept, this);
                } else {
-                       gtk_idle_add (Selector::_chosen, this);
+                       g_idle_add (Selector::_chosen, this);
                }
        }