def __init__( self, seedNodes, reactor ) : QMainWindow.__init__( self ) self.ui = Ui_MainWindow() self.ui.setupUi( self ) self._setupIcons() self.seedNodes = seedNodes self.reactor = reactor self.session = UserSession( seedNodes, reactor ) self.sm = self.session.sm self.ev = Eventer() self.profile = None self.baseTitle = str(self.windowTitle()) self.exitAfterOffline = False self.reconnector = None self.keyInfoDialog = None self.addContactDialog = None self.sm.insertCallback( self._onStateChange ) self.connect( self.ui.createKeyButton, SIGNAL('clicked()'), self.ui.actionCreateKey.trigger ) self.connect( self.ui.createKeyButton1, SIGNAL('clicked()'), self.ui.actionCreateKey.trigger ) self.connect( self.ui.goOnlineButton, SIGNAL('clicked()'), self.ui.actionGoOnline.trigger ) self.ui.contacts.setWrapping( True ) self.connect( self.ui.contacts, SIGNAL('customContextMenuRequested(const QPoint&)'), self._onContactsContextMenuRequested ) self.connect( self.ui.contacts, SIGNAL('itemDoubleClicked(QListWidgetItem*)'), self._onContactDoubleClicked ) self.contextMenu = QMenu() self.contextMenu.addAction( self.ui.actionCheckStatus ) self.contextMenu.addAction( self.ui.actionRemoveContact ) self.contextMenu.addAction( self.ui.actionContactInfo ) self.connect( self.contextMenu, SIGNAL('triggered(QAction*)'), self._onContextMenuAction ) self.actionManager = ActionManager( self.contextMenu ) self.appletServer = AppletServer( self.session, self.actionManager, self.reactor ) self.statusChecker = StatusChecker( self.ui.contacts, self.session, self.ev, self.reactor ) self.contactInfoDialogs = {} self.trayMenu = QMenu( self ) self.trayMenu.addAction( self.ui.actionExit ) if HAS_TRAY : self.trayIcon = TrayIcon( QPixmap(':/images/cspace_offline.png'), 'CSpace', self.trayMenu, self ) self.connect( self.trayIcon, SIGNAL('clicked(const QPoint&,int)'), self._onTrayClicked ) self.trayIcon.show() else : self.trayIcon = None self.editPermissionsDialog = None self.autoUpdater = AutoUpdater( self.reactor ) self.autoUpdater.setUpdateCallback( self._onUpdateDownloaded ) self._updateUI() self._doCheckSettings()