Exemple #1
0
	def __init__(self, parent=None):
		QtGui.QMainWindow.__init__(self, parent)
		self.ui = Ui_VncInterface()
		self.ui.setupUi(self)
		# self.show()
		self.ui.scrollArea.setFocusPolicy(QtCore.Qt.ClickFocus)
		self.vncScreen = pyvncScreen()
		self.ui.scrollArea.setWidget(self.vncScreen)
		self.setFocusProxy(self.vncScreen)
		QtCore.QObject.connect(self.ui.actionConnectScreen, QtCore.SIGNAL("toggled (bool)"), self.connectScreen)
		self.screenParameters = None
		self.menuRemoteScreen = self.ui.menuRemoteScreen
		self.menuBar = self.ui.menuBar
		self.toolBar = self.ui.toolBar
Exemple #2
0
class pyvncInterface(QtGui.QMainWindow):
	def __init__(self, parent=None):
		QtGui.QMainWindow.__init__(self, parent)
		self.ui = Ui_VncInterface()
		self.ui.setupUi(self)
		# self.show()
		self.ui.scrollArea.setFocusPolicy(QtCore.Qt.ClickFocus)
		self.vncScreen = pyvncScreen()
		self.ui.scrollArea.setWidget(self.vncScreen)
		self.setFocusProxy(self.vncScreen)
		QtCore.QObject.connect(self.ui.actionConnectScreen, QtCore.SIGNAL("toggled (bool)"), self.connectScreen)
		self.screenParameters = None
		self.menuRemoteScreen = self.ui.menuRemoteScreen
		self.menuBar = self.ui.menuBar
		self.toolBar = self.ui.toolBar
	def setScreenParameters(self, parameters=None):
		"""Method "setScreenParameters" that set the vnc-session connection parameters which are received from a protocol command and launched from a button interaction.
		"""
		if parameters:
			self.screenParameters = parameters
			
		else:	
			hostDisplay, ok = QtGui.QInputDialog.getText(self, self.tr("Parameters Screen"), self.tr("Host:Display"))
			hostDisplayList = hostDisplay.split(":")
			if ok and hostDisplayList.count() == 2:
				host = hostDisplayList[0]
				display = hostDisplayList[1]
				displayNum, ok = display.toInt()
				if ok:
					passwd, ok = QtGui.QInputDialog.getText(self, self.tr("Parameters Screen"), self.tr("Password"), QtGui.QLineEdit.Password)
					if ok:
						self.screenParameters = host, displayNum, passwd
						
	def launch(self):
		self.vncScreen.disconnect()
		print "lauch screen"
		self.ui.actionConnectScreen.setChecked(True)
	def stop(self):
		
		self.ui.actionConnectScreen.setChecked(False)
	def connectScreen(self, abilitated):
		print abilitated
		if abilitated:
			if not self.screenParameters:
				self.setScreenParameters()
			if self.screenParameters:
				host, display, passwd = self.screenParameters
				connected = self.vncScreen.connect(host, display, passwd)
				if connected:
					self.emit(QtCore.SIGNAL("remoteScreenRegistrated(bool)"), True)
				else: 
					self.emit(QtCore.SIGNAL("remoteScreenRegistrated(bool)"), False)
					self.ui.actionConnectScreen.setChecked(False)
			else:
				self.ui.actionConnectScreen.setChecked(False)
		else:
			self.vncScreen.disconnect()
			self.screenParameters = False

	def closeEvent(self, closeEvent):
		self.vncScreen.close()