diff options
Diffstat (limited to 'src/leap/baseapp/dialogs.py')
| -rw-r--r-- | src/leap/baseapp/dialogs.py | 36 | 
1 files changed, 25 insertions, 11 deletions
| diff --git a/src/leap/baseapp/dialogs.py b/src/leap/baseapp/dialogs.py index 4b1b5b62..d4acb09d 100644 --- a/src/leap/baseapp/dialogs.py +++ b/src/leap/baseapp/dialogs.py @@ -1,33 +1,47 @@ +import logging +  from PyQt4.QtGui import (QDialog, QFrame, QPushButton, QLabel, QMessageBox) +logger = logging.getLogger(name=__name__) +  class ErrorDialog(QDialog): -    def __init__(self, parent=None): +    def __init__(self, parent=None, errtype=None, msg=None, label=None):          super(ErrorDialog, self).__init__(parent) -          frameStyle = QFrame.Sunken | QFrame.Panel          self.warningLabel = QLabel()          self.warningLabel.setFrameStyle(frameStyle)          self.warningButton = QPushButton("QMessageBox.&warning()") +        if msg is not None: +            self.msg = msg +        if label is not None: +            self.label = label +        if errtype == "critical": +            self.criticalMessage(self.msg, self.label) +      def warningMessage(self, msg, label):          msgBox = QMessageBox(QMessageBox.Warning,                               "QMessageBox.warning()", msg,                               QMessageBox.NoButton, self)          msgBox.addButton("&Ok", QMessageBox.AcceptRole) -        msgBox.addButton("&Cancel", QMessageBox.RejectRole)          if msgBox.exec_() == QMessageBox.AcceptRole: -            self.warningLabel.setText("Save Again") -        else: -            self.warningLabel.setText("Continue") +            pass +            # do whatever we want to do after +            # closing the dialog. we can pass that +            # in the constructor      def criticalMessage(self, msg, label):          msgBox = QMessageBox(QMessageBox.Critical,                               "QMessageBox.critical()", msg,                               QMessageBox.NoButton, self)          msgBox.addButton("&Ok", QMessageBox.AcceptRole) -        msgBox.addButton("&Cancel", QMessageBox.RejectRole) -        if msgBox.exec_() == QMessageBox.AcceptRole: -            self.warningLabel.setText("Save Again") -        else: -            self.warningLabel.setText("Continue") +        msgBox.exec_() + +        # It's critical, so we exit. +        # We should better emit a signal and connect it +        # with the proper shutdownAndQuit method, but +        # this suffices for now. +        logger.info('Quitting') +        import sys +        sys.exit() | 
