def __init__(self, parent=None, name=None, fl=0): """ Descript. : """ CreateTaskBase.__init__(self, parent, name, fl, 'Characterisation') self.setObjectName("create_char_widget") # Hardware objects ---------------------------------------------------- # Internal variables -------------------------------------------------- self._vertical_dimension_widget = None self._current_selected_item = None self.init_models() self._char_params_mib = DataModelInputBinder(self._char_params) # Graphic elements ---------------------------------------------------- self._acq_widget = \ AcquisitionWidgetSimple(self, acq_params = self._acquisition_parameters, path_template = self._path_template) self._data_path_widget = DataPathWidget(self, data_model=self._path_template, layout='vertical') self._vertical_dimension_widget = loadUi( os.path.join( os.path.dirname(__file__), 'ui_files/Qt4_vertical_crystal_dimension_widget_layout.ui')) self._char_widget = loadUi( os.path.join( os.path.dirname(__file__), 'ui_files/Qt4_characterise_simple_widget_vertical_layout.ui')) # Layout -------------------------------------------------------------- _main_vlayout = QVBoxLayout(self) _main_vlayout.addWidget(self._acq_widget) _main_vlayout.addWidget(self._data_path_widget) _main_vlayout.addWidget(self._char_widget) _main_vlayout.addWidget(self._vertical_dimension_widget) _main_vlayout.setContentsMargins(2, 2, 2, 2) _main_vlayout.setSpacing(6) _main_vlayout.addStretch(0) # SizePolicies -------------------------------------------------------- # Qt signal/slot connections ------------------------------------------ self._data_path_widget.pathTemplateChangedSignal.\ connect(self.path_template_changed) self._acq_widget.acqParametersChangedSignal.\ connect(self.acq_parameters_changed) self._vertical_dimension_widget.space_group_ledit.activated.\ connect(self._space_group_change) #self.connect(induced_burn_cbx, QtCore.SIGNAL("toggled(bool)"), # self.use_induced_burn) self._char_widget.characterisation_gbox.toggled.connect(\ self.characterisation_gbox_toggled) self._char_widget.wait_result_cbx.toggled.connect(\ self.wait_results_cbx_toggled) self._char_widget.execute_plan_cbx.toggled.connect(\ self.run_diffraction_plan_cbx_toggled) # Other --------------------------------------------------------------- self._char_params_mib.bind_value_update( 'opt_sad', self._char_widget.optimised_sad_cbx, bool, None) self._char_params_mib.bind_value_update( 'account_rad_damage', self._char_widget.account_rad_dmg_cbx, bool, None) #self._char_params_mib.bind_value_update('determine_rad_params', # induced_burn_cbx, # bool, None) self._char_params_mib.bind_value_update( 'strategy_complexity', self._char_widget.start_comp_cbox, int, None) self._char_params_mib.\ bind_value_update('max_crystal_vdim', self._vertical_dimension_widget.max_vdim_ledit, float, QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('min_crystal_vdim', self._vertical_dimension_widget.min_vdim_ledit, float, QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('min_crystal_vphi', self._vertical_dimension_widget.min_vphi_ledit, float, QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('max_crystal_vphi', self._vertical_dimension_widget.max_vphi_ledit, float, QDoubleValidator(0.0, 1000, 2, self)) self._vertical_dimension_widget.space_group_ledit.addItems( XTAL_SPACEGROUPS)
def __init__(self, parent=None, name=None, fl=0): """ Descript. : """ CreateTaskBase.__init__(self, parent, name, fl, 'Characterisation') if not name: self.setName("create_char_widget") # Hardware objects ---------------------------------------------------- # Internal variables -------------------------------------------------- self._current_selected_item = None self.init_models() self._char_params_mib = DataModelInputBinder(self._char_params) # Graphic elements ---------------------------------------------------- self._acq_widget = \ AcquisitionWidgetSimple(self, acq_params = self._acquisition_parameters, path_template = self._path_template) self._data_path_gbox = QtGui.QGroupBox('Data location', self) self._data_path_widget = DataPathWidget(self._data_path_gbox, data_model=self._path_template, layout='vertical') self._vertical_dimension_widget = uic.loadUi( os.path.join( os.path.dirname(__file__), 'ui_files/Qt4_vertical_crystal_dimension_widget_layout.ui')) self._char_widget = uic.loadUi( os.path.join( os.path.dirname(__file__), 'ui_files/Qt4_characterise_simple_widget_vertical_layout.ui')) gbox = self._char_widget.findChild(QtGui.QGroupBox, "characterisation_gbox") p = gbox.palette() p.setColor(QtGui.QPalette.Window, QtCore.Qt.red) p.setColor(QtGui.QPalette.Highlight, QtCore.Qt.red) gbox.setPalette(p) # Layout -------------------------------------------------------------- _data_path_gbox_layout = QtGui.QVBoxLayout(self) _data_path_gbox_layout.addWidget(self._data_path_widget) _data_path_gbox_layout.setSpacing(0) _data_path_gbox_layout.setContentsMargins(0, 0, 0, 0) self._data_path_gbox.setLayout(_data_path_gbox_layout) _main_vlayout = QtGui.QVBoxLayout(self) _main_vlayout.addWidget(self._acq_widget) _main_vlayout.addWidget(self._data_path_gbox) _main_vlayout.addWidget(self._char_widget) _main_vlayout.addWidget(self._vertical_dimension_widget) _main_vlayout.setSpacing(0) _main_vlayout.setContentsMargins(0, 0, 0, 0) self.setLayout(_main_vlayout) # SizePolicies -------------------------------------------------------- # Qt signal/slot connections ------------------------------------------ # Other --------------------------------------------------------------- self._char_params_mib.bind_value_update( 'opt_sad', self._char_widget.optimised_sad_cbx, bool, None) self._char_params_mib.bind_value_update( 'account_rad_damage', self._char_widget.account_rad_dmg_cbx, bool, None) #self._char_params_mib.bind_value_update('determine_rad_params', # induced_burn_cbx, # bool, None) self._char_params_mib.bind_value_update( 'strategy_complexity', self._char_widget.start_comp_cbox, int, None) self._char_params_mib.\ bind_value_update('max_crystal_vdim', self._vertical_dimension_widget.max_vdim_ledit, float, QtGui.QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('min_crystal_vdim', self._vertical_dimension_widget.min_vdim_ledit, float, QtGui.QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('min_crystal_vphi', self._vertical_dimension_widget.min_vphi_ledit, float, QtGui.QDoubleValidator(0.0, 1000, 2, self)) self._char_params_mib.\ bind_value_update('max_crystal_vphi', self._vertical_dimension_widget.max_vphi_ledit, float, QtGui.QDoubleValidator(0.0, 1000, 2, self)) self._vertical_dimension_widget.space_group_ledit.addItems( XTAL_SPACEGROUPS) self._data_path_widget.data_path_layout.prefix_ledit.textChanged.\ connect(self._prefix_ledit_change) self._data_path_widget.data_path_layout.run_number_ledit.textChanged.\ connect(self._run_number_ledit_change) self._vertical_dimension_widget.space_group_ledit.activated.\ connect(self._space_group_change) self.connect(self._data_path_widget, QtCore.SIGNAL("pathTemplateChanged"), self.handle_path_conflict)