def __init__(self, key_defs): QWidget.__init__(self) self.__filter_popup = FilterPopup(self, key_defs) self.__filter_popup.filterSettingsChanged.connect(self.onItemChanged) layout = QVBoxLayout() self.model = DataTypeKeysListModel(key_defs) self.filter_model = DataTypeProxyModel(self, self.model) filter_layout = QHBoxLayout() self.search_box = SearchBox() self.search_box.filterChanged.connect(self.setSearchString) filter_layout.addWidget(self.search_box) filter_popup_button = QToolButton() filter_popup_button.setIcon(resourceIcon("ide/cog_edit.png")) filter_popup_button.clicked.connect(self.showFilterPopup) filter_layout.addWidget(filter_popup_button) layout.addLayout(filter_layout) self.data_type_keys_widget = QListView() self.data_type_keys_widget.setModel(self.filter_model) self.data_type_keys_widget.selectionModel().selectionChanged.connect(self.itemSelected) layout.addSpacing(15) layout.addWidget(self.data_type_keys_widget, 2) layout.addStretch() # layout.addWidget(Legend("Default types", DataTypeKeysListModel.DEFAULT_DATA_TYPE)) layout.addWidget(Legend("Observations available", DataTypeKeysListModel.HAS_OBSERVATIONS)) self.setLayout(layout)
def __init__(self): QWidget.__init__(self) self.__filter_popup = FilterPopup(self) self.__filter_popup.filterSettingsChanged.connect(self.onItemChanged) layout = QVBoxLayout() self.model = DataTypeKeysListModel() self.filter_model = DataTypeProxyModel(self.model) filter_layout = QHBoxLayout() self.search_box = SearchBox() self.search_box.filterChanged.connect(self.setSearchString) filter_layout.addWidget(self.search_box) filter_popup_button = QToolButton() filter_popup_button.setIcon(util.resourceIcon("ide/cog_edit.png")) filter_popup_button.clicked.connect(self.showFilterPopup) filter_layout.addWidget(filter_popup_button) layout.addLayout(filter_layout) self.data_type_keys_widget = QListView() self.data_type_keys_widget.setModel(self.filter_model) self.data_type_keys_widget.selectionModel().selectionChanged.connect(self.itemSelected) layout.addSpacing(15) layout.addWidget(self.data_type_keys_widget, 2) layout.addStretch() # layout.addWidget(Legend("Default types", DataTypeKeysListModel.DEFAULT_DATA_TYPE)) layout.addWidget(Legend("Observations available", DataTypeKeysListModel.HAS_OBSERVATIONS)) self.setLayout(layout)
def __init__(self, parent=None, current_key='', selectable_keys=[]): QWidget.__init__(self, parent) self.setMinimumWidth(450) self.setMinimumHeight(200) self._dynamic = False self.setWindowTitle( "Copy the style of {0} to other keys".format(current_key)) self.activateWindow() layout = QFormLayout(self) self._ert = ERT.ert """:type: res.enkf.enkf_main.EnKFMain""" self.model = self._ert self._filter_popup = FilterPopup(self) self._filter_popup.filterSettingsChanged.connect( self.filterSettingsChanged) filter_popup_button = QToolButton() filter_popup_button.setIcon(resourceIcon("ide/cog_edit.png")) filter_popup_button.clicked.connect(self._filter_popup.show) self._list_model = FilterableKwListModel(self._ert, selectable_keys) self._list_model.unselectAll() self._cl = CheckList(self._list_model, custom_filter_button=filter_popup_button) layout.addWidget(self._cl) apply_button = QPushButton("Apply") apply_button.clicked.connect(self.accept) apply_button.setDefault(True) close_button = QPushButton("Close") close_button.setToolTip("Hide this dialog") close_button.clicked.connect(self.reject) button_layout = QHBoxLayout() button_layout.addStretch() button_layout.addWidget(apply_button) button_layout.addWidget(close_button) layout.addRow(button_layout)
def __init__(self, parent, current_key, key_defs): QWidget.__init__(self, parent) self.setMinimumWidth(450) self.setMinimumHeight(200) self._dynamic = False self.setWindowTitle(f"Copy the style of {current_key} to other keys") self.activateWindow() layout = QFormLayout(self) self._filter_popup = FilterPopup(self, key_defs) self._filter_popup.filterSettingsChanged.connect( self.filterSettingsChanged) filter_popup_button = QToolButton() filter_popup_button.setIcon(resourceIcon("filter_list.svg")) filter_popup_button.clicked.connect(self._filter_popup.show) self._list_model = FilterableKwListModel(key_defs) self._list_model.unselectAll() self._cl = CheckList(self._list_model, custom_filter_button=filter_popup_button) layout.addWidget(self._cl) apply_button = QPushButton("Apply") apply_button.clicked.connect(self.accept) apply_button.setDefault(True) close_button = QPushButton("Close") close_button.setToolTip("Hide this dialog") close_button.clicked.connect(self.reject) button_layout = QHBoxLayout() button_layout.addStretch() button_layout.addWidget(apply_button) button_layout.addWidget(close_button) layout.addRow(button_layout)
class DataTypeKeysWidget(QWidget): dataTypeKeySelected = pyqtSignal(str) def __init__(self): QWidget.__init__(self) self.__filter_popup = FilterPopup(self) self.__filter_popup.filterSettingsChanged.connect(self.onItemChanged) layout = QVBoxLayout() self.model = DataTypeKeysListModel() self.filter_model = DataTypeProxyModel(self.model) filter_layout = QHBoxLayout() self.search_box = SearchBox() self.search_box.filterChanged.connect(self.setSearchString) filter_layout.addWidget(self.search_box) filter_popup_button = QToolButton() filter_popup_button.setIcon(util.resourceIcon("ide/cog_edit.png")) filter_popup_button.clicked.connect(self.showFilterPopup) filter_layout.addWidget(filter_popup_button) layout.addLayout(filter_layout) self.data_type_keys_widget = QListView() self.data_type_keys_widget.setModel(self.filter_model) self.data_type_keys_widget.selectionModel().selectionChanged.connect(self.itemSelected) layout.addSpacing(15) layout.addWidget(self.data_type_keys_widget, 2) layout.addStretch() # layout.addWidget(Legend("Default types", DataTypeKeysListModel.DEFAULT_DATA_TYPE)) layout.addWidget(Legend("Observations available", DataTypeKeysListModel.HAS_OBSERVATIONS)) self.setLayout(layout) def onItemChanged(self, item): self.filter_model.setShowBlockKeys(item["block"]) self.filter_model.setShowSummaryKeys(item["summary"]) self.filter_model.setShowGenKWKeys(item["gen_kw"]) self.filter_model.setShowGenDataKeys(item["gen_data"]) self.filter_model.setShowCustomPcaKeys(item["custom_pca"]) def itemSelected(self): selected_item = self.getSelectedItem() if selected_item is not None: self.dataTypeKeySelected.emit(selected_item) def getSelectedItem(self): """ @rtype: str """ index = self.data_type_keys_widget.currentIndex() source_index = self.filter_model.mapToSource(index) item = self.model.itemAt(source_index) return item def selectDefault(self): self.data_type_keys_widget.setCurrentIndex(self.filter_model.index(0, 0)) def setSearchString(self, filter): self.filter_model.setFilterFixedString(filter) def showFilterPopup(self): self.__filter_popup.show()
class DataTypeKeysWidget(QWidget): dataTypeKeySelected = pyqtSignal(str) def __init__(self): QWidget.__init__(self) self.__filter_popup = FilterPopup(self) self.__filter_popup.filterSettingsChanged.connect(self.onItemChanged) layout = QVBoxLayout() self.model = DataTypeKeysListModel() self.filter_model = DataTypeProxyModel(self.model) filter_layout = QHBoxLayout() self.search_box = SearchBox() self.search_box.filterChanged.connect(self.setSearchString) filter_layout.addWidget(self.search_box) filter_popup_button = QToolButton() filter_popup_button.setIcon(util.resourceIcon("ide/cog_edit.png")) filter_popup_button.clicked.connect(self.showFilterPopup) filter_layout.addWidget(filter_popup_button) layout.addLayout(filter_layout) self.data_type_keys_widget = QListView() self.data_type_keys_widget.setModel(self.filter_model) self.data_type_keys_widget.selectionModel().selectionChanged.connect( self.itemSelected) layout.addSpacing(15) layout.addWidget(self.data_type_keys_widget, 2) layout.addStretch() # layout.addWidget(Legend("Default types", DataTypeKeysListModel.DEFAULT_DATA_TYPE)) layout.addWidget( Legend("Observations available", DataTypeKeysListModel.HAS_OBSERVATIONS)) self.setLayout(layout) def onItemChanged(self, item): self.filter_model.setShowBlockKeys(item["block"]) self.filter_model.setShowSummaryKeys(item["summary"]) self.filter_model.setShowGenKWKeys(item["gen_kw"]) self.filter_model.setShowGenDataKeys(item["gen_data"]) self.filter_model.setShowCustomPcaKeys(item["custom_pca"]) def itemSelected(self): selected_item = self.getSelectedItem() if selected_item is not None: self.dataTypeKeySelected.emit(selected_item) def getSelectedItem(self): """ @rtype: str """ index = self.data_type_keys_widget.currentIndex() source_index = self.filter_model.mapToSource(index) item = self.model.itemAt(source_index) return item def selectDefault(self): self.data_type_keys_widget.setCurrentIndex( self.filter_model.index(0, 0)) def setSearchString(self, filter): self.filter_model.setFilterFixedString(filter) def showFilterPopup(self): self.__filter_popup.show()
class DataTypeKeysWidget(QWidget): dataTypeKeySelected = Signal() def __init__(self, key_defs): QWidget.__init__(self) self.__filter_popup = FilterPopup(self, key_defs) self.__filter_popup.filterSettingsChanged.connect(self.onItemChanged) layout = QVBoxLayout() self.model = DataTypeKeysListModel(key_defs) self.filter_model = DataTypeProxyModel(self, self.model) filter_layout = QHBoxLayout() self.search_box = SearchBox() self.search_box.filterChanged.connect(self.setSearchString) filter_layout.addWidget(self.search_box) filter_popup_button = QToolButton() filter_popup_button.setIcon(resourceIcon("filter_list.svg")) filter_popup_button.clicked.connect(self.showFilterPopup) filter_layout.addWidget(filter_popup_button) layout.addLayout(filter_layout) self.data_type_keys_widget = QListView() self.data_type_keys_widget.setModel(self.filter_model) self.data_type_keys_widget.selectionModel().selectionChanged.connect( self.itemSelected) layout.addSpacing(15) layout.addWidget(self.data_type_keys_widget, 2) layout.addStretch() layout.addWidget( Legend("Observations available", DataTypeKeysListModel.HAS_OBSERVATIONS)) self.setLayout(layout) def onItemChanged(self, item): # self.filter_model.setShowBlockKeys(item["block"]) for value, visible in item.items(): self.filter_model.setFilterOnMetadata("data_origin", value, visible) def itemSelected(self): selected_item = self.getSelectedItem() if selected_item is not None: self.dataTypeKeySelected.emit() def getSelectedItem(self): """@rtype: str""" index = self.data_type_keys_widget.currentIndex() source_index = self.filter_model.mapToSource(index) item = self.model.itemAt(source_index) return item def selectDefault(self): self.data_type_keys_widget.setCurrentIndex( self.filter_model.index(0, 0)) def setSearchString(self, filter): self.filter_model.setFilterFixedString(filter) def showFilterPopup(self): self.__filter_popup.show()