def update_text_actors(self, subcase_id, subtitle, imin, min_value, imax, max_value, label, location): """ Updates the text actors in the lower left Max: 1242.3 Min: 0. Subcase: 1 Subtitle: Label: SUBCASE 1; Static """ if location == 'node': nodes = self.gui.node_ids min_msgi = f'Node: %d' % nodes[imin] max_msgi = f'Node: %d' % nodes[imax] elif location == 'centroid': elements = self.gui.element_ids min_msgi = f'Element: %d' % elements[imin] max_msgi = f'Element: %d' % elements[imax] else: raise NotImplementedError(location) if isinstance(max_value, integer_types): max_msg = 'Max: %d' % max_value min_msg = 'Min: %d' % min_value elif isinstance(max_value, str): max_msg = 'Max: %s' % str(max_value) min_msg = 'Min: %s' % str(min_value) elif (isinstance(max_value, float) or hasattr(max_value, 'dtype') and max_value.dtype.name in ['float32', 'float64']): max_msg = 'Max: %s' % func_str(max_value) min_msg = 'Min: %s' % func_str(min_value) elif hasattr(max_value, 'dtype') and max_value.dtype.name in [ 'complex64', 'complex128' ]: raise RuntimeError(f'{max_value.dtype.name} should be a magnitude') #max_msg = 'Max: %g, %gj' % (max_value.real, max_value.imag) #min_msg = 'Min: %g, %gj' % (min_value.real, min_value.imag) else: #print('else...', max_value, type(max_value)) max_msg = 'Max: %g' % max_value min_msg = 'Min: %g' % min_value texts = [ max_msg + '; %s' % max_msgi, min_msg + '; %s' % min_msgi, 'Subcase: %s Subtitle: %s' % (subcase_id, subtitle), ] if label: texts.append('Label: %s' % label) ntext = len(texts) for itext, text in enumerate(texts): self.gui.text_actors[itext].SetInput(text) if ntext == 4: # label self.gui.text_actors[3].VisibilityOn() else: self.gui.text_actors[3].VisibilityOff()
def update_active_key(self, index): name = self.active_key old_obj = self.out_data['points'][name] #self.active_key #self.points[self.active_key] old_obj[0] = str(self.description_edit.text()) #old_obj.coord = self.description_edit.value() #old_obj.description = self.description_edit.value() #old_obj.description = self.description_edit.value() str_name = str(index.data()) name = int(str_name[5:]) #i = self.keys.index(self.active_key) self.active_key = name point = self.points[self.active_key] #1 : ['LERoot', 0, 'R', 1.0, 2.0, 3.0], self.name_edit.setText(str(self.active_key)) self.description_edit.setText(point[0]) self.coord_edit.setValue(point[1]) if point[2] == 'R': self.radio_rectangular.setChecked(True) elif point[2] == 'C': self.radio_cylindrical.setChecked(True) elif point[2] == 'S': self.radio_spherical.setChecked(True) self.location_x_edit.setText(func_str(point[3])) self.location_y_edit.setText(func_str(point[4])) self.location_z_edit.setText(func_str(point[5]))
def create_widgets(self): # Min self.min_label = QLabel("Min:") self.min_edit = QFloatEdit(func_str(self._default_min)) self.min_button = QPushButton("Default") # Max self.max_label = QLabel("Max:") self.max_edit = QFloatEdit(func_str(self._default_max)) self.max_button = QPushButton("Default") # closing self.ok_button = QPushButton("OK")
def create_widgets(self): # Name self.pid = QLabel("New Property ID:") self.pid_edit = QLineEdit(str(self._default_property).strip()) self.pid_button = QPushButton("Default") # Name self.elements = QLabel("Element IDs:") self.elements_edit = QLineEdit(str(self._default_elements).strip()) self.elements_button = QPushButton("Default") # elements self.theta = QLabel("Theta Neighbor Max:") self.theta_edit = QFloatEdit(func_str(self._default_theta).strip()) self.theta_button = QPushButton("Default") # applies a unique implicitly self.eids = parse_patran_syntax(str(self._default_elements), pound=self.elements_pound) #self.cids = parse_patran_syntax(str(self._default_coords), pound=self.coords_pound) # continuous / discrete #self.checkbox_continuous = QCheckBox("Continuous") #self.checkbox_discrete = QCheckBox("Discrete") #self.checkbox_discrete.setChecked(self._default_is_discrete) # put these in a group #checkboxs2 = QButtonGroup(self) #checkboxs2.addButton(self.checkbox_continuous) #checkboxs2.addButton(self.checkbox_discrete) # closing self.apply_button = QPushButton("Apply") self.ok_button = QPushButton("OK") self.cancel_button = QPushButton("Cancel")
def set_cell_to_blank_if_value_is_none(cell_edit, value): if value is None: cell_edit.setText('0.0') else: cell_edit.setText(func_str(value)) cell_edit.setStyleSheet("QLineEdit{background: white;}") return value
def set_qlineedit(value): box = QLineEdit() if value is not None: if isinstance(value, float): func_val = func_str(value) else: func_val = str(value) box.setText(func_val) return box
def update_legend(self, icase_fringe, icase_disp, icase_vector, title, min_value, max_value, data_format, nlabels, labelsize, ncolors, colormap, is_fringe, scale, phase, arrow_scale, default_title, default_min_value, default_max_value, default_data_format, default_nlabels, default_labelsize, default_ncolors, default_colormap, default_scale, default_phase, default_arrow_scale, font_size=8, external_call=False): """ We need to update the legend if there's been a result change request """ self.external_call = external_call self.set_font_size(font_size) update_fringe = False update_disp = False update_vector = False #print('update_legend; fringe=%s disp=%s vector=%s' % ( #icase_fringe, icase_disp, icase_vector)) #print('update_legend; default: fringe=%s disp=%s vector=%s' % ( # self._default_icase_fringe, self._default_icase_disp, self._default_icase_vector)) if icase_fringe != self._default_icase_fringe: self._icase_fringe = icase_fringe self._default_icase_fringe = icase_fringe update_fringe = True #is_fringe = icase_fringe is not None is_disp = icase_disp is not None is_vector = icase_vector is not None if icase_disp != self._default_icase_disp: assert isinstance(scale, float_types), 'scale=%r type=%s' % (scale, type(scale)) #assert isinstance(default_scale, float), 'default_scale=%r' % default_scale self._icase_disp = icase_disp self._default_icase_disp = icase_disp self._default_scale = default_scale self._default_phase = default_phase update_disp = True if icase_vector != self._default_icase_vector: assert isinstance(arrow_scale, float_types), 'arrow_scale=%r type=%s' % (arrow_scale, type(scale)) #assert isinstance(default_arrow_scale, float), 'default_arrow_scale=%r' % default_arrow_scale self._icase_vector = icase_vector self._default_icase_vector = icase_vector self._default_arrow_scale = default_arrow_scale update_vector = True #print('*update_legend; default: fringe=%s disp=%s vector=%s' % ( # self._default_icase_fringe, self._default_icase_disp, self._default_icase_vector)) #print('update_fringe=%s update_disp=%s update_vector=%s' % ( # update_fringe, update_disp, update_vector)) #print('is_fringe=%s is_disp=%s is_vector=%s' % ( # is_fringe, is_disp, is_vector)) if update_fringe: self._icase_fringe = icase_fringe self._default_icase_fringe = icase_fringe self._default_title = default_title self._default_min = default_min_value self._default_max = default_max_value self._default_format = default_data_format #self._default_is_low_to_high = is_low_to_high self._default_is_discrete = True #self._default_is_horizontal = is_horizontal_scalar_bar self._default_nlabels = default_nlabels self._default_labelsize = default_labelsize self._default_ncolors = default_ncolors self._default_colormap = default_colormap self._is_fringe = is_fringe if colormap is None: colormap = 'jet' if labelsize is None: labelsize = '' if ncolors is None: ncolors = '' if nlabels is None: nlabels = '' self._update_defaults_to_blank() #----------------------------------------------------------------------- update = update_fringe or update_disp or update_vector if update: #self.scale_label.setEnabled(is_disp) #self.scale_edit.setEnabled(is_disp) #self.scale_button.setEnabled(is_disp) self.scale_label.setVisible(is_disp) self.scale_edit.setVisible(is_disp) self.scale_button.setVisible(is_disp) is_complex_disp = self._default_phase is not None self.phase_label.setVisible(is_complex_disp) self.phase_edit.setVisible(is_complex_disp) self.phase_button.setVisible(is_complex_disp) self._scale = set_cell_to_blank_if_value_is_none(self.scale_edit, scale) self._phase = set_cell_to_blank_if_value_is_none(self.phase_edit, phase) if self._default_icase_disp is None: # or self._default_icase_vector is None: self.animate_button.setEnabled(False) self.animate_button.setToolTip(ANIMATE_TOOLTIP_OFF) else: self.animate_button.setEnabled(True) self.animate_button.setToolTip(ANIMATE_TOOLTIP_ON) #----------------------------------------------------------------------- if update: #self.arrow_scale_label.setEnabled(is_vector) #self.arrow_scale_edit.setEnabled(is_vector) #self.arrow_scale_button.setEnabled(is_vector) self.arrow_scale_label.setVisible(is_vector) self.arrow_scale_edit.setVisible(is_vector) self.arrow_scale_button.setVisible(is_vector) self._arrow_scale = set_cell_to_blank_if_value_is_none( self.arrow_scale_edit, arrow_scale) #----------------------------------------------------------------------- if update_fringe: #self.on_default_title() #self.on_default_min() #self.on_default_max() #self.on_default_format() #self.on_default_scale() # reset defaults self.title_edit.setText(title) self.title_edit.setStyleSheet("QLineEdit{background: white;}") self.min_edit.setText(func_str(min_value)) self.min_edit.setStyleSheet("QLineEdit{background: white;}") self.max_edit.setText(func_str(max_value)) self.max_edit.setStyleSheet("QLineEdit{background: white;}") self.format_edit.setText(str(data_format)) self.format_edit.setStyleSheet("QLineEdit{background: white;}") self.nlabels_edit.setText(str(nlabels)) self.nlabels_edit.setStyleSheet("QLineEdit{background: white;}") self.labelsize_edit.setText(str(labelsize)) self.labelsize_edit.setStyleSheet("QLineEdit{background: white;}") self.ncolors_edit.setText(str(ncolors)) self.ncolors_edit.setStyleSheet("QLineEdit{background: white;}") self.colormap_edit.setCurrentIndex(colormap_keys.index(str(colormap))) self._set_legend_fringe(self._is_fringe) if update: self.on_apply() self.external_call = True
def on_default_labelsize(self): """action when user clicks 'Default' for number of labelsize""" self.labelsize_edit.setText(func_str(self._default_labelsize)) self.labelsize_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_ncolors(self): """action when user clicks 'Default' for number of colors""" self.ncolors_edit.setText(func_str(self._default_ncolors)) self.ncolors_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_phase(self): """action when user clicks 'Default' for phase angle""" self.phase_edit.setText(func_str(self._default_phase)) self.phase_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_arrow_scale(self): """action when user clicks 'Default' for arrow_scale factor""" self.arrow_scale_edit.setText(func_str(self._default_arrow_scale)) self.arrow_scale_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_format(self): """action when user clicks 'Default' for the number format""" self.format_edit.setText(func_str(self._default_format)) self.format_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_max(self): """action when user clicks 'Default' for max value""" self.max_edit.setText(func_str(self._default_max)) self.max_edit.setStyleSheet("QLineEdit{background: white;}")
def create_widgets(self): """creates the display window""" # Text Size self.font_size_label = QLabel("Font Size:") self.font_size_edit = QSpinBox(self) self.font_size_edit.setValue(self._default_font_size) self.font_size_edit.setRange(7, 20) self.font_size_button = QPushButton("Default") #----------------------------------------------------------------------- # Annotation Color self.annotation_color_label = QLabel("Annotation Color:") self.annotation_color_edit = QPushButtonColor(self.annotation_color_int) self.annotation_color_label.hide() self.annotation_color_edit.hide() #----------------------------------------------------------------------- # Text Color self.text_size_label = QLabel("Text Size:") self.text_size_edit = QSpinBox(self) self.text_size_edit.setValue(self._default_text_size) self.text_size_edit.setRange(7, 30) self.text_size_button = QPushButton("Default") # Text Color self.text_color_label = QLabel("Text Color:") self.text_color_edit = QPushButtonColor(self.text_color_int) #----------------------------------------------------------------------- # Highlight Color self.highlight_opacity_label = QLabel("Highlight Opacity:") self.highlight_opacity_edit = QDoubleSpinBox(self) self.highlight_opacity_edit.setValue(self._highlight_opacity) self.highlight_opacity_edit.setRange(0.1, 1.0) self.highlight_opacity_edit.setDecimals(1) self.highlight_opacity_edit.setSingleStep(0.1) self.highlight_opacity_button = QPushButton("Default") # Text Color self.highlight_color_label = QLabel("Highlight Color:") self.highlight_color_edit = QPushButtonColor(self.highlight_color_int) #----------------------------------------------------------------------- # Background Color self.background_color_label = QLabel("Btm Background Color:") self.background_color_edit = QPushButtonColor(self.background_color_int) # Background Color2 self.gradient_scale_label = QLabel("Gradient Background:") self.gradient_scale_checkbox = QCheckBox() self.gradient_scale_checkbox.setChecked(self._use_gradient_background) self.background_color2_label = QLabel("Top Background Color:") self.background_color2_edit = QPushButtonColor(self.background_color2_int) #----------------------------------------------------------------------- # Annotation Size self.annotation_size_label = QLabel("Annotation Size:") self.annotation_size_edit = QSpinBox(self) self.annotation_size_edit.setRange(1, 500) self.annotation_size_edit.setValue(self._annotation_size) self.annotation_size_button = QPushButton("Default") #----------------------------------------------------------------------- # Picker Size self.picker_size_label = QLabel("Picker Size (% of Screen):") self.picker_size_edit = QDoubleSpinBox(self) self.picker_size_edit.setRange(0., 10.) log_dim = log10(self.dim_max) decimals = int(ceil(abs(log_dim))) decimals = max(6, decimals) self.picker_size_edit.setDecimals(decimals) self.picker_size_edit.setSingleStep(10. / 5000.) self.picker_size_edit.setValue(self._picker_size) #----------------------------------------------------------------------- # Clipping Min self.clipping_min_label = QLabel("Clipping Min:") self.clipping_min_edit = QLineEdit(func_str(self._default_clipping_min)) self.clipping_min_button = QPushButton("Default") # Clipping Max self.clipping_max_label = QLabel("Clipping Max:") self.clipping_max_edit = QLineEdit(func_str(self._default_clipping_max)) self.clipping_max_button = QPushButton("Default") #----------------------------------------------------------------------- self.coord_scale_label = QLabel('Coordinate System Scale:') self.coord_scale_button = QPushButton("Default") self.coord_scale_edit = QDoubleSpinBox(self) self.coord_scale_edit.setRange(0.1, 1000.) self.coord_scale_edit.setDecimals(3) self.coord_scale_edit.setSingleStep(1.0) self.coord_scale_edit.setValue(self._coord_scale) self.coord_text_scale_label = QLabel('Coordinate System Text Scale:') self.coord_text_scale_button = QPushButton("Default") self.coord_text_scale_edit = QDoubleSpinBox(self) self.coord_text_scale_edit.setRange(0.1, 2000.) self.coord_text_scale_edit.setDecimals(3) self.coord_text_scale_edit.setSingleStep(2.) self.coord_text_scale_edit.setValue(self._coord_text_scale) # Show corner coord self.corner_coord_label = QLabel("Show Corner Coordinate System:") self.corner_coord_checkbox = QCheckBox() self.corner_coord_checkbox.setChecked(self._show_corner_coord) #----------------------------------------------------------------------- self.magnify_label = QLabel('Screenshot Magnify:') self.magnify_edit = QSpinBox(self) self.magnify_edit.setMinimum(1) self.magnify_edit.setMaximum(10) self.magnify_edit.setValue(self._magnify) #----------------------------------------------------------------------- self.nastran_is_element_quality_checkbox = QCheckBox('Element Quality') self.nastran_is_element_quality_checkbox.setToolTip('Cacluate Aspect Ratio, Skew Angle, Max/Min Interior Angle, etc.') self.nastran_is_element_quality_checkbox.setChecked(self._nastran_is_element_quality) self.nastran_is_properties_checkbox = QCheckBox('Properties') self.nastran_is_properties_checkbox.setToolTip('Breakdown each layer of a PCOMP/PSHELL') self.nastran_is_properties_checkbox.setChecked(self._nastran_is_properties) self.nastran_is_3d_bars_checkbox = QCheckBox('3D Bars') self.nastran_is_3d_bars_checkbox.setToolTip('Crete 3D Bar/Beam geometry') self.nastran_is_3d_bars_checkbox.setChecked(self._nastran_is_3d_bars) #self.nastran_is_3d_bars_checkbox.setDisabled(True) self.nastran_is_3d_bars_update_checkbox = QCheckBox('Update 3D Bars') self.nastran_is_3d_bars_update_checkbox.setToolTip('Update the 3D Bar/Beam cross-sections when deformations are applied') self.nastran_is_3d_bars_update_checkbox.setChecked(self._nastran_is_3d_bars_update) self.nastran_is_shell_mcid_checkbox = QCheckBox('Shell MCIDs') self.nastran_is_shell_mcid_checkbox.setToolTip('Calculate the Material Coordinate Systems for Shells') self.nastran_is_shell_mcid_checkbox.setChecked(self._nastran_is_shell_mcids) self.nastran_create_coords_checkbox = QCheckBox('Coords') self.nastran_create_coords_checkbox.setChecked(self._nastran_create_coords) self.nastran_is_bar_axes_checkbox = QCheckBox('Bar Axes') self.nastran_is_bar_axes_checkbox.setChecked(self._nastran_is_bar_axes) #self.nastran_is_bar_axes_checkbox.setDisabled(True) if 0: self.nastran_stress_checkbox = QCheckBox('Stress') self.nastran_plate_stress_checkbox = QCheckBox('Plate Stress') self.nastran_composite_plate_stress_checkbox = QCheckBox('Composite Plate Stress') self.nastran_rod_stress_checkbox = QCheckBox('Rod Stress') self.nastran_bar_stress_checkbox = QCheckBox('Bar Stress') self.nastran_beam_stress_checkbox = QCheckBox('Beam Stress') self.nastran_stress_checkbox.setChecked(self._nastran_stress) self.nastran_plate_stress_checkbox.setChecked(self._nastran_plate_stress) self.nastran_composite_plate_stress_checkbox.setChecked(self._nastran_composite_plate_stress) self.nastran_rod_stress_checkbox.setChecked(self._nastran_rod_stress) self.nastran_bar_stress_checkbox.setChecked(self._nastran_bar_stress) self.nastran_beam_stress_checkbox.setChecked(self._nastran_beam_stress) self.nastran_strain_checkbox = QCheckBox('Strain') self.nastran_plate_strain_checkbox = QCheckBox('Plate Strain') self.nastran_composite_plate_strain_checkbox = QCheckBox('Composite Plate Strain') self.nastran_rod_strain_checkbox = QCheckBox('Rod Strain') self.nastran_bar_strain_checkbox = QCheckBox('Bar Strain') self.nastran_beam_strain_checkbox = QCheckBox('Beam Strain') self.nastran_strain_checkbox.setChecked(self._nastran_strain) self.nastran_plate_strain_checkbox.setChecked(self._nastran_plate_strain) self.nastran_composite_plate_strain_checkbox.setChecked(self._nastran_composite_plate_strain) self.nastran_rod_strain_checkbox.setChecked(self._nastran_rod_strain) self.nastran_bar_strain_checkbox.setChecked(self._nastran_bar_strain) self.nastran_beam_strain_checkbox.setChecked(self._nastran_beam_strain) #----------------------------------------------------------------------- # closing self.apply_button = QPushButton("Apply") self.ok_button = QPushButton("OK") self.cancel_button = QPushButton("Cancel")
else: # pragma: no cover print(case, dt, type(dt)) # cases: # 1. lsftsfqs # 2. loadIDs, eigrs # 3. lsdvmns, eigrs # ??? if hasattr(case, 'mode_cycle'): header += '; freq = %s Hz' % func_str(case.mode_cycles[itime]) elif hasattr(case, 'cycles'): header += '; freq = %s Hz' % func_str(case.cycles[itime]) elif hasattr(case, 'eigis'): eigi = case.eigis[itime] cycle = np.abs(eigi) / (2. * np.pi) header += '; freq = %s Hz' % func_str(cycle) elif hasattr(case, 'eigns'): # eign is not eigr; it's more like eigi eigi = case.eigns[itime] # but |eigi| = sqrt(|eign|) freq = np.sqrt(np.abs(eigi)) cycle = freq / (2. * np.pi) header += '; freq = %s Hz' % func_str(freq) elif hasattr(case, 'freqs'): header += '; freq = %s Hz' % func_str(case.freqs[itime]) elif hasattr(case, 'times'): time = case._times[itime] header += '; time = %s sec' % func_str(time) elif hasattr(case, 'dts'): time = case._times[itime] header += '; time = %s sec' % func_str(time) #print(header)
def create_widgets(self, show_tol): """creates the display window""" # CORD2R #self.origin_label = QLabel("Origin:") #self.zaxis_label = QLabel("Z Axis:") #self.xz_plane_label = QLabel("XZ Plane:") # Z-Axis Projection self.p1_label = QLabel("Origin/P1:") self.p2_label = QLabel("P2:") self.zaxis_label = QLabel("Z Axis:") self.method_pulldown = QComboBox() for method in self.methods: self.method_pulldown.addItem(method) self.zaxis_method_pulldown = QComboBox() for method in self.zaxis_methods: self.zaxis_method_pulldown.addItem(method) self.cid_label = QLabel("Coordinate System:") self.p1_cid_pulldown = QComboBox() self.p2_cid_pulldown = QComboBox() self.zaxis_cid_pulldown = QComboBox() cid_global_str = '0/Global' for cid in sorted(self.cids): if cid == 0: cid_str = cid_global_str else: cid_str = str(cid) #print('cid_str = %r' % cid_str) self.p1_cid_pulldown.addItem(cid_str) self.p2_cid_pulldown.addItem(cid_str) self.zaxis_cid_pulldown.addItem(cid_str) self.p1_cid_pulldown.setCurrentIndex(0) self.p2_cid_pulldown.setCurrentIndex(0) self.zaxis_cid_pulldown.setCurrentIndex(0) if len(self.cids) == 1: self.p1_cid_pulldown.setEnabled(False) self.p2_cid_pulldown.setEnabled(False) self.zaxis_cid_pulldown.setEnabled(False) #self.p1_cid_pulldown.setItemText(0, cid_str) #self.p2_cid_pulldown.setItemText(0, cid_str) #self.zaxis_cid_pulldown.setItemText(0, cid_str) self.p1_cid_pulldown.setToolTip( 'Defines the coordinate system for the Point P1') self.p2_cid_pulldown.setToolTip( 'Defines the coordinate system for the Point P2') self.zaxis_cid_pulldown.setToolTip( 'Defines the coordinate system for the Z Axis') self.p1_x_edit = QFloatEdit('') self.p1_y_edit = QFloatEdit('') self.p1_z_edit = QFloatEdit('') self.p2_x_edit = QFloatEdit('') self.p2_y_edit = QFloatEdit('') self.p2_z_edit = QFloatEdit('') self.zaxis_x_edit = QFloatEdit('') self.zaxis_y_edit = QFloatEdit('') self.zaxis_z_edit = QFloatEdit('') self.ytol_label = QLabel('Y Tolerance:') self.zero_tol_label = QLabel('Zero Tolerance:') ytol = 10. zero_tol = 1e-5 self.ytol_edit = QFloatEdit(func_str(ytol)) self.zero_tol_edit = QFloatEdit(func_str(zero_tol)) if not show_tol: self.ytol_label.setVisible(False) self.zero_tol_label.setVisible(False) self.ytol_edit.setVisible(False) self.zero_tol_edit.setVisible(False) self.p2_label = QLabel("P2:") # Plane Color self.plane_color_label = QLabel("Plane Color:") self.plane_color_edit = QPushButtonColor(self.plane_color_int) self.corner_coord_label = QLabel("Show Corner Coordinate System:") self.corner_coord_checkbox = QCheckBox() #self.corner_coord_checkbox.setChecked(self._show_corner_coord) #----------------------------------------------------------------------- # closing self.apply_button = QPushButton("Apply") self.ok_button = QPushButton("OK") self.cancel_button = QPushButton("Cancel")
def on_default_min(self): self.min_edit.setText(func_str(self._default_min)) self.min_edit.setStyleSheet("QLineEdit{background: white;}")
def on_default_clipping_max(self): self.clipping_max_edit.setText(func_str(self._default_clipping_max)) self.clipping_max_edit.setStyleSheet("QLineEdit{background: white;}")
def create_widgets(self, show_animation_button=True): """creates the menu objects""" # title self.title_label = QLabel("Title:") self.title_edit = QLineEdit(str(self._default_title)) self.title_button = QPushButton("Default") # Min self.min_label = QLabel("Min:") self.min_edit = QFloatEdit(func_str(self._default_min)) self.min_button = QPushButton("Default") # Max self.max_label = QLabel("Max:") self.max_edit = QFloatEdit(func_str(self._default_max)) self.max_button = QPushButton("Default") #--------------------------------------- # Format self.format_label = QLabel("Format (e.g. %.3f, %g, %.6e):") self.format_edit = QLineEdit(str(self._format)) self.format_button = QPushButton("Default") #--------------------------------------- # Scale self.scale_label = QLabel("True Scale:") self.scale_edit = QFloatEdit(func_str(self._scale)) self.scale_button = QPushButton("Default") if self._icase_disp is None: self.scale_label.setVisible(False) self.scale_edit.setVisible(False) self.scale_button.setVisible(False) # Phase self.phase_label = QLabel("Phase (deg):") self.phase_edit = QFloatEdit(func_str(self._phase)) self.phase_button = QPushButton("Default") if self._icase_disp is None or self._default_phase is None: self.phase_label.setVisible(False) self.phase_edit.setVisible(False) self.phase_button.setVisible(False) self.phase_edit.setText('0.0') #--------------------------------------- self.arrow_scale_label = QLabel("Arrow Scale:") self.arrow_scale_edit = QFloatEdit(func_str(self._arrow_scale)) self.arrow_scale_button = QPushButton("Default") if self._icase_vector is None: self.arrow_scale_label.setVisible(False) self.arrow_scale_edit.setVisible(False) self.arrow_scale_button.setVisible(False) #tip = QtGui.QToolTip() #tip.setTe #self.format_edit.toolTip(tip) #--------------------------------------- # nlabels self.nlabels_label = QLabel("Number of Labels:") self.nlabels_edit = QIntEdit(func_str(self._nlabels)) self.nlabels_button = QPushButton("Default") self.labelsize_label = QLabel("Label Size:") self.labelsize_edit = QIntEdit(func_str(self._labelsize)) self.labelsize_button = QPushButton("Default") self.ncolors_label = QLabel("Number of Colors:") self.ncolors_edit = QIntEdit(func_str(self._ncolors)) self.ncolors_button = QPushButton("Default") self.colormap_label = QLabel("Color Map:") self.colormap_edit = QComboBox(self) self.colormap_button = QPushButton("Default") for key in colormap_keys: self.colormap_edit.addItem(key) self.colormap_edit.setCurrentIndex(colormap_keys.index(self._colormap)) # -------------------------------------------------------------- # the header self.grid2_title = QLabel("Color Scale:") # red/blue or blue/red self.low_to_high_radio = QRadioButton('Low -> High') self.high_to_low_radio = QRadioButton('High -> Low') widget = QWidget(self) low_to_high_group = QButtonGroup(widget) low_to_high_group.addButton(self.low_to_high_radio) low_to_high_group.addButton(self.high_to_low_radio) self.low_to_high_radio.setChecked(self._default_is_low_to_high) self.high_to_low_radio.setChecked(not self._default_is_low_to_high) # horizontal / vertical self.horizontal_radio = QRadioButton("Horizontal") self.vertical_radio = QRadioButton("Vertical") widget = QWidget(self) horizontal_vertical_group = QButtonGroup(widget) horizontal_vertical_group.addButton(self.horizontal_radio) horizontal_vertical_group.addButton(self.vertical_radio) self.horizontal_radio.setChecked(self._default_is_horizontal) self.vertical_radio.setChecked(not self._default_is_horizontal) # on / off self.show_radio = QRadioButton("Show") self.hide_radio = QRadioButton("Hide") widget = QWidget(self) show_hide_group = QButtonGroup(widget) show_hide_group.addButton(self.show_radio) show_hide_group.addButton(self.hide_radio) self.show_radio.setChecked(self._default_is_shown) self.hide_radio.setChecked(not self._default_is_shown) # -------------------------------------------------------------- if self._icase_fringe is None: self.title_label.setVisible(False) self.title_edit.setVisible(False) self.title_button.setVisible(False) if not self._is_fringe: self.max_label.hide() self.min_label.hide() self.max_edit.hide() self.min_edit.hide() self.max_button.hide() self.min_button.hide() self.format_label.hide() self.format_edit.hide() self.format_button.hide() self.nlabels_label.hide() self.nlabels_edit.hide() self.nlabels_button.hide() self.ncolors_label.hide() self.ncolors_edit.hide() self.ncolors_button.hide() self.grid2_title.hide() self.vertical_radio.hide() self.horizontal_radio.hide() self.show_radio.hide() self.hide_radio.hide() self.low_to_high_radio.hide() self.high_to_low_radio.hide() self.colormap_label.hide() self.colormap_edit.hide() self.colormap_button.hide() self.animate_button = QPushButton('Create Animation') self.animate_button.setVisible(show_animation_button) #self.advanced_button = QPushButton('Advanced') if self._default_icase_disp is None: # or self._default_icase_vector is None: self.animate_button.setEnabled(False) self.animate_button.setToolTip(ANIMATE_TOOLTIP_OFF) else: self.animate_button.setEnabled(True) self.animate_button.setToolTip(ANIMATE_TOOLTIP_ON) # closing self.apply_button = QPushButton("Apply") self.ok_button = QPushButton("OK") self.cancel_button = QPushButton("Cancel")