def setupUi(self, parent): outerLayout = QtWidgets.QVBoxLayout(parent) self.scrollArea = QtWidgets.QScrollArea(parent) self.scrollArea.setFrameShape(QtWidgets.QScrollArea.NoFrame) self.scrollArea.setWidgetResizable(True) outerLayout.addWidget(self.scrollArea) self.scrollWidget = QtWidgets.QWidget() self.scrollArea.setWidget(self.scrollWidget) # scroll layout contains the main layout and a spacer item self.scrollLayout = QtWidgets.QVBoxLayout(self.scrollWidget) self.scrollLayout.setMargin(0) self.mainLayout = QtWidgets.QVBoxLayout(self.scrollWidget) self.mainLayout.setSpacing(12) self.mainLayout.setMargin(4) self.scrollLayout.addLayout(self.mainLayout) spacer = QtWidgets.QSpacerItem(20, 20, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) self.scrollLayout.addItem(spacer) self.scrollWidget.setLayout(self.scrollLayout)
def setupUi(self, parent): layout = QtWidgets.QVBoxLayout(parent) grpBtn = QtWidgets.QPushButton(parent) grpBtn.setText("New Group") grpBtn.clicked.connect(self.createBuildGroup) layout.addWidget(grpBtn) searchField = QtWidgets.QLineEdit(parent) searchField.setPlaceholderText("Search") layout.addWidget(searchField) tabScrollWidget = QtWidgets.QWidget(parent) tabScroll = QtWidgets.QScrollArea(parent) tabScroll.setFrameShape(QtWidgets.QScrollArea.NoFrame) tabScroll.setWidgetResizable(True) tabScroll.setWidget(tabScrollWidget) self.setupContentUi(tabScrollWidget) layout.addWidget(tabScroll)
def setupKeywordsUi(self, parent): """ Build the keywords layout and all categories and button grids. Returns the layout. """ keywordsLayout = QtWidgets.QVBoxLayout(parent) keywordsLabel = self.createLabel(parent, "Names", bold=True) keywordsLayout.addWidget(keywordsLabel) scrollArea = QtWidgets.QScrollArea(parent) scrollArea.setFrameShape(QtWidgets.QScrollArea.NoFrame) scrollArea.setWidgetResizable(True) scrollWidget = QtWidgets.QWidget() scrollLayout = QtWidgets.QVBoxLayout(scrollWidget) # create category and btn grid for all keywords self.keywordBtns = {} keywords = self.namesConfig.get('keywords', {}) categoryNames = sorted(keywords.keys()) for catName in categoryNames: catKeywords = keywords[catName] catLayout = self.setupKeywordCategoryUi(scrollWidget, catName, catKeywords) scrollLayout.addLayout(catLayout) keywordsSpacer = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) scrollLayout.addItem(keywordsSpacer) scrollArea.setWidget(scrollWidget) keywordsLayout.addWidget(scrollArea) return keywordsLayout