diff options
Diffstat (limited to 'activities/web/linksview.py')
-rw-r--r-- | activities/web/linksview.py | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/activities/web/linksview.py b/activities/web/linksview.py deleted file mode 100644 index 70af786..0000000 --- a/activities/web/linksview.py +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright (C) 2006, Red Hat, Inc. -# -# 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 hippo - -from sugar.graphics.menu import Menu -from sugar.graphics.menushell import MenuShell -from sugar.graphics.menuicon import MenuIcon -from sugar.graphics.iconcolor import IconColor -from sugar.graphics import style - -class LinkIcon(MenuIcon): - def __init__(self, menu_shell, link): - color = IconColor(link.buddy.get_color()) - MenuIcon.__init__(self, menu_shell, color=color, - icon_name='activity-web') - - self._link = link - - def create_menu(self): - menu = Menu(self._link.title) - return menu - -class LinksView(hippo.Canvas): - def __init__(self, model, browser): - hippo.Canvas.__init__(self) - - self._icons = {} - self._browser = browser - self._menu_shell = MenuShell(self) - - self._box = hippo.CanvasBox() - style.apply_stylesheet(self._box, 'links.Box') - self.set_root(self._box) - - for link in model: - self._add_link(link) - - model.connect('link_added', self._link_added_cb) - model.connect('link_removed', self._link_removed_cb) - - def _add_link(self, link): - if len(self._icons) == 0: - self.show() - - icon = LinkIcon(self._menu_shell, link) - icon.connect('activated', self._link_activated_cb, link) - style.apply_stylesheet(icon, 'links.Icon') - self._box.append(icon) - - self._icons[link] = icon - - def _remove_link(self, link): - icon = self._icons[link] - self._box.remove(icon) - - del self._icons[link] - - if len(self._icons) == 0: - self.hide() - - def _link_added_cb(self, model, link): - self._add_link(link) - - def _link_removed_cb(self, model, link): - self._remove_link(link) - - def _link_activated_cb(self, link_item, link): - self._browser.load_url(link.url) |