def event_link_clicked(self, url): url_string = url.toString() if 'file' in urlparse.parse_qs(urlparse.urlparse(url_string).query): msgbox = QMessageBox() msgbox.setWindowTitle('Installing') msgbox.setText('Installing theme. Please wait...') msgbox.setStandardButtons(0) msgbox.setAttribute(Qt.WA_DeleteOnClose) msgbox.setWindowModality(Qt.NonModal) msgbox.show() msgbox.repaint( ) # Qt didn't want to show the text so we force a repaint # Download and install the theme package = self.module.download( 'http://localhost/test/download.php?file=2800&name=Fat-flat.xpf' ) #package = self.module.download(url_string) try: self.module.install(package) msgbox.close() complete_msgbox = QMessageBox() complete_msgbox.setWindowTitle('Complete') complete_msgbox.setText('Install complete.') complete_msgbox.setStandardButtons(QMessageBox.Ok) complete_msgbox.setAttribute(Qt.WA_DeleteOnClose) complete_msgbox.exec_() except: msgbox.close() print "Unexpected error:", sys.exc_info()[:2] failed_msgbox = QMessageBox() failed_msgbox.setWindowTitle('Failed') failed_msgbox.setText( 'Install failed. Please try again later.') failed_msgbox.setStandardButtons(QMessageBox.Ok) failed_msgbox.setAttribute(Qt.WA_DeleteOnClose) failed_msgbox.exec_() else: QDesktopServices.openUrl(url)
def event_link_clicked(self, url): url_string = url.toString() if 'file' in urlparse.parse_qs(urlparse.urlparse(url_string).query): msgbox = QMessageBox() msgbox.setWindowTitle('Installing') msgbox.setText('Installing theme. Please wait...') msgbox.setStandardButtons(0) msgbox.setAttribute(Qt.WA_DeleteOnClose) msgbox.setWindowModality(Qt.NonModal) msgbox.show() msgbox.repaint() # Qt didn't want to show the text so we force a repaint # Download and install the theme package = self.module.download('http://localhost/test/download.php?file=2800&name=Fat-flat.xpf') #package = self.module.download(url_string) try: self.module.install(package) msgbox.close() complete_msgbox = QMessageBox() complete_msgbox.setWindowTitle('Complete') complete_msgbox.setText('Install complete.') complete_msgbox.setStandardButtons(QMessageBox.Ok) complete_msgbox.setAttribute(Qt.WA_DeleteOnClose) complete_msgbox.exec_() except: msgbox.close() print "Unexpected error:", sys.exc_info()[:2] failed_msgbox = QMessageBox() failed_msgbox.setWindowTitle('Failed') failed_msgbox.setText('Install failed. Please try again later.') failed_msgbox.setStandardButtons(QMessageBox.Ok) failed_msgbox.setAttribute(Qt.WA_DeleteOnClose) failed_msgbox.exec_() else: QDesktopServices.openUrl(url)