Few changed in console ui

Fixed room changing
This commit is contained in:
Uriziel 2012-10-15 09:34:44 +02:00
parent ce25725ddb
commit a61aaadb25
2 changed files with 24 additions and 24 deletions

View File

@ -51,11 +51,11 @@ class SyncplayClient(object):
self.ui = UiManager(self, ui) self.ui = UiManager(self, ui)
self.userlist = SyncplayUserlist(self.ui) self.userlist = SyncplayUserlist(self.ui)
if(args.room == None or args.room == ''): if(args.room == None or args.room == ''):
room = 'default' args.room = 'default'
self.defaultRoom = args.room self.defaultRoom = args.room
self.playerPositionBeforeLastSeek = 0.0 self.playerPositionBeforeLastSeek = 0.0
self.setUsername(args.name) self.setUsername(args.name)
self.setRoom(room) self.setRoom(args.room)
if(args.password): if(args.password):
args.password = hashlib.md5(args.password).hexdigest() args.password = hashlib.md5(args.password).hexdigest()
self._serverPassword = args.password self._serverPassword = args.password
@ -256,6 +256,11 @@ class SyncplayClient(object):
def setRoom(self, roomName): def setRoom(self, roomName):
self.userlist.currentUser.room = roomName self.userlist.currentUser.room = roomName
def sendRoom(self):
room = self.userlist.currentUser.room
if(self._protocol and self._protocol.logged and room):
self._protocol.sendRoomSetting(room)
def getRoom(self): def getRoom(self):
return self.userlist.currentUser.room return self.userlist.currentUser.room

View File

@ -17,18 +17,14 @@ class ConsoleUI(threading.Thread):
self._syncplayClient = client self._syncplayClient = client
def run(self): def run(self):
try: while True:
while True: data = raw_input()
data = raw_input() data = data.rstrip('\n\r')
data = data.rstrip('\n\r') if(not self.promptMode.isSet()):
if(not self.promptMode.isSet()): self.PromptResult = data
self.PromptResult = data self.promptMode.set()
self.promptMode.set() elif(self._syncplayClient):
elif(self._syncplayClient): self._executeCommand(data)
self._executeCommand(data)
except:
self._syncplayClient.protocolFactory.stopRetrying()
def promptFor(self, prompt = ">", message = ""): def promptFor(self, prompt = ">", message = ""):
if message <> "": if message <> "":
@ -38,7 +34,7 @@ class ConsoleUI(threading.Thread):
self.promptMode.wait() self.promptMode.wait()
return self.PromptResult return self.PromptResult
def showMessage(self, message, noTimestamp): def showMessage(self, message, noTimestamp = False):
if(os.name == "nt"): if(os.name == "nt"):
message = message.encode('ascii','replace') message = message.encode('ascii','replace')
if(noTimestamp): if(noTimestamp):
@ -63,21 +59,20 @@ class ConsoleUI(threading.Thread):
else: else:
room = self._syncplayClient.defaultRoom room = self._syncplayClient.defaultRoom
self._syncplayClient.setRoom(room) self._syncplayClient.setRoom(room)
self._syncplayClient.sendRoom()
elif data == "r": elif data == "r":
tmp_pos = self._syncplayClient.getPlayerPosition() tmp_pos = self._syncplayClient.getPlayerPosition()
self._syncplayClient.setPosition(self._syncplayClient.playerPositionBeforeLastSeek) self._syncplayClient.setPosition(self._syncplayClient.playerPositionBeforeLastSeek)
self._syncplayClient.playerPositionBeforeLastSeek = tmp_pos self._syncplayClient.playerPositionBeforeLastSeek = tmp_pos
elif data == "p": elif data == "p":
self._syncplayClient.setPaused(not self._syncplayClient.getPlayerPaused()) self._syncplayClient.setPaused(not self._syncplayClient.getPlayerPaused())
elif data == "k": #TODO: remove?
self._syncplayClient.stop()
elif data == 'help': elif data == 'help':
self.showMessage( "Available commands:" ) self.showMessage( "Available commands:", True)
self.showMessage( "\thelp - this help" ) self.showMessage( "\thelp - this help", True )
self.showMessage( "\tr - revert last seek" ) self.showMessage( "\tr - revert last seek", True )
self.showMessage( "\tp - toggle pause" ) self.showMessage( "\tp - toggle pause", True )
self.showMessage( "\troom [name] - change room" ) self.showMessage( "\troom [name] - change room", True )
self.showMessage("Syncplay version: %s" % syncplay.version) self.showMessage("Syncplay version: {}".format(syncplay.version), True)
self.showMessage("More info available at: %s" % syncplay.projectURL) self.showMessage("More info available at: {}".format(syncplay.projectURL), True)
else: else:
self.showMessage( "Unrecognized command, type 'help' for list of available commands" ) self.showMessage( "Unrecognized command, type 'help' for list of available commands" )