Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/jarabe/journal/thumbsview.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/jarabe/journal/thumbsview.py')
-rw-r--r--src/jarabe/journal/thumbsview.py42
1 files changed, 22 insertions, 20 deletions
diff --git a/src/jarabe/journal/thumbsview.py b/src/jarabe/journal/thumbsview.py
index ccf827b..cf943ca 100644
--- a/src/jarabe/journal/thumbsview.py
+++ b/src/jarabe/journal/thumbsview.py
@@ -20,7 +20,7 @@ import logging
from jarabe.journal.homogeneview import HomogeneView
from jarabe.journal.homogeneview import Cell
-from jarabe.journal.widgets import *
+from jarabe.journal.fields import *
from jarabe.journal import preview
from jarabe.journal import entry
@@ -43,11 +43,13 @@ class _Cell(Cell):
toolbar = gtk.VBox()
cell.pack_start(toolbar, expand=False)
- self._keep = KeepIcon()
- toolbar.pack_start(self._keep, expand=False)
+ keep = KeepIcon()
+ toolbar.pack_start(keep, expand=False)
+ self.add_field(keep)
- self._details = DetailsIcon()
- toolbar.pack_start(self._details, expand=False)
+ details = DetailsIcon()
+ toolbar.pack_start(details, expand=False)
+ self.add_field(details)
# main
@@ -58,31 +60,28 @@ class _Cell(Cell):
self._icon = ObjectIcon(pixel_size=style.MEDIUM_ICON_SIZE)
self._icon.set_size_request(preview.THUMB_WIDTH, preview.THUMB_HEIGHT)
self._icon.show()
+ self.add_field(self._icon)
self._thumb = Thumb()
self._thumb.set_size_request(preview.THUMB_WIDTH, preview.THUMB_HEIGHT)
self._thumb.show()
+ self.add_field(self._thumb)
self._thumb_box = gtk.HBox()
main.pack_start(self._thumb_box, expand=False)
- self._title = Title(max_line_count=2)
- main.pack_start(self._title, expand=False)
+ title = Title(max_line_count=2)
+ main.pack_start(title, expand=False)
+ self.add_field(title)
- self._date = Timestamp(wrap=True, xalign=0.0)
- self._date.set_size_request(preview.THUMB_WIDTH, -1)
- main.pack_start(self._date, expand=False)
+ date = Timestamp(wrap=True, xalign=0.0)
+ date.set_size_request(preview.THUMB_WIDTH, -1)
+ main.pack_start(date, expand=False)
+ self.add_field(date)
self.show_all()
- def do_fill_in_cell_content(self, table, offset, metadata):
- self._keep.fill_in(metadata)
- self._details.fill_in(metadata)
- self._title.fill_in(metadata)
- self._date.fill_in(metadata)
- self._icon.fill_in(metadata)
- self._thumb.fill_in(metadata)
-
+ def fill_in(self, offset, metadata):
if self._last_thumb_offset != offset or \
self._last_thumb_uid != metadata.get('uid') or \
self._last_thumb_mtime != metadata.get('timestamp'):
@@ -108,8 +107,8 @@ class _Cell(Cell):
class ThumbsView(HomogeneView):
- def __init__(self):
- HomogeneView.__init__(self, _Cell)
+ def __init__(self, selection):
+ HomogeneView.__init__(self, selection)
cell_width = style.DEFAULT_PADDING * 2 + \
style.GRID_CELL_SIZE + \
@@ -125,6 +124,9 @@ class ThumbsView(HomogeneView):
self.connect('frame-scrolled', self.__frame_scrolled_cb)
preview.fetched.connect(self.__preview_fetched_cb)
+ def do_cell_new(self):
+ return _Cell()
+
def __frame_scrolled_cb(self, table):
preview.discard_queue(table.frame_range)