Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAleksey Lim <alsroot@member.fsf.org>2009-08-22 13:49:06 (GMT)
committer Aleksey Lim <alsroot@member.fsf.org>2009-08-25 15:49:46 (GMT)
commit84dc799db7254f480751b6ef9cd40b1cfaada629 (patch)
tree47d46b04ca62b9e406103347c2731cd0595297f5 /src
parentb7be1650634ccde971e4ebcc2de2881310113256 (diff)
Reorganize directory hierarchy in journal/; update Makefile.am
Diffstat (limited to 'src')
-rw-r--r--src/jarabe/journal/Makefile.am35
-rw-r--r--src/jarabe/journal/browse/__init__.py15
-rw-r--r--src/jarabe/journal/browse/treeview.py182
-rw-r--r--src/jarabe/journal/lazymodel.py (renamed from src/jarabe/journal/browse/lazymodel.py)0
-rw-r--r--src/jarabe/journal/objectmodel.py2
-rw-r--r--src/jarabe/journal/smoothtable.py (renamed from src/jarabe/journal/browse/smoothtable.py)0
-rw-r--r--src/jarabe/journal/tableview.py (renamed from src/jarabe/journal/browse/tableview.py)2
-rw-r--r--src/jarabe/journal/thumbsview.py2
8 files changed, 24 insertions, 214 deletions
diff --git a/src/jarabe/journal/Makefile.am b/src/jarabe/journal/Makefile.am
index f4bf273..d99fa1c 100644
--- a/src/jarabe/journal/Makefile.am
+++ b/src/jarabe/journal/Makefile.am
@@ -1,17 +1,24 @@
sugardir = $(pythondir)/jarabe/journal
-sugar_PYTHON = \
- __init__.py \
- detailview.py \
- expandedentry.py \
- journalactivity.py \
- journalentrybundle.py \
+sugar_PYTHON = \
+ __init__.py \
+ detailview.py \
+ expandedentry.py \
+ journalactivity.py \
+ journalentrybundle.py \
journaltoolbox.py \
- keepicon.py \
- listmodel.py \
- listview.py \
- misc.py \
- modalalert.py \
- model.py \
- objectchooser.py \
- palettes.py \
+ keepicon.py \
+ lazymodel.py \
+ listmodel.py \
+ listview.py \
+ misc.py \
+ modalalert.py \
+ model.py \
+ objectchooser.py \
+ objectmodel.py \
+ objectview.py \
+ palettes.py \
+ smoothtable.py \
+ source.py \
+ tableview.py \
+ thumbsview.py \
volumestoolbar.py
diff --git a/src/jarabe/journal/browse/__init__.py b/src/jarabe/journal/browse/__init__.py
deleted file mode 100644
index 307e9c3..0000000
--- a/src/jarabe/journal/browse/__init__.py
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright (C) 2009, Aleksey Lim
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
diff --git a/src/jarabe/journal/browse/treeview.py b/src/jarabe/journal/browse/treeview.py
deleted file mode 100644
index b103e9a..0000000
--- a/src/jarabe/journal/browse/treeview.py
+++ /dev/null
@@ -1,182 +0,0 @@
-# Copyright (C) 2009, Aleksey Lim
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-import gtk
-import gobject
-import logging
-
-from sugar.graphics.palette import Invoker
-
-_SHOW_PALETTE_TIMEOUT = 200
-
-
-class TreeView(gtk.TreeView):
-
- def __init__(self):
- gtk.TreeView.__init__(self)
- self._invoker = _TreeInvoker(self)
-
- def set_cursor(self, path, column, edit=False):
- if path is not None:
- gtk.TreeView.set_cursor(self, path, column, edit)
-
- def append_column(self, column):
- if isinstance(column, TreeViewColumn):
- column.view = self
- return gtk.TreeView.append_column(self, column)
-
- def create_palette(self):
- return self._invoker.cell_palette
-
-
-class TreeViewColumn(gtk.TreeViewColumn):
-
- def __init__(self, title=None, cell=None, **kwargs):
- gtk.TreeViewColumn.__init__(self, title, cell, **kwargs)
- self.view = None
- self._order_by = None
- self.palette_cb = None
- self.connect('clicked', self._clicked_cb)
-
- def set_sort_column_id(self, field):
- self.props.clickable = True
- self._order_by = field
-
- def get_sort_column_id(self):
- return self._order_by
-
- def _clicked_cb(self, column):
- if self.view is None:
- return
-
- if self.props.sort_indicator:
- if self.props.sort_order == gtk.SORT_DESCENDING:
- new_order = gtk.SORT_ASCENDING
- else:
- new_order = gtk.SORT_DESCENDING
- else:
- new_order = gtk.SORT_ASCENDING
-
- self.view.get_model().set_order(self._order_by, new_order)
-
-
-class _TreeInvoker(Invoker):
-
- def __init__(self, tree=None):
- Invoker.__init__(self)
- self._position_hint = self.AT_CURSOR
-
- self._tree = None
- self.cell_palette = None
- self._palette_pos = None
- self._enter_timeout = None
-
- self._enter_hid = None
- self._motion_hid = None
- self._leave_hid = None
- self._button_hid = None
-
- if tree is not None:
- self.attach(tree)
-
- def get_toplevel(self):
- return self._tree.get_toplevel()
-
- def attach(self, tree):
- self._tree = tree
- self._enter_hid = tree.connect('enter-notify-event', self._enter_cb)
- self._motion_hid = tree.connect('motion-notify-event', self._enter_cb)
- self._leave_hid = tree.connect('leave-notify-event', self._leave_cb)
- self._button_hid = tree.connect('button-release-event',
- self._button_cb)
- Invoker.attach(self, tree)
-
- def detach(self):
- Invoker.detach(self)
- self._tree.disconnect(self._enter_hid)
- self._tree.disconnect(self._motion_hid)
- self._tree.disconnect(self._leave_hid)
- self._tree.disconnect(self._button_cb)
-
- def _close_palette(self):
- if self._enter_timeout:
- gobject.source_remove(self._enter_timeout)
- self._enter_timeout = None
- self.cell_palette = None
- self._palette_pos = None
-
- def _open_palette(self, notify, force):
- if self._enter_timeout:
- gobject.source_remove(self._enter_timeout)
- self._enter_timeout = None
-
- coords = self._tree.convert_widget_to_bin_window_coords(
- *self._tree.get_pointer())
-
- pos = self._tree.get_path_at_pos(*coords)
- if not pos:
- self._close_palette()
- return False
-
- path, column, x, y = pos
- if not hasattr(column, 'palette_cb') or not column.palette_cb:
- self._close_palette()
- return False
-
- row = self._tree.props.model.get_row(path)
- if row is None:
- logging.debug('_open_palette: wait for row %s' % path)
- self._enter_timeout = gobject.timeout_add(500, self._open_palette,
- self.notify_mouse_enter, False)
- return False
-
- palette = column.palette_cb(self._tree.props.model, row, x, y)
- if palette is None:
- self._close_palette()
- return False
-
- if self._palette_pos != (path, column) or self.cell_palette != palette:
- if self.palette is not None:
- self.palette.popdown(True)
- self.palette = None
-
- self._palette_pos = (path, column)
- self.cell_palette = palette
- notify()
-
- return False
-
- def notify_popup(self):
- Invoker.notify_popup(self)
-
- def notify_popdown(self):
- Invoker.notify_popdown(self)
-
- def _enter_cb(self, widget, event):
- if self._enter_timeout:
- gobject.source_remove(self._enter_timeout)
- self._enter_timeout = gobject.timeout_add(_SHOW_PALETTE_TIMEOUT,
- self._open_palette, self.notify_mouse_enter, False)
-
- def _leave_cb(self, widget, event):
- self.notify_mouse_leave()
- self._close_palette()
-
- def _button_cb(self, widget, event):
- if event.button == 3:
- return self._open_palette(self.notify_right_click, True)
- else:
- return False
diff --git a/src/jarabe/journal/browse/lazymodel.py b/src/jarabe/journal/lazymodel.py
index d590fbc..d590fbc 100644
--- a/src/jarabe/journal/browse/lazymodel.py
+++ b/src/jarabe/journal/lazymodel.py
diff --git a/src/jarabe/journal/objectmodel.py b/src/jarabe/journal/objectmodel.py
index d602128..51244b2 100644
--- a/src/jarabe/journal/objectmodel.py
+++ b/src/jarabe/journal/objectmodel.py
@@ -20,7 +20,7 @@ from sugar import util
from jarabe.journal import misc
from jarabe.journal.source import Source
-from jarabe.journal.browse.lazymodel import LazyModel
+from jarabe.journal.lazymodel import LazyModel
class ObjectModel(LazyModel):
diff --git a/src/jarabe/journal/browse/smoothtable.py b/src/jarabe/journal/smoothtable.py
index 9f6af15..9f6af15 100644
--- a/src/jarabe/journal/browse/smoothtable.py
+++ b/src/jarabe/journal/smoothtable.py
diff --git a/src/jarabe/journal/browse/tableview.py b/src/jarabe/journal/tableview.py
index 024d212..57273cd 100644
--- a/src/jarabe/journal/browse/tableview.py
+++ b/src/jarabe/journal/tableview.py
@@ -21,7 +21,7 @@ import gobject
from sugar.graphics import style
from sugar.graphics.roundbox import CanvasRoundBox
-from jarabe.journal.browse.smoothtable import SmoothTable
+from jarabe.journal.smoothtable import SmoothTable
COLOR_BACKGROUND = style.COLOR_WHITE
COLOR_SELECTED = style.COLOR_TEXT_FIELD_GREY
diff --git a/src/jarabe/journal/thumbsview.py b/src/jarabe/journal/thumbsview.py
index 0379d75..2948096 100644
--- a/src/jarabe/journal/thumbsview.py
+++ b/src/jarabe/journal/thumbsview.py
@@ -25,7 +25,7 @@ from sugar.graphics.palette import CanvasInvoker
from jarabe.journal.keepicon import KeepIcon
from jarabe.journal.source import Source
from jarabe.journal.objectmodel import ObjectModel
-from jarabe.journal.browse.tableview import TableView, TableCell
+from jarabe.journal.tableview import TableView, TableCell
from jarabe.journal.palettes import ObjectPalette
from jarabe.journal import misc
from jarabe.journal import model