def __init__(self, *args): """ Descript. : """ BlissWidget.__init__(self, *args) # Hardware objects ---------------------------------------------------- self.diffractometer_hwobj = None self.session_hwobj = None self.lims_hwobj = None self.sample_changer_hwobj = None self.plate_manipulator_hwobj = None self.queue_hwobj = None # Internal variables -------------------------------------------------- self.enable_collect_conditions = {} self.current_view = None self.lims_samples = None self.filtered_lims_samples = None # Properties ---------------------------------------------------------- self.addProperty("holderLengthMotor", "string", "") self.addProperty("queue", "string", "/queue") self.addProperty("queue_model", "string", "/queue-model") self.addProperty("beamline_setup", "string", "/beamline-setup") self.addProperty("xml_rpc_server", "string", "/xml_rpc_server") self.addProperty("useFilterWidget", "boolean", True) self.addProperty("useSampleWidget", "boolean", True) self.addProperty("scOneName", "string", "Sample changer") self.addProperty("scTwoName", "string", "Plate") self.addProperty("usePlateNavigator", "boolean", False) # Signals ------------------------------------------------------------ self.defineSignal("enable_hutch_menu", ()) self.defineSignal("enable_command_menu", ()) self.defineSignal("enable_task_toolbox", ()) self.defineSignal("queue_is_executing", ()) # Hiding and showing the tabs self.defineSignal("hide_sample_tab", ()) self.defineSignal("hide_dc_parameters_tab", ()) self.defineSignal("hide_sample_centring_tab", ()) self.defineSignal("hide_dcg_tab", ()) self.defineSignal("hide_sample_changer_tab", ()) self.defineSignal("hide_plate_manipulator_tab", ()) self.defineSignal("hide_char_parameters_tab", ()) self.defineSignal("hide_energy_scan_tab",()) self.defineSignal("hide_xrf_spectrum_tab",()) self.defineSignal("hide_workflow_tab", ()) self.defineSignal("hide_advanced_tab", ()) # Populating the tabs with data self.defineSignal("populate_dc_parameter_widget", ()) self.defineSignal("populate_dc_group_widget", ()) self.defineSignal("populate_char_parameter_widget",()) self.defineSignal("populate_sample_details",()) self.defineSignal("populate_energy_scan_widget", ()) self.defineSignal("populate_xrf_spectrum_widget", ()) self.defineSignal("populate_workflow_tab", ()) self.defineSignal("populate_advanced_widget", ()) # Handle selection self.defineSignal("selection_changed",()) self.defineSignal("set_directory", ()) self.defineSignal("set_prefix", ()) self.defineSignal("set_sample", ()) # Slots --------------------------------------------------------------- self.defineSlot("logged_in", ()) self.defineSlot("status_msg_changed", ()) self.defineSlot("sample_load_state_changed", ()) self.defineSlot("set_session", ()) self.defineSlot("get_tree_brick",()) self.defineSlot("get_selected_samples", ()) #self.defineSlot("get_mounted_sample", ()) #self.defineSlot("new_centred_position", ()) #self.defineSlot("add_dcg", ()) #self.defineSlot("add_data_collection", ()) #self.defineSlot("set_session", ()) # Graphic elements ---------------------------------------------------- self.sample_changer_widget = uic.loadUi(os.path.join(\ os.path.dirname(__file__), "widgets/ui_files/Qt4_sample_changer_widget_layout.ui")) #self.refresh_pixmap = Qt4_Icons.load("Refresh2.png") #self.sample_changer_widget.synch_button.setIcon(QtGui.QIcon(self.refresh_pixmap)) #self.sample_changer_widget.synch_button.setText("Synch ISPyB") self.dc_tree_widget = DataCollectTree(self) self.dc_tree_widget.selection_changed_cb = self.selection_changed self.dc_tree_widget.run_cb = self.run #self.dc_tree_widget.clear_centred_positions_cb = \ # self.clear_centred_positions self.tree_options_dialog = TreeOptionsDialog(self, 'Tree options Dialog') self.tree_options_dialog.setModal(True) # Layout -------------------------------------------------------------- main_layout = QtGui.QVBoxLayout(self) main_layout.addWidget(self.sample_changer_widget) main_layout.addWidget(self.dc_tree_widget) main_layout.setSpacing(0) main_layout.setContentsMargins(0, 0, 0, 0) # SizePolicies -------------------------------------------------------- # Qt signal/slot connections ------------------------------------------ self.sample_changer_widget.details_button.clicked.connect(\ self.toggle_sample_changer_tab) self.sample_changer_widget.filter_cbox.activated.connect(\ self.mount_mode_combo_changed) self.sample_changer_widget.centring_cbox.activated.connect(\ self.dc_tree_widget.set_centring_method) self.sample_changer_widget.synch_ispyb_button.clicked.connect(\ self.refresh_sample_list) #self.sample_changer_widget.tree_options_button.clicked.connect(\ # self.open_tree_options_dialog) self.sample_changer_widget.filter_combo.activated.connect(\ self.filter_combo_changed) self.sample_changer_widget.filter_ledit.textChanged.connect(\ self.filter_text_changed) self.sample_changer_widget.sample_combo.activated.connect(\ self.sample_combo_changed) # Other --------------------------------------------------------------- self.enable_collect(False) #self.setFixedWidth(315) self.dc_tree_widget.set_centring_method(1)
def __init__(self, *args): """ Descript. : """ BlissWidget.__init__(self, *args) # Hardware objects ---------------------------------------------------- self.beamline_config_hwobj = None self.lims_hwobj = None self.sample_changer_hwobj = None self.queue_hwobj = None # Internal variables -------------------------------------------------- self.current_cpos = None self.__collection_stopped = False self.current_view = None # Properties ---------------------------------------------------------- self.addProperty("holderLengthMotor", "string", "") self.addProperty("queue", "string", "/Qt4_queue") self.addProperty("queue_model", "string", "/Qt4_queue-model") self.addProperty("beamline_setup", "string", "/Qt4_beamline-setup-break") self.addProperty("xml_rpc_server", "string", "/Qt4_xml_rpc_server") # Signals ------------------------------------------------------------ self.defineSignal("enable_hutch_menu", ()) self.defineSignal("enable_command_menu", ()) self.defineSignal("enable_task_toolbox", ()) # Hiding and showing the tabs self.defineSignal("hide_sample_tab", ()) self.defineSignal("hide_dc_parameters_tab", ()) self.defineSignal("hide_sample_centring_tab", ()) self.defineSignal("hide_dcg_tab", ()) self.defineSignal("hide_sample_changer_tab", ()) self.defineSignal("hide_char_parameters_tab", ()) self.defineSignal("hide_energy_scan_tab", ()) self.defineSignal("hide_xrf_scan_tab", ()) self.defineSignal("hide_workflow_tab", ()) self.defineSignal("hide_advanced_scan_tab", ()) # Populating the tabs with data self.defineSignal("populate_dc_parameter_widget", ()) self.defineSignal("populate_char_parameter_widget", ()) self.defineSignal("populate_sample_details", ()) self.defineSignal("populate_energy_scan_widget", ()) self.defineSignal("populate_xrf_scan_widget", ()) self.defineSignal("populate_workflow_tab", ()) self.defineSignal("populate_advanced_scan_tab", ()) # Handle selection self.defineSignal("selection_changed", ()) self.defineSignal("set_directory", ()) self.defineSignal("set_prefix", ()) self.defineSignal("set_sample", ()) # Slots --------------------------------------------------------------- self.defineSlot("logged_in", ()) self.defineSlot("status_msg_changed", ()) self.defineSlot("sample_load_state_changed", ()) self.defineSlot("set_session", ()) self.defineSlot("get_tree_brick", ()) self.defineSlot("get_selected_samples", ()) #self.defineSlot("get_mounted_sample", ()) #self.defineSlot("new_centred_position", ()) #self.defineSlot("add_dcg", ()) #self.defineSlot("add_data_collection", ()) #self.defineSlot("set_session", ()) # Graphic elements ---------------------------------------------------- self.sample_changer_widget = uic.loadUi( os.path.join( os.path.dirname(__file__), "widgets/ui_files/Qt4_sample_changer_widget_layout.ui")) self.refresh_pixmap = Qt4_Icons.load("Refresh2.png") self.sample_changer_widget.synch_button.setIcon( QtGui.QIcon(self.refresh_pixmap)) self.sample_changer_widget.synch_button.setText("Synch ISPyB") self.dc_tree_widget = DataCollectTree(self) self.dc_tree_widget.selection_changed_cb = self.selection_changed self.dc_tree_widget.run_cb = self.run #self.dc_tree_widget.clear_centred_positions_cb = \ # self.clear_centred_positions # Layout -------------------------------------------------------------- main_layout = QtGui.QVBoxLayout(self) main_layout.addWidget(self.sample_changer_widget) main_layout.addWidget(self.dc_tree_widget) main_layout.setSpacing(0) main_layout.setContentsMargins(0, 0, 0, 0) self.setLayout(main_layout) # SizePolicies -------------------------------------------------------- self.sample_changer_widget.setSizePolicy( QtGui.QSizePolicy.MinimumExpanding, QtGui.QSizePolicy.Fixed) # Qt signal/slot connections ------------------------------------------ self.sample_changer_widget.details_button.clicked.\ connect(self.toggle_sample_changer_tab) self.sample_changer_widget.filter_cbox.activated.\ connect(self.dc_tree_widget.filter_sample_list) self.sample_changer_widget.centring_cbox.activated.\ connect(self.dc_tree_widget.set_centring_method) self.sample_changer_widget.synch_button.clicked.\ connect(self.refresh_sample_list) # Other --------------------------------------------------------------- self.enable_collect(False) #self.setFixedWidth(315) #self.sample_changer_widget.child('centring_cbox').setCurrentItem(1) self.dc_tree_widget.set_centring_method(1)