paperbox r110 - in trunk: . src
- From: markoa svn gnome org
- To: svn-commits-list gnome org
- Subject: paperbox r110 - in trunk: . src
- Date: Sat, 8 Mar 2008 23:16:44 +0000 (GMT)
Author: markoa
Date: Sat Mar 8 23:16:43 2008
New Revision: 110
URL: http://svn.gnome.org/viewvc/paperbox?rev=110&view=rev
Log:
Monitor keyboard on the text view for smart save button sensitivity/
Modified:
trunk/ChangeLog
trunk/src/category-editor.cc
trunk/src/category-editor.hh
Modified: trunk/src/category-editor.cc
==============================================================================
--- trunk/src/category-editor.cc (original)
+++ trunk/src/category-editor.cc Sat Mar 8 23:16:43 2008
@@ -120,6 +120,10 @@
// connect the selection function
category_view_->selection->set_select_function(
sigc::mem_fun(*this, &CategoryEditor::on_category_selected));
+
+ // monitor text view
+ text_view_.signal_key_release_event().connect(
+ sigc::mem_fun(*this, &CategoryEditor::on_key_release_event));
}
int
@@ -231,8 +235,7 @@
selected_name_ = cat_name;
try {
- shared_ptr<CategoryEditorData> data =
- model_->get_category(cat_name);
+ shared_ptr<CategoryEditorData> data(model_->get_category(cat_name));
text_view_.set_buffer(data->buffer);
} catch (const CategoryNotFound& ex) {
@@ -250,4 +253,17 @@
model_->save_category(selected_name_);
}
+ bool
+ CategoryEditor::on_key_release_event(GdkEventKey* /* key */)
+ {
+ shared_ptr<CategoryEditorData> data(
+ model_->get_category(selected_name_));
+
+ (data->category->get_tags_as_string() != data->buffer->get_text())
+ ? button_save_.set_sensitive()
+ : button_save_.set_sensitive(false);
+
+ return true;
+ }
+
} // namespace paperbox
Modified: trunk/src/category-editor.hh
==============================================================================
--- trunk/src/category-editor.hh (original)
+++ trunk/src/category-editor.hh Sat Mar 8 23:16:43 2008
@@ -62,6 +62,7 @@
bool on_category_selected(const Glib::RefPtr<Gtk::TreeModel>& model,
const Gtk::TreeModel::Path& path,
bool path_selected);
+ bool on_key_release_event(GdkEventKey* key);
Glib::RefPtr<Gnome::Glade::Xml> glade_;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]