13
0

2nd of tim mayberry's patches to fix middle-click pastingina couple of dialogs

git-svn-id: svn://localhost/ardour2/trunk@1851 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2007-05-16 02:42:01 +00:00
parent 696be8ea6a
commit 770dc73cde
2 changed files with 7 additions and 8 deletions

View File

@ -53,11 +53,12 @@ class Prompter : public Gtk::Dialog
void change_labels (std::string ok, std::string cancel);
void get_result (std::string &str, bool strip=true);
bool maybe_allow_response (GdkEventKey* );
protected:
Gtk::Entry& the_entry() { return entry; }
void on_entry_changed ();
private:
Gtk::Entry entry;
Gtk::HBox entryBox;

View File

@ -70,7 +70,7 @@ Prompter::init ()
get_vbox()->pack_start (entryBox);
show_all_children();
entry.signal_key_release_event().connect (mem_fun (*this, &Prompter::maybe_allow_response));
entry.signal_changed().connect (mem_fun (*this, &Prompter::on_entry_changed));
entry.signal_activate().connect (bind (mem_fun (*this, &Prompter::response), Gtk::RESPONSE_ACCEPT));
}
@ -90,22 +90,20 @@ Prompter::get_result (string &str, bool strip)
}
}
bool
Prompter::maybe_allow_response (GdkEventKey* ev)
void
Prompter::on_entry_changed ()
{
/*
/*
This is set up so that entering text in the entry
field makes the RESPONSE_ACCEPT button active.
Of course if you haven't added a RESPONSE_ACCEPT
button, nothing will happen at all.
*/
if (entry.get_text() != "") {
if (entry.get_text() != "") {
set_response_sensitive (Gtk::RESPONSE_ACCEPT, true);
set_default_response (Gtk::RESPONSE_ACCEPT);
} else {
set_response_sensitive (Gtk::RESPONSE_ACCEPT, false);
}
return true;
}