Fixing a bug with launching from a fresh system
[quicknote] / src / simple_list.py
index 04bedf8..34849da 100644 (file)
@@ -9,11 +9,13 @@ it under the terms of the GNU General Public License version 2 as
 published by the Free Software Foundation.\r
 """\r
 \r
+import logging\r
 \r
 import pango\r
 import gtk\r
 \r
 import hildonize\r
+import gtk_toolbox\r
 \r
 \r
 try:\r
@@ -22,6 +24,9 @@ except NameError:
        _ = lambda x: x\r
 \r
 \r
+_moduleLogger = logging.getLogger(__name__)\r
+\r
+\r
 class SimpleList(object):\r
        """\r
        Stellt eine einfache Liste mit Laufbalken dar. Das wird mit\r
@@ -41,7 +46,7 @@ class SimpleList(object):
                self._itemlist = gtk.ListStore(str, str)\r
                self._itemView = gtk.TreeView(self._itemlist)\r
                self._itemView.set_headers_visible(False)\r
-               self._itemView.get_selection().set_mode(gtk.SELECTION_BROWSE)\r
+               self._itemView.get_selection().set_mode(gtk.SELECTION_SINGLE)\r
                self._itemView.connect("cursor-changed", self._on_cursor_changed)\r
                self._itemView.connect("row-activated", self._on_row_activated)\r
                self._itemView.show()\r
@@ -67,13 +72,17 @@ class SimpleList(object):
                # wie ich das möchte. Deshalb habe ich die Suche abgeschaltet.\r
                self._itemView.set_enable_search(False)\r
 \r
+               self._maemo5HackVBox = gtk.VBox()\r
+               self._maemo5HackVBox.pack_start(self._itemView)\r
+               self._maemo5HackViewport = gtk.Viewport()\r
+               self._maemo5HackViewport.add(self._maemo5HackVBox)\r
+\r
                # ScrolledWindow\r
                self._scrolledWindow = gtk.ScrolledWindow()\r
                self._scrolledWindow.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)\r
                self._scrolledWindow.set_shadow_type(gtk.SHADOW_IN)\r
+               self._scrolledWindow.add(self._maemo5HackViewport)\r
 \r
-               # Anzeigen\r
-               self._scrolledWindow.add(self._itemView)\r
                self._scrolledWindow = hildonize.hildonize_scrollwindow(self._scrolledWindow)\r
                self._scrolledWindow.show()\r
 \r
@@ -121,11 +130,13 @@ class SimpleList(object):
                """\r
 \r
                self._itemView.connect("cursor-changed", function)\r
+               self._itemView.connect("row-activated", function)\r
 \r
+       @gtk_toolbox.log_exception(_moduleLogger)\r
        def _on_row_activated(self, treeview, path, view_column, data = None):\r
                """\r
-               Setzt den Wert von self._selectedItems. Dieser Wert kann\r
-               mit der Methode "get_selection_data" abgerufen werden.\r
+               Sets the value of self._selectedItems. This value can\r
+               be retrieved using the method "get_selection_data.\r
                """\r
 \r
                iter = self._itemlist.get_iter(path)\r
@@ -138,10 +149,11 @@ class SimpleList(object):
                        self._itemlist.get_value(iter, self.VALUE_IDX) # Value\r
                )\r
 \r
+       @gtk_toolbox.log_exception(_moduleLogger)\r
        def _on_cursor_changed(self, widget, data1 = None, data2 = None):\r
                """\r
-               Setzt den Wert von self._selectedItems. Dieser Wert kann\r
-               mit der Methode "get_selection_data" abgerufen werden.\r
+               Sets the value of self._selectedItems. This value can\r
+               be retrieved using the method "get_selection_data.\r
                """\r
 \r
                selection = widget.get_selection()\r