Example #1
0
    def on_my_state_changed(self, statebox):
        tree_iter = statebox.get_active_iter()
        if tree_iter != None:
            model = statebox.get_model()
            state = model[tree_iter][0].lower()

            UserInputParser.state_changed(StateCodes.get_code_by_state(state))
Example #2
0
    def update(self):
        if self.state and not self.tried_to_connect and not self.out_messages.empty() and not self.is_connected:
            self.tried_to_connect = True
            UserInputParser.connect_to_peer(self.username)
            
        #send & receive messages
        if self.sock and self.is_connected:
            try:
                data = self.sock.recv(512)
                if data:
                    while not data.endswith(';'):
                        data += u.sock.recv(1)
                    messages = [m for m in data.split(';') if m != '']
                    for m in messages:
                        msg = Message.Message.from_data(m)
                        self.handle_incoming_message(msg)
                        print msg.to_console()
                else:
                    self.sock.close()
                    self.sock = None
                    print 'friend ' + self.username + ' had disconnected'
                    self.is_connected = False
                    self.tried_to_connect = False
            except socket.error: pass


            try:
                while not self.out_messages.empty():
                    print 'sent message to', self.username
                    self.sock.send(self.out_messages.get().to_data() + ';')
            except socket.error:
                self.is_connected = False
Example #3
0
 def send(self, widget, data=None):
     if data and data.keyval != 65293:
         return False
     if self.current_chat_window_username:
         if self.current_chat_window.textbuffer.get_char_count():
             start, end = self.current_chat_window.textbuffer.get_bounds()
             UserInputParser.send_message(   self.current_chat_window_username, 
                                             self.current_chat_window.textbuffer.get_text(start, end, True))
             self.current_chat_window.textbuffer.delete(start, end)
     return True
Example #4
0
 def decline_click(self, widget, user):
     UserInputParser.decline_friend_request(user)
     self.destroy()
Example #5
0
 def accept_click(self, widget, user):
     UserInputParser.accept_friend_request(user)
     self.destroy()
Example #6
0
 def send_friend_request(self, widget, data=None):
     name = data.get_text()
     if name:
         UserInputParser.send_friend_request(name)
         data.set_text('')