diff --git a/combobox.py b/combobox.py index bb6f3214..e62abf00 100644 --- a/combobox.py +++ b/combobox.py @@ -1,7 +1,14 @@ -import sys -from PyQt5.QtCore import * -from PyQt5.QtGui import * -from PyQt5.QtWidgets import * +try: + from PyQt5.QtWidgets import QWidget, QHBoxLayout, QComboBox +except ImportError: + # needed for py3+qt4 + # Ref: + # http://pyqt.sourceforge.net/Docs/PyQt4/incompatible_apis.html + # http://stackoverflow.com/questions/21217399/pyqt4-qtcore-qvariant-object-instead-of-a-string + if sys.version_info.major >= 3: + import sip + sip.setapi('QVariant', 2) + from PyQt4.QtWidgets import QWidget, QHBoxLayout, QComboBox class ComboBox(QWidget): @@ -12,14 +19,14 @@ class ComboBox(QWidget): self.cb = QComboBox() self.items = items self.cb.addItems(self.items) - + self.cb.currentIndexChanged.connect(parent.comboSelectionChanged) - + layout.addWidget(self.cb) self.setLayout(layout) - + def update_items(self, items): self.items = items self.cb.clear() - self.cb.addItems(self.items) \ No newline at end of file + self.cb.addItems(self.items)