Example #1
0
    def __init__(self, app_, parent=None):
        self.app = app_

        # style = app.style()
        # icon = QtGui.QIcon(style.standardPixmap(QtGui.QStyle.SP_ComputerIcon))
        icon = QtGui.QIcon(':/images/img/uds.png')

        QtGui.QSystemTrayIcon.__init__(self, icon, parent)
        self.menu = QtGui.QMenu(parent)
        exitAction = self.menu.addAction("About")
        exitAction.triggered.connect(self.about)
        self.setContextMenu(self.menu)
        self.ipc = MessagesProcessor()
        self.sessionStart = datetime.datetime.now()
        self.maxIdleTime = None
        self.showIdleWarn = True
        self.maxSessionTime = None
        self.showMaxSessionWarn = True
        self.timer = QtCore.QTimer()
        self.timer.timeout.connect(self.checkTimers)

        if self.ipc.isAlive() is False:
            raise Exception('No connection to service, exiting.')

        self.stopped = False

        self.ipc.displayMessage.connect(self.displayMessage)
        self.ipc.exit.connect(self.quit)
        self.ipc.script.connect(self.executeScript)
        self.ipc.logoff.connect(self.logoff)
        self.ipc.information.connect(self.information)

        # Pre generate a request for information (general parameters) to daemon/service
        self.ipc.requestInformation()

        self.aboutDlg = UDSAboutDialog()
        self.msgDlg = UDSMessageDialog()

        self.counter = 0

        self.resetTimervars()
        self.timer.start(TIMER_TIMEOUT *
                         1000)  # Launch idle checking every 5 seconds

        self.ipc.start()
        # If this is running, it's because he have logged in
        self.ipc.sendLogin(operations.getCurrentUser())
Example #2
0
    def quit(self, logoff=False):
        global doLogoff
        logger.debug('Quit invoked')
        if self.stopped is False:
            self.stopped = True
            try:
                # If we close Client, send Logoff to Broker
                self.ipc.sendLogout(operations.getCurrentUser())
                self.timer.stop()
                self.ipc.stop()
            except Exception:
                # May we have lost connection with server, simply exit in that case
                pass

        doLogoff = logoff

        self.app.quit()
Example #3
0
    def quit(self, logoff=False):
        global doLogoff
        logger.debug('Quit invoked')
        if self.stopped is False:
            self.stopped = True
            try:
                # If we close Client, send Logoff to Broker
                self.ipc.sendLogout(operations.getCurrentUser())
                self.timer.stop()
                self.ipc.stop()
            except Exception:
                # May we have lost connection with server, simply exit in that case
                pass

        doLogoff = logoff

        self.app.quit()
Example #4
0
    def __init__(self, app_, parent=None):
        self.app = app_

        # style = app.style()
        # icon = QtGui.QIcon(style.standardPixmap(QtGui.QStyle.SP_ComputerIcon))
        icon = QtGui.QIcon(':/images/img/uds.png')

        QtGui.QSystemTrayIcon.__init__(self, icon, parent)
        self.menu = QtGui.QMenu(parent)
        exitAction = self.menu.addAction("About")
        exitAction.triggered.connect(self.about)
        self.setContextMenu(self.menu)
        self.ipc = MessagesProcessor()
        self.sessionStart = datetime.datetime.now()
        self.maxIdleTime = None
        self.showIdleWarn = True
        self.maxSessionTime = None
        self.showMaxSessionWarn = True
        self.timer = QtCore.QTimer()
        self.timer.timeout.connect(self.checkTimers)

        if self.ipc.isAlive() is False:
            raise Exception('No connection to service, exiting.')

        self.stopped = False

        self.ipc.displayMessage.connect(self.displayMessage)
        self.ipc.exit.connect(self.quit)
        self.ipc.script.connect(self.executeScript)
        self.ipc.logoff.connect(self.logoff)
        self.ipc.information.connect(self.information)

        # Pre generate a request for information (general parameters) to daemon/service
        self.ipc.requestInformation()

        self.aboutDlg = UDSAboutDialog()
        self.msgDlg = UDSMessageDialog()

        self.counter = 0

        self.timer.start(5000)  # Launch idle checking every 5 seconds
        self.graceTimerShots = 6  # Start counting for idle after 30 seconds after login, got on windows some "instant" logout because of idle timer not being reset??

        self.ipc.start()
        # If this is running, it's because he have logged in
        self.ipc.sendLogin(operations.getCurrentUser())
Example #5
0
    def __init__(self, app_, parent=None):
        self.app = app_

        style = app.style()
        icon = QtGui.QIcon(style.standardPixmap(QtGui.QStyle.SP_ComputerIcon))

        QtGui.QSystemTrayIcon.__init__(self, icon, parent)
        self.menu = QtGui.QMenu(parent)
        exitAction = self.menu.addAction("About")
        exitAction.triggered.connect(self.about)
        self.setContextMenu(self.menu)
        self.ipc = MessagesProcessor()
        self.maxIdleTime = None
        self.timer = QtCore.QTimer()
        self.timer.timeout.connect(self.checkIdle)
        self.showIdleWarn = True

        if self.ipc.isAlive() is False:
            raise Exception('no connection to service, exiting')

        self.stopped = False

        self.ipc.displayMessage.connect(self.displayMessage)
        self.ipc.exit.connect(self.quit)
        self.ipc.script.connect(self.executeScript)
        self.ipc.logoff.connect(self.logoff)
        self.ipc.information.connect(self.information)

        # Pre generate a request for information (general parameters) to daemon/service
        self.ipc.requestInformation()

        self.aboutDlg = UDSAboutDialog()
        self.msgDlg = UDSMessageDialog()

        self.counter = 0

        self.timer.start(5000)  # Launch idle checking every 5 seconds
        self.graceTimerShots = 6  # Start counting for idle after 30 seconds after login, got on windows some "instant" logout because of idle timer not being reset??

        self.ipc.start()
        # If this is running, it's because he have logged in
        self.ipc.sendLogin(operations.getCurrentUser())