diff options
Diffstat (limited to 'desktop/sweetener/item.py')
-rw-r--r-- | desktop/sweetener/item.py | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/desktop/sweetener/item.py b/desktop/sweetener/item.py deleted file mode 100644 index 1b5fc8e..0000000 --- a/desktop/sweetener/item.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# Copyright (C) 2012 S. Daniel Francis <francis@sugarlabs.org> -# -# 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 3 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 Street, Fifth Floor, Boston, -# MA 02110-1301, USA. - -import logging -logger = logging.getLogger('option') - -import gobject -import gtk - -import stock - - -class Item(gobject.GObject): - __gsignals__ = {'activate': (gobject.SIGNAL_RUN_LAST, - gobject.TYPE_NONE, - tuple())} - menuitem = None - toolitem = None - - def __init__(self, stock_id=None, important=False): - gobject.GObject.__init__(self) - self._stock_id = stock_id - self.accel_group = None - self.important = important - self.connection = None - self.connection_data = None - self.tooltip = None - - def set_stock_id(self, stock_id): - self._stock_id = stock_id - - def get_stock_id(self): - return self._stock_id - - stock_id = property(get_stock_id, set_stock_id) - - def get_menu_item(self): - self.menuitem = gtk.ImageMenuItem(self._stock_id) - self.menuitem.connect('activate', self.activate_cb) - self.setup_accelerator() - return self.menuitem - - def activate_cb(self, widget): - self.emit('activate') - - def setup_accelerator(self): - accelerator = stock.get_accelerator(self.stock_id) - logger.debug(str(accelerator)) - if accelerator[1] > 0: - self.menuitem.add_accelerator('activate', - self.accel_group, accelerator[1], accelerator[0], - gtk.ACCEL_VISIBLE) - - def get_tool_item(self): - self.toolitem = gtk.ToolButton(self._stock_id) - self.toolitem.connect('clicked', self.activate_cb) - self.setup_tooltip() - return self.toolitem - - def setup_tooltip(self): - if self.tooltip: - self.toolitem.set_tooltip_text(self.tooltip) - else: - text = gtk.stock_lookup(self.stock_id)[1] - self.toolitem.set_tooltip_text(text.replace('_', '')) - - def emit_signal(self, widget, signal_name): - print self.stock_id - print self.get_stock_id() - self.emit(signal_name) |