def _init_widgets(self, layout_object): """Initialize widgets""" lbl_title = QLabel() lbl_title.setStyleSheet( 'padding: 2px; font-weight: bold; background-color: ' 'rgb(200, 200, 200);') lbl_title.setText(self.tr('QR Code')) self._cd_value_widget = CodeValueWidget(self) self._cd_value_widget.value_changed.connect( self._on_code_value_changed) value_groupbox = QgsCollapsibleGroupBoxBasic(self.tr('Data')) gp_layout = QVBoxLayout() gp_layout.setContentsMargins(0, 0, 0, 0) gp_layout.addWidget(self._cd_value_widget) value_groupbox.setLayout(gp_layout) # Item appearance appearance_groupbox = QgsCollapsibleGroupBoxBasic( self.tr('Appearance')) appearance_layout = QGridLayout() # Data color lbl_data_clr = QLabel(self.tr('Data color')) self._data_clr_btn = QgsColorButton() self._data_clr_btn.setColorDialogTitle(self.tr('Select Data Color')) self._data_clr_btn.setContext('composer') self._data_clr_btn.setAllowOpacity(False) self._data_clr_btn.colorChanged.connect(self.on_data_color_changed) appearance_layout.addWidget(lbl_data_clr, 0, 0) appearance_layout.addWidget(self._data_clr_btn, 0, 1) appearance_layout.setColumnStretch(2, 1) # Background color lbl_background_clr = QLabel(self.tr('Background color')) self._background_clr_btn = QgsColorButton() self._background_clr_btn.setColorDialogTitle( self.tr('Select Background Color')) self._background_clr_btn.setContext('composer') self._background_clr_btn.setAllowOpacity(False) self._background_clr_btn.colorChanged.connect( self.on_background_color_changed) appearance_layout.addWidget(lbl_background_clr, 1, 0) appearance_layout.addWidget(self._background_clr_btn, 1, 1) appearance_groupbox.setLayout(appearance_layout) # Properties widget self._prop_widget = QgsLayoutItemPropertiesWidget(self, layout_object) self._prop_widget.showBackgroundGroup(False) # Add widgets to layout layout = QVBoxLayout() layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(lbl_title) layout.addWidget(value_groupbox) layout.addWidget(appearance_groupbox) layout.addWidget(self._prop_widget) # Set layout self.setLayout(layout)
def _init_widgets(self, layout_object): """Initialize widgets""" lbl_title = QLabel() lbl_title.setStyleSheet( 'padding: 2px; font-weight: bold; background-color: ' 'rgb(200, 200, 200);') lbl_title.setText(self.tr('Linear Barcode')) self._cd_value_widget = CodeValueWidget(self) self._cd_value_widget.value_changed.connect( self._on_code_value_changed) value_groupbox = QgsCollapsibleGroupBoxBasic(self.tr('Data')) gp_layout = QVBoxLayout() gp_layout.setContentsMargins(0, 0, 0, 0) gp_layout.addWidget(self._cd_value_widget) value_groupbox.setLayout(gp_layout) # Barcode properties barcode_props_groupbox = QgsCollapsibleGroupBoxBasic( self.tr('Properties')) barcode_props_layout = QGridLayout() lbl_barcode_type = QLabel(self.tr('Linear barcode type')) self._barcode_cbo = LinearMetadataCombobox() self._barcode_cbo.metadata_changed.connect( self._on_linear_type_changed) barcode_props_layout.addWidget(lbl_barcode_type, 0, 0) barcode_props_layout.addWidget(self._barcode_cbo, 0, 1) self._chk_checksum = QCheckBox(self.tr('Add checksum')) self._chk_checksum.stateChanged.connect(self._on_add_checksum) barcode_props_layout.addWidget(self._chk_checksum, 1, 0, 1, 2) self._chk_render_txt = QCheckBox(self.tr('Render barcode text')) self._chk_render_txt.stateChanged.connect(self._on_render_text_changed) barcode_props_layout.addWidget(self._chk_render_txt, 2, 0, 1, 2) barcode_props_layout.setColumnStretch(1, 1) barcode_props_groupbox.setLayout(barcode_props_layout) # Properties widget self._prop_widget = QgsLayoutItemPropertiesWidget(self, layout_object) self._prop_widget.showBackgroundGroup(False) # Add widgets to layout layout = QVBoxLayout() layout.setContentsMargins(0, 0, 0, 0) layout.addWidget(lbl_title) layout.addWidget(barcode_props_groupbox) layout.addWidget(value_groupbox) layout.addWidget(self._prop_widget) # Set layout self.setLayout(layout)