From cb00582b145d89c80df0849a08c09dbbd77cd32c Mon Sep 17 00:00:00 2001 From: Aleksey Lim Date: Fri, 06 Feb 2009 17:44:34 +0000 Subject: Add mute button to chat tab --- (limited to 'Speak.activity/chat.py') diff --git a/Speak.activity/chat.py b/Speak.activity/chat.py index 9e707a4..f313dbc 100644 --- a/Speak.activity/chat.py +++ b/Speak.activity/chat.py @@ -16,9 +16,11 @@ import gtk import pango import hippo import logging +from gettext import gettext as _ import sugar.graphics.style as style from sugar.graphics.roundbox import CanvasRoundBox +from sugar.graphics.toggletoolbutton import ToggleToolButton import eye import glasses @@ -36,18 +38,36 @@ BUDDY_YPAD = 5 BUDDIES_WIDTH = int(BUDDY_SIZE * 2.5) BUDDIES_COLOR = style.COLOR_SELECTION_GREY -#COLOR_BUTTON_GREY ENTRY_COLOR = style.COLOR_PANEL_GREY ENTRY_XPAD = 0 ENTRY_YPAD = 7 -class Chat(hippo.Canvas): +class Toolbar(gtk.Toolbar): + def __init__(self, chat): + gtk.Toolbar.__init__(self) + self.chat = chat + + mute = ToggleToolButton('stock_volume-mute') + mute.set_tooltip(_('Mute')) + mute.connect('toggled', self._toggled_cb) + mute.show() + self.insert(mute, -1) + + def _toggled_cb(self, widget): + if widget.get_active(): + self.chat.quiet = True + self.chat.shut_up() + else: + self.chat.quiet = False + +class View(hippo.Canvas): def __init__(self): hippo.Canvas.__init__(self) self.messenger = None self.me = None + self.quiet = False self._buddies = {} self.connect('motion_notify_event', self._motion_notify_cb) @@ -136,7 +156,8 @@ class Chat(hippo.Canvas): lang_box.props.text = status.voice.friendlyname if text: self._chat.add_text(buddy, text) - if self.props.window and self.props.window.is_visible(): + if not self.quiet and self.props.window \ + and self.props.window.is_visible(): face.say(text) def farewell(self, buddy): @@ -202,7 +223,8 @@ class Chat(hippo.Canvas): if text: self._chat.add_text(None, text) widget.get_buffer().props.text = '' - self.me.say(text) + if not self.quiet: + self.me.say(text) if self.messenger: self.messenger.post(text) -- cgit v0.9.1