diff --git a/data/glade/message_window.glade b/data/glade/message_window.glade index ca13daf31..0a18b7587 100644 --- a/data/glade/message_window.glade +++ b/data/glade/message_window.glade @@ -34,7 +34,7 @@ False @@ -96,7 +96,6 @@ 60 - True True 3 GTK_POLICY_AUTOMATIC @@ -116,9 +115,11 @@ GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True gtk-dialog-authentication + 1 False + 2 @@ -152,168 +153,212 @@ True - + True - 1 + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Show a list of emoticons + GTK_RELIEF_NONE + False + 0 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-missing-image + 1 + + + + False + - + True - 3 - 6 + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + False + 1 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Send a file + GTK_RELIEF_NONE + False + 0 - + True - True - Click to insert an emoticon (Alt+M) - 0 + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-save + 1 + + + + + False + 2 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Invite contacts to conversation + GTK_RELIEF_NONE + False + 0 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-missing-image + 1 + + + + + False + 3 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Show contact information + GTK_RELIEF_NONE + False + 0 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-info + 2 + + + + + False + 4 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Browse history + GTK_RELIEF_NONE + False + 0 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-justify-fill + 1 + + + + + False + 5 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + False + 6 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Show a menu of advanced functions + GTK_RELIEF_NONE + 0 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + gtk-execute + 1 + + + + + False + 7 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + + 8 + + + + + True + True + 0 + + + True + 0 + 0 - + True + 2 - + True - 2 - None - - - - - True - GTK_ARROW_DOWN + gtk-jump-to + 2 + False + False + + + + + True + _Send + True + + + False + False 1 - - False - False - - - - - True - True - 0 - - - True - 0 - 0 - - - True - 2 - - - True - gtk-execute - - - False - False - - - - - True - _Actions - True - - - False - False - 1 - - - - - True - GTK_ARROW_DOWN - - - False - False - 2 - - - - - - - - - False - False - 1 - - - - - True - - - False - False - 2 - - - - - True - True - 0 - - - True - 0 - 0 - - - True - 2 - - - True - gtk-jump-to - - - False - False - - - - - True - _Send - True - - - False - False - 1 - - - - - - - - - False - False - 3 - False - 1 + 9 @@ -335,7 +380,7 @@ True - None + gtk-missing-image False @@ -403,7 +448,7 @@ True - None + gtk-missing-image False @@ -551,7 +596,7 @@ True 2 - None + gtk-missing-image @@ -714,7 +759,7 @@ True - None + gtk-missing-image False diff --git a/src/chat_control.py b/src/chat_control.py index 1989fb20f..880daa234 100644 --- a/src/chat_control.py +++ b/src/chat_control.py @@ -137,6 +137,31 @@ class ChatControlBase(MessageControl): resource = None): MessageControl.__init__(self, type_id, parent_win, widget_name, contact, acct, resource = resource); + + widget = self.xml.get_widget('contact_information_button') + # FIXME: Required as it's not in GC yet + if widget != None: + id = widget.connect('clicked', self._on_contact_information_menuitem_activate) + self.handlers[id] = widget + + widget = self.xml.get_widget('history_button') + # FIXME: Required as it's not in GC yet + if widget != None: + id = widget.connect('clicked', self._on_history_menuitem_activate) + self.handlers[id] = widget + + widget = self.xml.get_widget('send_file_button') + # FIXME: Required as it's not in GC yet + if widget != None: + id = widget.connect('clicked', self._on_send_file_menuitem_activate) + self.handlers[id] = widget + + widget = self.xml.get_widget('convert_to_gc_button') + # FIXME: Required as it's not in GC yet + if widget != None: + id = widget.connect('clicked', self._on_convert_to_gc_menuitem_activate) + self.handlers[id] = widget + # when/if we do XHTML we will put formatting buttons back widget = self.xml.get_widget('emoticons_button') id = widget.connect('clicked', self.on_emoticons_button_clicked) @@ -1032,6 +1057,10 @@ class ChatControl(ChatControlBase): # Add lock image to show chat encryption self.lock_image = self.xml.get_widget('lock_image') self.lock_tooltip = gtk.Tooltips() + + # Convert to GC icon + img = self.xml.get_widget('convert_to_gc_button_image') + img.set_from_pixbuf(gtkgui_helpers.load_icon('muc_active').get_pixbuf()) # keep timeout id and window obj for possible big avatar # it is on enter-notify and leave-notify so no need to be per jid