示例#1
0
 def init_progress(self, progress_type, number_of_steps):
     self.setEnabled(True)
     self.progress_bar.reset()
     self.progress_type_label.setText(progress_type)
     self.number_of_steps = number_of_steps
     self.progress_bar.setMaximum(self.number_of_steps)
     BlissWidget.set_status_info("status", progress_type)
示例#2
0
    def _do_login_as_proposal(self, proposal_code, proposal_number, proposal_password, beamline_name, impersonate=False):
        """
        Descript. :
        """
        # Get proposal and sessions
        logging.getLogger().debug('ProposalBrick: querying ISPyB database...')
        prop = self.lims_hwobj.getProposal(proposal_code, proposal_number)

        # Check if everything went ok
        prop_ok = True
        try:
            prop_ok = (prop['status']['code'] == 'ok')
        except KeyError:
            prop_ok = False
        if not prop_ok:
            self.ispybDown()
        else:
            self.select_proposal(prop)
            BlissWidget.set_status_info("user", "%s%s@%s" % \
               (proposal_code, str(proposal_number), beamline_name))
示例#3
0
    def current_value_changed(self):
        """
        Descript. :
        Args.     :
        Return.   : 
        """
        input_field_text = self.new_value_ledit.text()

        if self.new_value_validator.validate(input_field_text, 0)[0] == \
           QValidator.Acceptable:
            if self.units_combobox.currentIndex() == 0:
                BlissWidget.set_status_info("status", "Setting energy...", "running")
                self.energy_hwobj.move_energy(float(input_field_text))
            else:
                self.energy_hwobj.move_wavelength(float(input_field_text))
            self.new_value_ledit.setText("")
            Qt4_widget_colors.set_widget_color(\
                 self.new_value_ledit,
                 Qt4_widget_colors.LINE_EDIT_ACTIVE,
                 QPalette.Base)
示例#4
0
def display(configuration, no_border=False):
    """Display window"""

    windows = []
    for window in configuration.windows_list:
        BlissWidget.set_status_info("status", window["name"])
        display = WindowDisplayWidget(None, window["name"],
            execution_mode=True, no_border=no_border)
        windows.append(display)
        display.set_caption(window["properties"]["caption"])
        display.draw_preview(window, id(display))
        if window["properties"]["show"]:
            display._show = True
        else:
            display._show = False
        display.hide()
        restoreSizes(configuration, window, display)

    for window in windows:
        window.append_windows_links(windows)

    return windows
示例#5
0
    def _do_login_as_user(self, user_name):
        logging.getLogger().debug('ProposalBrick: querying ISPyB database...')
 
        self.proposals = self.lims_hwobj.get_proposals_by_user(user_name)

        if len(self.proposals) == 0:
            logging.getLogger("GUI").error("No proposals for user %s found in ISPyB" % user_name)
            self.ispybDown()
        else: 
            self.proposal_combo.clear()
            proposal_tooltip = "Available proposals:"
            for proposal in self.proposals:
                proposal_info = "%s%s - %s" % (proposal["Proposal"]["code"],
                                               proposal["Proposal"]["number"],
                                               proposal["Proposal"]["title"])
                self.proposal_combo.addItem(proposal_info)
                proposal_tooltip += "\n   %s" % proposal_info
       
            if len(self.proposals) > 1:
                proposal_index = self.select_todays_proposal(self.proposals)
                self.proposal_combo.setEnabled(True)
            else:
                proposal_tooltip = ""
                proposal_index = 0
                self.proposal_combo.setEnabled(False)

            self.select_proposal(self.proposals[proposal_index])
            self.proposal_combo.setCurrentIndex(proposal_index)
            proposal_info = "%s%s - %s" % (
                self.proposals[proposal_index]["Proposal"]["code"],
                self.proposals[proposal_index]["Proposal"]["number"],                           
                self.proposals[proposal_index]["Proposal"]["title"])
            proposal_tooltip += "\nSelected proposal:\n   %s" % proposal_info
            self.proposal_combo.setToolTip(proposal_tooltip)
            logging.getLogger("GUI").info("ISPyB proposal: %s" % proposal_info)

            BlissWidget.set_status_info("user", "%s@%s" % \
               (user_name, self.lims_hwobj.beamline_name))
示例#6
0
 def state_changed(self, state):
     self.setEnabled(state == "ready")
     BlissWidget.set_status_info("status", "", "")
 def stop_progress(self, *args):
     self.progress_bar.reset()
     self.progress_type_label.setText("")
     self.setEnabled(False)
     BlissWidget.set_status_info("status", "")
     BlissWidget.stop_progress_bar()
示例#8
0
 def stop_progress(self, *args):
     self.progress_bar.reset()
     self.progress_type_label.setText("")
     self.setEnabled(False)
     BlissWidget.set_status_info("status", "")
示例#9
0
 def state_changed(self, state):
     self.setEnabled(state == "ready")
     BlissWidget.set_status_info("status", "", "")