summaryrefslogtreecommitdiff
path: root/src/leap/baseapp/leap_app.py
diff options
context:
space:
mode:
authorkali <kali@leap.se>2012-09-04 05:20:31 +0900
committerkali <kali@leap.se>2012-09-04 05:20:31 +0900
commit3fbc512a49923ac73d2413a083e0bb1f7e163866 (patch)
treea858c2eaac2e095082abe8f4a4e7878d4fadd825 /src/leap/baseapp/leap_app.py
parentd75ef7982aaf96572ea26b1986b3578d9b1eca06 (diff)
actual split of classes into own modules
still a bit rough, but makes everything a bit more readable.
Diffstat (limited to 'src/leap/baseapp/leap_app.py')
-rw-r--r--src/leap/baseapp/leap_app.py57
1 files changed, 57 insertions, 0 deletions
diff --git a/src/leap/baseapp/leap_app.py b/src/leap/baseapp/leap_app.py
new file mode 100644
index 00000000..fb736ee3
--- /dev/null
+++ b/src/leap/baseapp/leap_app.py
@@ -0,0 +1,57 @@
+from PyQt4 import QtGui
+
+from leap.gui import mainwindow_rc
+
+
+class MainWindow(object):
+
+ def createWindowHeader(self):
+ """
+ description lines for main window
+ """
+ self.headerBox = QtGui.QGroupBox()
+ self.headerLabel = QtGui.QLabel("<font size=40><b>E</b>ncryption \
+<b>I</b>nternet <b>P</b>roxy</font>")
+ self.headerLabelSub = QtGui.QLabel("<i>trust your \
+technolust</i>")
+
+ pixmap = QtGui.QPixmap(':/images/leapfrog.jpg')
+ frog_lbl = QtGui.QLabel()
+ frog_lbl.setPixmap(pixmap)
+
+ headerLayout = QtGui.QHBoxLayout()
+ headerLayout.addWidget(frog_lbl)
+ headerLayout.addWidget(self.headerLabel)
+ headerLayout.addWidget(self.headerLabelSub)
+ headerLayout.addStretch()
+ self.headerBox.setLayout(headerLayout)
+
+ def set_statusbarMessage(self, msg):
+ self.statusBar().showMessage(msg)
+
+ def closeEvent(self, event):
+ """
+ redefines close event (persistent window behaviour)
+ """
+ if self.trayIcon.isVisible() and not self.debugmode:
+ QtGui.QMessageBox.information(
+ self, "Systray",
+ "The program will keep running "
+ "in the system tray. To "
+ "terminate the program, choose "
+ "<b>Quit</b> in the "
+ "context menu of the system tray entry.")
+ self.hide()
+ event.ignore()
+ if self.debugmode:
+ self.cleanupAndQuit()
+
+ def cleanupAndQuit(self):
+ """
+ cleans state before shutting down app.
+ """
+ # TODO:make sure to shutdown all child process / threads
+ # in conductor
+ # XXX send signal instead?
+ self.conductor.cleanup()
+ QtGui.qApp.quit()