def addProfileColumnSelector(self): self.profileColumnL = self.createMultiLineLabel(self.tr("Profile Column")) self.profileColumnW = ProfileColumnItemView(self) self.addLabelWidgetPair(self.profileColumnL, self.profileColumnW) self.profileColumnW.setProfile(self.data.profile) self.profileColumnW.model().reload() self.profileColumnW.currentDatasetChanged.connect(self.onProfileColumnChange)
class ColumnInProfileEditorDialog(DatasetInProfileEditorDialog): def __init__(self, parent, data): DatasetInProfileEditorDialog.__init__(self, parent, data) self.addContentPanel(self.tr("Column in Profile")) self.addIdDisplay() self.addProfileSelector() self.addProfileColumnSelector() self.addWidthEditor() self.addPositionEditor() self.addButtons() self.idW.setValue(self.data.id) self.profileW.model().setProject(self.data.profile.project) self.profileW.selectDataset(self.data.profile) self.profileColumnW.selectDataset(self.data.profileColumn) self.widthW.setValue(self.data.width) self.positionW.setValue(self.data.position) def addProfileColumnSelector(self): self.profileColumnL = self.createMultiLineLabel(self.tr("Profile Column")) self.profileColumnW = ProfileColumnItemView(self) self.addLabelWidgetPair(self.profileColumnL, self.profileColumnW) self.profileColumnW.setProfile(self.data.profile) self.profileColumnW.model().reload() self.profileColumnW.currentDatasetChanged.connect(self.onProfileColumnChange) def onProfileColumnChange(self, c): self.data.profileColumn = c def addWidthEditor(self): self.widthL = self.createOneLineLabel(self.tr("Column Width")) self.widthW = PixelInputWidget(self.contentW) self.addLabelWidgetPair(self.widthL, self.widthW) self.widthW.valueChanged.connect(self.onWidthChange) def onWidthChange(self, v): self.data.width = v def addPositionEditor(self): self.positionL = self.createOneLineLabel(self.tr("Column Position")) self.positionW = IntLineEdit(self.contentW) self.addLabelWidgetPair(self.positionL, self.positionW) self.positionW.valueChanged.connect(self.onPositionChange) def onPositionChange(self, v): self.data.position = v