diff options
author | kali <kali@leap.se> | 2012-10-08 07:19:09 +0900 |
---|---|---|
committer | kali <kali@leap.se> | 2012-10-08 07:19:09 +0900 |
commit | 3a77603eae5fea0b1efb226860e0264ccf96f41b (patch) | |
tree | 19dced0267d7840d142ff9d771548f3c3f39fcbb /src/leap/baseapp/leap_app.py | |
parent | c7cfb8fcef773b84738e36b6d0c27487cf8e952a (diff) | |
parent | 8a594577660d78a4f0f9d3c5f5902dff3911e010 (diff) |
Merge branch 'feature/firstrun-wizard' into develop
Diffstat (limited to 'src/leap/baseapp/leap_app.py')
-rw-r--r-- | src/leap/baseapp/leap_app.py | 54 |
1 files changed, 51 insertions, 3 deletions
diff --git a/src/leap/baseapp/leap_app.py b/src/leap/baseapp/leap_app.py index 98ca292e..460d1269 100644 --- a/src/leap/baseapp/leap_app.py +++ b/src/leap/baseapp/leap_app.py @@ -1,5 +1,9 @@ import logging +import sip +sip.setapi('QVariant', 2) + +from PyQt4 import QtCore from PyQt4 import QtGui from leap.gui import mainwindow_rc @@ -23,9 +27,9 @@ class MainWindowMixin(object): widget = QtGui.QWidget() self.setCentralWidget(widget) + mainLayout = QtGui.QVBoxLayout() # add widgets to layout #self.createWindowHeader() - mainLayout = QtGui.QVBoxLayout() #mainLayout.addWidget(self.headerBox) mainLayout.addWidget(self.statusIconBox) if self.debugmode: @@ -33,11 +37,51 @@ class MainWindowMixin(object): mainLayout.addWidget(self.loggerBox) widget.setLayout(mainLayout) + self.createMainActions() + self.createMainMenus() + self.setWindowTitle("LEAP Client") self.set_app_icon() - self.resize(400, 300) self.set_statusbarMessage('ready') - logger.debug('set ready.........') + + def createMainActions(self): + #self.openAct = QtGui.QAction("&Open...", self, shortcut="Ctrl+O", + #triggered=self.open) + + self.firstRunWizardAct = QtGui.QAction( + "&First run wizard...", self, + triggered=self.launch_first_run_wizard) + self.aboutAct = QtGui.QAction("&About", self, triggered=self.about) + + #self.aboutQtAct = QtGui.QAction("About &Qt", self, + #triggered=QtGui.qApp.aboutQt) + + def createMainMenus(self): + self.connMenu = QtGui.QMenu("&Connections", self) + #self.viewMenu.addSeparator() + self.connMenu.addAction(self.quitAction) + + self.settingsMenu = QtGui.QMenu("&Settings", self) + self.settingsMenu.addAction(self.firstRunWizardAct) + + self.helpMenu = QtGui.QMenu("&Help", self) + self.helpMenu.addAction(self.aboutAct) + #self.helpMenu.addAction(self.aboutQtAct) + + self.menuBar().addMenu(self.connMenu) + self.menuBar().addMenu(self.settingsMenu) + self.menuBar().addMenu(self.helpMenu) + + def launch_first_run_wizard(self): + settings = QtCore.QSettings() + settings.setValue('FirstRunWizardDone', False) + logger.debug('should run first run wizard again...') + + from leap.gui.firstrunwizard import FirstRunWizard + wizard = FirstRunWizard( + parent=self, + success_cb=self.initReady.emit) + wizard.show() def set_app_icon(self): icon = QtGui.QIcon(APP_LOGO) @@ -88,6 +132,10 @@ class MainWindowMixin(object): """ cleans state before shutting down app. """ + # save geometry for restoring + settings = QtCore.QSettings() + settings.setValue("Geometry", self.saveGeometry()) + # TODO:make sure to shutdown all child process / threads # in conductor # XXX send signal instead? |