on PEUT effacer des caractères :o

This commit is contained in:
louiz@4325f9fc-e183-4c21-96ce-0ab188b42d13 2010-01-27 22:29:28 +00:00
parent 9d5d96c5b0
commit 5a3f8ef18d
3 changed files with 13 additions and 5 deletions

View file

@ -96,7 +96,9 @@ class Connection(Thread):
def process(self, timeout=10): def process(self, timeout=10):
if self.online: if self.online:
self.client.Process(timeout) try:self.client.Process(timeout)
except:
pass
else: else:
log.warning('disconnecting...') log.warning('disconnecting...')
sys.exit() sys.exit()

View file

@ -90,7 +90,7 @@ class Room(object):
return self.add_info("%s is in the room" % (nick)) return self.add_info("%s is in the room" % (nick))
change_nick = stanza.getStatusCode() == '303' change_nick = stanza.getStatusCode() == '303'
for user in self.users: for user in self.users:
if user.nick.encode('utf-8') == nick.encode('utf-8'): if user.nick == nick:
if change_nick: if change_nick:
user.change_nick(stanza.getNick()) user.change_nick(stanza.getNick())
return self.add_info('%s is now known as %s' % (nick, stanza.getNick())) return self.add_info('%s is now known as %s' % (nick, stanza.getNick()))
@ -132,6 +132,7 @@ class Gui(object):
"KEY_END": self.window.input.key_end, "KEY_END": self.window.input.key_end,
"KEY_HOME": self.window.input.key_home, "KEY_HOME": self.window.input.key_home,
"KEY_DOWN": self.window.input.key_down, "KEY_DOWN": self.window.input.key_down,
"KEY_DC": self.window.input.key_dc,
"KEY_BACKSPACE": self.window.input.key_backspace "KEY_BACKSPACE": self.window.input.key_backspace
} }
@ -151,6 +152,8 @@ class Gui(object):
continue continue
elif ord(key) == 10: elif ord(key) == 10:
self.execute() self.execute()
elif ord(key) == 8:
self.window.input.key_backspace()
else: else:
if ord(key) > 190 and ord(key) < 225: if ord(key) > 190 and ord(key) < 225:
key = key+stdscr.getkey() key = key+stdscr.getkey()
@ -250,7 +253,7 @@ class Gui(object):
if command in self.commands.keys(): if command in self.commands.keys():
func = self.commands[command] func = self.commands[command]
func(args) func(args)
return return
if self.current_room().name != 'Info': if self.current_room().name != 'Info':
self.muc.send_message(self.current_room().name, line) self.muc.send_message(self.current_room().name, line)
self.window.input.refresh() self.window.input.refresh()

View file

@ -241,8 +241,11 @@ class Input(Win):
def do_command(self, key): def do_command(self, key):
(y, x) = self.win.getyx() (y, x) = self.win.getyx()
self.text = self.text[:self.pos]+key.decode('utf-8')+self.text[self.pos:] try:
self.win.insstr(key) self.text = self.text[:self.pos]+key.decode('utf-8')+self.text[self.pos:]
self.win.insstr(key)
except:
return
self.win.move(y, x+1) self.win.move(y, x+1)
self.pos += 1 self.pos += 1