def __init__(self, parent=None, close_cb=None, animationDuration=200): super(Animator, self).__init__(parent) self.animationDuration = animationDuration self.toggleAnimation = QtCore.QParallelAnimationGroup() if close_cb is not None: self.toggleAnimation.finished.connect(close_cb) self.contentArea = QtWidgets.QScrollArea(maximumHeight=0, minimumHeight=0, minimumWidth=500) self.contentArea.setStyleSheet( "QScrollArea { background-color: rgba(58 58, 58, 1); border: none;}" ) self.contentArea.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) toggleAnimation = self.toggleAnimation toggleAnimation.addAnimation( QtCore.QPropertyAnimation(self, b"minimumHeight")) toggleAnimation.addAnimation( QtCore.QPropertyAnimation(self, b"maximumHeight")) toggleAnimation.addAnimation( QtCore.QPropertyAnimation(self.contentArea, b"maximumHeight")) mainLayout = QtWidgets.QVBoxLayout(self) mainLayout.setSpacing(0) mainLayout.setContentsMargins(0, 0, 0, 0) mainLayout.addWidget(self.contentArea)
def __init__(self, data=None): super (ParmWindow, self).__init__() self.data = data self.parms = data["parms"] #self.file_name = data["file_name"] self.node_path = data["node_path"] self.node_name = data["node_name"] self.file_path = data["file_path"] self.preferences = self.populateData() def addCheckBox(checkbox_name): checkbox = QtWidgets.QCheckBox(checkbox_name) return checkbox self.save = QtWidgets.QPushButton("save") self.refresh = QtWidgets.QPushButton("refresh") self.select_all = QtWidgets.QPushButton("select_all") self.deselect_all = QtWidgets.QPushButton("deselect_all") self.onCreate() listBox = QtWidgets.QVBoxLayout(self) self.setLayout(listBox) scroll = QtWidgets.QScrollArea(self) listBox.addWidget(self.select_all) listBox.addWidget(self.deselect_all) listBox.addWidget(self.save) listBox.addWidget(self.refresh) listBox.addWidget(scroll) scroll.setWidgetResizable(True) scrollContent = QtWidgets.QWidget(scroll) self.scrollLayout = QtWidgets.QVBoxLayout(scrollContent) scrollContent.setLayout(self.scrollLayout) for i,(p,v) in enumerate(sorted(self.preferences.items(), key=operator.itemgetter(0))) #print i, p, v #print self.preferences[p] #for i, p in enumerate(self.preferences.keys()): self.cb = addCheckBox(p) # p.name() self.cb.setChecked(bool(self.preferences[p])) #self.cb.setChecked(bool(self.preferences.values()[i])) self.cb.stateChanged.connect(self.onSave) self.scrollLayout.addWidget(self.cb) scroll.setWidget(scrollContent) self.save.clicked.connect(self.onSave) self.refresh.clicked.connect(self.onRefresh) self.select_all.clicked.connect(self.onSelectAll) self.deselect_all.clicked.connect(self.onDeSelectAll) self.setWindowTitle(self.node_name) QtWidgets.QShortcut(QtGui.QKeySequence("Esc"), self, self.onClose)