Project/UicCompilerOptionsDialog.py

changeset 6597
dc668f774d3d
child 6645
ad476851d7e0
diff -r 2d82cd481adc -r dc668f774d3d Project/UicCompilerOptionsDialog.py
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Project/UicCompilerOptionsDialog.py	Sat Nov 24 15:37:04 2018 +0100
@@ -0,0 +1,56 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2018 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing a dialog to enter some non-common uic compiler options.
+"""
+
+from __future__ import unicode_literals
+
+from PyQt5.QtCore import PYQT_VERSION
+from PyQt5.QtWidgets import QDialog
+
+from .Ui_UicCompilerOptionsDialog import Ui_UicCompilerOptionsDialog
+
+
+class UicCompilerOptionsDialog(QDialog, Ui_UicCompilerOptionsDialog):
+    """
+    Class implementing a dialog to enter some non-common uic compiler options.
+    """
+    def __init__(self, compilerOptions, compiler, parent=None):
+        """
+        Constructor
+        
+        @param compilerOptions dictionary containing the uic compiler options
+        @type dict
+        @param compiler name of the uic compiler executable
+        @type str
+        @param parent reference to the parent widget
+        @type QWidget
+        """
+        super(UicCompilerOptionsDialog, self).__init__(parent)
+        self.setupUi(self)
+        
+        self.packageEdit.setText(compilerOptions["Package"])
+        self.suffixEdit.setText(compilerOptions["RcSuffix"])
+        
+        if 'uic5' not in compiler or PYQT_VERSION < 0x050600:
+            # only supported for PyQt5 >= 5.6 (April 2016)
+            self.packageGroup.setEnabled(False)
+        
+        msh = self.minimumSizeHint()
+        self.resize(max(self.width(), msh.width()), msh.height())
+    
+    def getData(self):
+        """
+        Public method to get the entered data.
+        
+        @return tuple containing the package and the rc-file suffix
+        @rtype tuple of (str, str)
+        """
+        return (
+            self.packageEdit.text().strip(),
+            self.suffixEdit.text().strip(),
+        )

eric ide

mercurial