add button click sensitivity to close Marker IO dialog

This commit is contained in:
Paul Davis 2014-09-13 14:16:12 -04:00
parent d187b54335
commit c5ebd76bb6
2 changed files with 15 additions and 0 deletions

View file

@ -29,6 +29,7 @@ MarkerIODialog::MarkerIODialog ()
, input_dropdown (get_waves_dropdown ("input_dropdown"))
, output_dropdown (get_waves_dropdown ("output_dropdown"))
{
add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
populate_dropdown (input_dropdown, false);
populate_dropdown (output_dropdown, true);
@ -44,6 +45,15 @@ MarkerIODialog::on_realize ()
get_window()->set_decorations (Gdk::WMDecoration (0));
}
bool
MarkerIODialog::on_button_press_event (GdkEventButton*)
{
/* button press anywhere except the dropdowns means "close dialog" */
hide ();
return true;
}
void
MarkerIODialog::output_chosen (WavesDropdown*, void* full_name_of_chosen_port)
{
@ -93,6 +103,10 @@ MarkerIODialog::populate_dropdown (WavesDropdown& dropdown, bool for_playback)
}
dropdown.clear_items ();
/* add a "none" entry */
dropdown.add_menu_item (_("Off"), 0);
std::vector<EngineStateController::PortState>::const_iterator state_iter;

View file

@ -42,4 +42,5 @@ class MarkerIODialog : public WavesDialog
void input_chosen (WavesDropdown*,void*);
void output_chosen (WavesDropdown*,void*);
void on_realize ();
bool on_button_press_event (GdkEventButton*);
};