Factor out window logic to ChatWindow.

Hook the sketchpad to ctrl+s combination
This commit is contained in:
Marco Pesenti Gritti 2006-06-18 14:44:08 -04:00
parent 9d7a7f8050
commit 3553882352

28
sugar/chat/ChatWindow.py Normal file
View File

@ -0,0 +1,28 @@
import pygtk
pygtk.require('2.0')
import gtk
from sugar.chat.Chat import Chat
class ChatWindow(gtk.Window):
def __init__(self):
gtk.Window.__init__(self)
self._chat = None
self.connect("key-press-event", self.__key_press_event_cb)
def set_chat(self, chat):
if self._chat != None:
self.remove(self._chat)
self._chat = chat
self.add(self._chat)
self._chat.show()
def __key_press_event_cb(self, window, event):
if event.keyval == gtk.keysyms.s and \
event.state & gtk.gdk.CONTROL_MASK:
if self._chat.get_mode() == Chat.SKETCH_MODE:
self._chat.set_mode(Chat.TEXT_MODE)
elif self._chat.get_mode() == Chat.TEXT_MODE:
self._chat.set_mode(Chat.SKETCH_MODE)