[niepce: 10/17] Ensure the selected items are visible.



commit 7ae5627b8a934dc239b7f43d5781e21958da36b2
Author: Hub Figuiere <hub figuiere net>
Date:   Sat Dec 10 23:46:09 2011 -0800

    Ensure the selected items are visible.

 src/niepce/ui/filmstripcontroller.cpp |    3 ++-
 src/niepce/ui/gridviewmodule.cpp      |    7 ++++---
 2 files changed, 6 insertions(+), 4 deletions(-)
---
diff --git a/src/niepce/ui/filmstripcontroller.cpp b/src/niepce/ui/filmstripcontroller.cpp
index a44137e..f0b764e 100644
--- a/src/niepce/ui/filmstripcontroller.cpp
+++ b/src/niepce/ui/filmstripcontroller.cpp
@@ -58,7 +58,7 @@ Gtk::IconView * FilmStripController::image_list()
 
 eng::library_id_t FilmStripController::get_selected()
 {
-	eng::library_id_t id = 0;
+    eng::library_id_t id = 0;
     DBG_OUT("get selected in filmstrip");
     Gtk::IconView::ArrayHandle_TreePaths paths = m_thumbview->get_selected_items();
     if(!paths.empty()) {
@@ -81,6 +81,7 @@ void FilmStripController::select_image(eng::library_id_t id)
     DBG_OUT("filmstrip select %Ld", id);
     Gtk::TreePath path = m_store->get_path_from_id(id);
     if(path) {
+        m_thumbview->scroll_to_path(path, false, 0, 0);
         m_thumbview->select_path(path);
     }
     else {
diff --git a/src/niepce/ui/gridviewmodule.cpp b/src/niepce/ui/gridviewmodule.cpp
index 841b170..ee40d0d 100644
--- a/src/niepce/ui/gridviewmodule.cpp
+++ b/src/niepce/ui/gridviewmodule.cpp
@@ -157,7 +157,7 @@ Gtk::IconView * GridViewModule::image_list()
 
 eng::library_id_t GridViewModule::get_selected()
 {
-	eng::library_id_t id = 0;
+    eng::library_id_t id = 0;
     Glib::RefPtr<Gtk::TreeSelection> selection;
 
     Gtk::IconView::ArrayHandle_TreePaths paths = m_librarylistview.get_selected_items();
@@ -182,10 +182,11 @@ void GridViewModule::select_image(eng::library_id_t id)
     DBG_OUT("library select %Ld", id);
     Gtk::TreePath path = m_model->get_path_from_id(id);
     if(path) {
-      m_librarylistview.select_path(path);
+        m_librarylistview.scroll_to_path(path, false, 0, 0);
+        m_librarylistview.select_path(path);
     }
     else {
-      m_librarylistview.unselect_all();
+        m_librarylistview.unselect_all();
     }
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]