def OnEnter(self, widget): text = widget.get_text() if not text: widget.set_text("") return if is_alias(self.frame.np.config.aliases, text): import _thread _thread.start_new_thread(self.threadAlias, (text, )) widget.set_text("") return s = text.split(" ", 1) cmd = s[0] if len(s) == 2 and s[1]: realargs = args = s[1] else: args = self.user realargs = "" if cmd in ("/alias", "/al"): AppendLine(self.ChatScroll, self.frame.np.config.AddAlias(realargs), None, "") if self.frame.np.config.sections["words"]["aliases"]: self.frame.chatrooms.roomsctrl.UpdateCompletions() self.frame.privatechats.UpdateCompletions() elif cmd in ("/unalias", "/un"): AppendLine(self.ChatScroll, self.frame.np.config.Unalias(realargs), None, "") if self.frame.np.config.sections["words"]["aliases"]: self.frame.chatrooms.roomsctrl.UpdateCompletions() self.frame.privatechats.UpdateCompletions() elif cmd in ["/join", "/j"]: self.frame.np.queue.put(slskmessages.JoinRoom(args)) elif cmd in ["/w", "/whois", "/info"]: if args: self.frame.LocalUserInfoRequest(args) self.frame.OnUserInfo(None) elif cmd in ["/b", "/browse"]: if args: self.frame.BrowseUser(args) self.frame.OnUserBrowse(None) elif cmd == "/ip": if args: user = args if user not in self.frame.np.ip_requested: self.frame.np.ip_requested.append(user) self.frame.np.queue.put(slskmessages.GetPeerAddress(user)) elif cmd == "/pm": if realargs: self.frame.privatechats.SendMessage(realargs, None, 1) elif cmd in ["/m", "/msg"]: if realargs: s = realargs.split(" ", 1) user = s[0] if len(s) == 2: msg = s[1] else: msg = None self.frame.privatechats.SendMessage(user, msg) elif cmd in ["/s", "/search"]: if realargs: self.frame.Searches.DoSearch(realargs, 0) self.frame.OnSearch(None) elif cmd in ["/us", "/usearch"]: if realargs: self.frame.Searches.DoSearch(realargs, 3, [self.user]) self.frame.OnSearch(None) elif cmd in ["/rs", "/rsearch"]: if realargs: self.frame.Searches.DoSearch(realargs, 1) self.frame.OnSearch(None) elif cmd in ["/bs", "/bsearch"]: if realargs: self.frame.Searches.DoSearch(realargs, 2) self.frame.OnSearch(None) elif cmd in ["/ad", "/add", "/buddy"]: if args: self.frame.userlist.AddToList(args) elif cmd in ["/rem", "/unbuddy"]: if args: self.frame.userlist.RemoveFromList(args) elif cmd == "/ban": if args: self.frame.BanUser(args) elif cmd == "/ignore": if args: self.frame.IgnoreUser(args) elif cmd == "/ignoreip": if args: self.frame.IgnoreIP(args) elif cmd == "/unban": if args: self.frame.UnbanUser(args) elif cmd == "/unignore": if args: self.frame.UnignoreUser(args) elif cmd == "/ctcpversion": if args: self.frame.privatechats.SendMessage(args, CTCP_VERSION, 1, bytestring=True) elif cmd in ["/clear", "/cl"]: self.ChatScroll.get_buffer().set_text("") elif cmd in ["/a", "/away"]: self.frame.OnAway(None) elif cmd in ["/q", "/quit", "/exit"]: self.frame.OnExit(None) return elif cmd in ["/c", "/close"]: self.OnClose(None) elif cmd == "/now": self.NowPlayingThread() elif cmd == "/rescan": self.frame.OnRescan() elif cmd[: 1] == "/" and self.frame.pluginhandler.TriggerPrivateCommandEvent( self.user, cmd[1:], args): pass elif cmd and cmd[:1] == "/" and cmd != "/me" and cmd[:2] != "//": self.frame.logMessage(_("Command %s is not recognized") % text) return else: if text[:2] == "//": text = text[1:] if self.chats.connected: self.SendMessage(text) widget.set_text("") return widget.set_text("")
def on_enter(self, widget): text = widget.get_text() if not text: widget.set_text("") return if is_alias(text): import _thread _thread.start_new_thread(self.thread_alias, (text, )) widget.set_text("") return s = text.split(" ", 1) cmd = s[0] if len(s) == 2 and s[1]: realargs = args = s[1] else: args = self.user realargs = "" if cmd in ("/alias", "/al"): append_line(self.ChatScroll, add_alias(realargs), None, "") if self.frame.np.config.sections["words"]["aliases"]: self.frame.chatrooms.update_completions() self.frame.privatechats.update_completions() elif cmd in ("/unalias", "/un"): append_line(self.ChatScroll, unalias(realargs), None, "") if self.frame.np.config.sections["words"]["aliases"]: self.frame.chatrooms.update_completions() self.frame.privatechats.update_completions() elif cmd in ["/join", "/j"]: self.frame.np.queue.put(slskmessages.JoinRoom(args)) elif cmd in ["/w", "/whois", "/info"]: if args: self.frame.local_user_info_request(args) self.frame.on_user_info(None) elif cmd in ["/b", "/browse"]: if args: self.frame.browse_user(args) self.frame.on_user_browse(None) elif cmd == "/ip": if args: user = args self.frame.np.ip_requested.add(user) self.frame.np.queue.put(slskmessages.GetPeerAddress(user)) elif cmd == "/pm": if realargs: self.frame.privatechats.send_message(realargs, show_user=True) elif cmd in ["/m", "/msg"]: if realargs: s = realargs.split(" ", 1) user = s[0] if len(s) == 2: msg = s[1] else: msg = None self.frame.privatechats.send_message(user, msg) elif cmd in ["/s", "/search"]: if realargs: self.frame.searches.do_search(realargs, 0) self.frame.on_search(None) elif cmd in ["/us", "/usearch"]: if realargs: self.frame.searches.do_search(realargs, 3, [self.user]) self.frame.on_search(None) elif cmd in ["/rs", "/rsearch"]: if realargs: self.frame.searches.do_search(realargs, 1) self.frame.on_search(None) elif cmd in ["/bs", "/bsearch"]: if realargs: self.frame.searches.do_search(realargs, 2) self.frame.on_search(None) elif cmd in ["/ad", "/add", "/buddy"]: if args: self.frame.userlist.add_to_list(args) elif cmd in ["/rem", "/unbuddy"]: if args: self.frame.userlist.remove_from_list(args) elif cmd == "/ban": if args: self.frame.ban_user(args) elif cmd == "/ignore": if args: self.frame.ignore_user(args) elif cmd == "/ignoreip": if args: self.frame.ignore_ip(args) elif cmd == "/unban": if args: self.frame.unban_user(args) elif cmd == "/unignore": if args: self.frame.unignore_user(args) elif cmd == "/ctcpversion": if args: self.frame.privatechats.send_message(args, CTCP_VERSION, show_user=True, bytestring=True) elif cmd in ["/clear", "/cl"]: self.ChatScroll.get_buffer().set_text("") elif cmd in ["/a", "/away"]: self.frame.on_away(None) elif cmd in ["/q", "/quit", "/exit"]: self.frame.on_quit(None) return elif cmd in ["/c", "/close"]: self.on_close(None) elif cmd == "/now": self.display_now_playing() elif cmd == "/rescan": self.frame.on_rescan() elif cmd[: 1] == "/" and self.frame.np.pluginhandler.trigger_private_command_event( self.user, cmd[1:], args): pass elif cmd and cmd[:1] == "/" and cmd != "/me" and cmd[:2] != "//": log.add(_("Command %s is not recognized"), text) return else: if text[:2] == "//": text = text[1:] if self.chats.connected: self.send_message(text) widget.set_text("") return widget.set_text("")