From 84dc799db7254f480751b6ef9cd40b1cfaada629 Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Sat, 22 Aug 2009 13:49:06 +0000 Subject: Reorganize directory hierarchy in journal/; update Makefile.am --- (limited to 'src') 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 -- cgit v0.9.1