def _build(self): '''Create and layout widget.''' layout = QtWidgets.QVBoxLayout(self) layout.setContentsMargins(0, 0, 0, 0) self.setLayout(layout) # Thumbnail. self._thumbnail = QtWidgets.QLabel() self._thumbnail.setFrameStyle(QtWidgets.QFrame.StyledPanel) self._thumbnail.setAlignment(QtCore.Qt.AlignCenter) self._thumbnail.setFixedHeight(160) layout.addWidget(self._thumbnail) # Properties. self._propertyTable = QtWidgets.QTableWidget() self._propertyTable.setHorizontalScrollMode( QtWidgets.QAbstractItemView.ScrollPerPixel) self._propertyTable.setColumnCount(1) headers = ('Name', 'Author', 'Version', 'Date', 'Comment', 'Status', 'Priority') self._propertyTable.setRowCount(len(headers)) self._propertyTable.setVerticalHeaderLabels(headers) horizontalHeader = self._propertyTable.horizontalHeader() horizontalHeader.hide() horizontalHeader.setResizeMode(QtWidgets.QHeaderView.Stretch) verticalHeader = self._propertyTable.verticalHeader() verticalHeader.setResizeMode(QtWidgets.QHeaderView.ResizeToContents) layout.addWidget(self._propertyTable)
def makeUI(self): self.tableWidget = QtWidgets.QTableWidget() self.tableWidget.setColumnCount(7) self.tableWidget.setHorizontalHeaderLabels( ['', 'Filename', 'Component', 'NodeName', '', '', '']) self.tableWidget.verticalHeader().setVisible(False) self.tableWidget.setColumnWidth(0, 25) self.tableWidget.setColumnWidth(2, 100) self.tableWidget.setColumnWidth(3, 100) self.tableWidget.setColumnWidth(4, 25) self.tableWidget.setColumnHidden(0, True) self.tableWidget.setColumnHidden(5, True) self.tableWidget.setColumnHidden(6, True) self.tableWidget.horizontalHeader().setResizeMode( QtWidgets.QHeaderView.Fixed) self.tableWidget.horizontalHeader().setResizeMode( 1, QtWidgets.QHeaderView.Stretch) self.tableWidget.setTextElideMode(QtCore.Qt.ElideLeft) self.tableWidget.setMinimumHeight(200) self.tableWidget.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self.tableWidget.updateValue = self.updateValue return self.tableWidget
def _build(self): '''Build and layout widget.''' layout = QtWidgets.QVBoxLayout() self.setLayout(layout) # Header header = ftrack_connect.ui.widget.header.Header( getpass.getuser(), self) header.setSizePolicy(QtWidgets.QSizePolicy.MinimumExpanding, QtWidgets.QSizePolicy.Fixed) layout.addWidget(header) secondaryHeader = QtWidgets.QFrame() headerLayout = QtWidgets.QHBoxLayout() headerLayout.setContentsMargins(0, 0, 0, 0) secondaryHeader.setLayout(headerLayout) layout.addWidget(secondaryHeader) self._createButton = QtWidgets.QToolButton() self._createButton.setIcon( QtGui.QIcon.fromTheme('plus', QtGui.QIcon(':icon-plus'))) headerLayout.addWidget(self._createButton) self._navigateUpButton = QtWidgets.QToolButton() self._navigateUpButton.setIcon( QtGui.QIcon.fromTheme('go-up', QtGui.QIcon(':icon-arrow-up'))) headerLayout.addWidget(self._navigateUpButton) headerLayout.addStretch(1) # Bookmarks contentSplitter = QtWidgets.QSplitter() layout.addWidget(contentSplitter) self._bookmarksView = QtWidgets.QTableWidget() self._bookmarksView.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self._bookmarksView.setGridStyle(QtCore.Qt.NoPen) self._bookmarksView.setColumnCount(1) self._bookmarksView.setColumnCount(1) self._bookmarksView.setRowCount(0) self._bookmarksView.horizontalHeader().setVisible(False) self._bookmarksView.horizontalHeader().setStretchLastSection(True) self._bookmarksView.verticalHeader().setVisible(False) self._bookmarksView.verticalHeader().setDefaultSectionSize(25) contentSplitter.addWidget(self._bookmarksView) # Navigation self._navigator = QtWidgets.QTableWidget() self._navigator.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self._navigator.setGridStyle(QtCore.Qt.NoPen) self._navigator.setColumnCount(1) self._navigator.horizontalHeader().setStretchLastSection(True) self._navigator.verticalHeader().hide() self._navigator.setHorizontalHeaderLabels(['Name']) contentSplitter.addWidget(self._navigator) self._versionsNavigator = QtWidgets.QTableWidget() self._versionsNavigator.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self._versionsNavigator.setGridStyle(QtCore.Qt.NoPen) self._versionsNavigator.setColumnCount(1) self._versionsNavigator.verticalHeader().hide() self._versionsNavigator.setSortingEnabled(False) self._versionsNavigator.setHorizontalHeaderLabels(['Version']) contentSplitter.addWidget(self._versionsNavigator) self._componentsNavigator = QtWidgets.QTableWidget() self._componentsNavigator.setEditTriggers( QtWidgets.QAbstractItemView.NoEditTriggers) self._componentsNavigator.setColumnCount(1) self._componentsNavigator.horizontalHeader().setStretchLastSection( True) self._componentsNavigator.verticalHeader().hide() self._componentsNavigator.verticalHeader().setStretchLastSection(False) self._componentsNavigator.setHorizontalHeaderLabels(['Component']) contentSplitter.addWidget(self._componentsNavigator) # Details self._detailView = ftrack_connect_foundry.ui.detail_view.DetailView( self._bridge) contentSplitter.addWidget(self._detailView) # Location self._locationField = QtWidgets.QLineEdit() layout.addWidget(self._locationField) self._locationOptions = QtWidgets.QFrame() layout.addWidget(self._locationOptions) locationOptionsLayout = QtWidgets.QHBoxLayout() locationOptionsLayout.setContentsMargins(0, 0, 0, 0) self._locationOptions.setLayout(locationOptionsLayout) self._assetNameField = QtWidgets.QLineEdit() self._assetNameField.setEnabled(False) locationOptionsLayout.addWidget(self._assetNameField) self._overrideNameHintOption = QtWidgets.QCheckBox( 'Specify Asset Name') locationOptionsLayout.addWidget(self._overrideNameHintOption)