def closeEvent(self, event: QCloseEvent): changed_values = {} if bool(self.ui.checkBoxPauseTime.isChecked()) != self.old_show_pause_as_time: changed_values['show_pause_as_time'] = bool(self.ui.checkBoxPauseTime.isChecked()) if self.old_default_view != self.ui.comboBoxDefaultView.currentIndex(): changed_values['default_view'] = self.ui.comboBoxDefaultView.currentIndex() if self.old_num_sending_repeats != self.ui.spinBoxNumSendingRepeats.value(): changed_values["num_sending_repeats"] = self.ui.spinBoxNumSendingRepeats.value() settings = constants.SETTINGS settings.setValue('default_view', self.ui.comboBoxDefaultView.currentIndex()) settings.setValue('num_sending_repeats', self.ui.spinBoxNumSendingRepeats.value()) settings.setValue('show_pause_as_time', self.ui.checkBoxPauseTime.isChecked()) FieldType.save_to_xml(self.field_type_table_model.field_types) self.plugin_controller.save_enabled_states() for plugin in self.plugin_controller.model.plugins: plugin.destroy_settings_frame() for i in range(self.ui.scrollAreaWidgetSpectrogramColormapContents.layout().count()): widget = self.ui.scrollAreaWidgetSpectrogramColormapContents.layout().itemAt(i).widget() if isinstance(widget, QRadioButton) and widget.isChecked(): selected_colormap_name = widget.objectName() if selected_colormap_name != colormaps.read_selected_colormap_name_from_settings(): colormaps.choose_colormap(selected_colormap_name) colormaps.write_selected_colormap_to_settings(selected_colormap_name) changed_values["spectrogram_colormap"] = selected_colormap_name break self.values_changed.emit(changed_values) constants.SETTINGS.setValue("{}/geometry".format(self.__class__.__name__), self.saveGeometry()) super().closeEvent(event)
def show_available_colormaps(self): height = 50 selected = colormaps.read_selected_colormap_name_from_settings() for colormap_name in sorted(colormaps.maps.keys()): image = Spectrogram.create_colormap_image(colormap_name, height=height) rb = QRadioButton(colormap_name) rb.setObjectName(colormap_name) rb.setChecked(colormap_name == selected) rb.setIcon(QIcon(QPixmap.fromImage(image))) rb.setIconSize(QSize(256, height)) self.ui.scrollAreaWidgetSpectrogramColormapContents.layout().addWidget(rb)