Changeset 6280464 in sasview for src/sas/qtgui/Calculators


Ignore:
Timestamp:
Nov 3, 2017 10:58:39 AM (7 years ago)
Author:
Piotr Rozyczko <rozyczko@…>
Branches:
ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc
Children:
412e069e
Parents:
304d082
Message:

More Qt5 related fixes.

Location:
src/sas/qtgui/Calculators
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • src/sas/qtgui/Calculators/DataOperationUtilityPanel.py

    r0849aec r6280464  
    140140            data1 = self.data1 
    141141            data2 = self.data2 
    142             exec("output = data1 %s data2" % operator) 
    143         except: 
    144             raise 
     142            output = eval("data1 %s data2" % operator) 
     143        except Exception as ex: 
     144            logging.error(ex) 
     145            return 
    145146 
    146147        self.output = output 
  • src/sas/qtgui/Calculators/DensityPanel.py

    r0849aec r6280464  
    6060 
    6161        # set validators 
    62         self.ui.editMolecularFormula.setValidator(FormulaValidator(self.ui.editMolecularFormula)) 
     62        #self.ui.editMolecularFormula.setValidator(FormulaValidator(self.ui.editMolecularFormula)) 
    6363 
    6464        rx = QtCore.QRegExp("[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?") 
     
    9494        self.mapper.addMapping(self.ui.editMassDensity     , MODEL.MASS_DENSITY) 
    9595 
    96         # FIXME DOESNT WORK WITH QT5 
    97         #self.mapper.toFirst() 
     96        self.mapper.toFirst() 
    9897 
    9998    def dataChanged(self, top, bottom): 
     
    140139 
    141140    def modelReset(self): 
    142         #self.model.beginResetModel() 
    143141        try: 
    144142            self.setMode(None) 
     
    148146        finally: 
    149147            pass 
    150             #self.model.endResetModel() 
    151148 
    152149    def displayHelp(self): 
  • src/sas/qtgui/Calculators/GenericScatteringCalculator.py

    r0849aec r6280464  
    135135                                          "SLD files (*.SLD *.sld);;PDB files (*.pdb *.PDB);; " 
    136136                                          "OMF files (*.OMF *.omf);; " 
    137                                           "All files (*.*)") 
     137                                          "All files (*.*)")[0] 
    138138            if self.datafile: 
    139139                self.default_shape = str(self.cbShape.currentText()) 
  • src/sas/qtgui/Calculators/KiessigPanel.py

    r0849aec r6280464  
    5555            self.thickness.set_deltaq(dq=float(self.deltaq_in.text())) 
    5656            kiessing_result = self.thickness.compute_thickness() 
    57             float_as_str = "{:.3f}".format(kiessing_result) 
    58             self.lengthscale_out.setText(float_as_str) 
     57            if kiessing_result: 
     58                float_as_str = "{:.3f}".format(kiessing_result) 
     59                self.lengthscale_out.setText(float_as_str) 
     60            else: 
     61                # error or division by zero 
     62                self.lengthscale_out.setText("") 
     63 
    5964        except (ArithmeticError, ValueError): 
    6065            self.lengthscale_out.setText("") 
  • src/sas/qtgui/Calculators/ResolutionCalculatorPanel.py

    r0849aec r6280464  
    317317        if self.cbCustomSpectrum.currentText() == 'Add New': 
    318318            datafile = QtWidgets.QFileDialog.getOpenFileName( 
    319                 self, "Choose a spectral distribution file", "", 
    320                 "All files (*.*)", 
    321                 QtWidgets.QFileDialog.DontUseNativeDialog) 
     319                self, "Choose a spectral distribution file","", 
     320                "All files (*.*)", None, 
     321                QtWidgets.QFileDialog.DontUseNativeDialog)[0] 
    322322 
    323323            if datafile is None or str(datafile) == '': 
     
    568568        : return: image (numpy array) 
    569569        """ 
    570         # This fails in py3 with 
    571         # [Failure instance: Traceback: <class 'TypeError'>: 'map' object is not subscriptable 
    572         # INVESTIGATE 
    573         image = map(func, qx, qy, 
     570        image = list(map(func, qx, qy, 
    574571                    qx_min, qx_max, 
    575                     qy_min, qy_max)[0] 
     572                    qy_min, qy_max))[0] 
     573 
    576574        return image 
    577575 
     
    751749        self.plotter.plot() 
    752750        self.plotter.show() 
     751        self.plotter.update() 
    753752 
    754753    def drawLines(self): 
  • src/sas/qtgui/Calculators/SldPanel.py

    r0849aec r6280464  
    128128 
    129129        # set validators 
    130         self.ui.editMolecularFormula.setValidator(GuiUtils.FormulaValidator(self.ui.editMolecularFormula)) 
     130        # TODO: GuiUtils.FormulaValidator() crashes with Qt5 - fix 
     131        #self.ui.editMolecularFormula.setValidator(GuiUtils.FormulaValidator(self.ui.editMolecularFormula)) 
    131132 
    132133        rx = QtCore.QRegExp("[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?") 
     
    148149 
    149150        self.model.dataChanged.connect(self.dataChanged) 
    150         #QtCore.QObject.connect( 
    151         #    self.model, 
    152         #    QtCore.SIGNAL("dataChanged(QModelIndex,QModelIndex)"), 
    153         #    self.dataChanged) 
    154151 
    155152        self.modelReset() 
     
    166163            self.mapper.addMapping(edit, key) 
    167164 
    168         # FIXME DOESNT WORK WITH QT5 
    169         #self.mapper.toFirst() 
     165        self.mapper.toFirst() 
    170166 
    171167    def dataChanged(self, top, bottom): 
     
    216212        finally: 
    217213            pass 
    218             #self.model.endResetModel() 
     214        #self.model.endResetModel() 
    219215 
    220216    def displayHelp(self): 
  • src/sas/qtgui/Calculators/SlitSizeCalculator.py

    r0849aec r6280464  
    44import os 
    55import sys 
     6import logging 
    67 
    78from PyQt5 import QtCore 
     
    6465            return 
    6566        loader = Loader() 
    66         data = loader.load(path_str)[0] 
     67        try: 
     68            data = loader.load(path_str)[0] 
     69        # Can return multiple exceptions - gather them all under one umbrella and complain 
     70        except Exception as ex: 
     71            logging.error(ex) 
     72            return 
    6773 
    6874        self.data_file.setText(os.path.basename(path_str)) 
     
    7985                                                 "SAXSess 1D data (*.txt *.TXT *.dat *.DAT)", 
    8086                                                 None, 
    81                                                  QtWidgets.QFileDialog.DontUseNativeDialog) 
    82  
    83         if path is None: 
    84             return 
    85  
     87                                                 QtWidgets.QFileDialog.DontUseNativeDialog)[0] 
    8688        return path 
    8789 
     
    106108            self.clearResults() 
    107109            msg = "ERROR: Data hasn't been loaded correctly" 
    108             raise RuntimeError(msg) 
     110            logging.error(msg) 
     111            return 
    109112 
    110113        if data.__class__.__name__ == 'Data2D': 
    111114            self.clearResults() 
    112115            msg = "Slit Length cannot be computed for 2D Data" 
    113             raise RuntimeError(msg) 
     116            logging.error(msg) 
     117            return 
    114118 
    115119        #compute the slit size 
     
    119123            if xdata == [] or xdata is None or ydata == [] or ydata is None: 
    120124                msg = "The current data is empty please check x and y" 
    121                 raise ValueError(msg) 
     125                logging.error(msg) 
     126                return 
    122127            slit_length_calculator = SlitlengthCalculator() 
    123128            slit_length_calculator.set_data(x=xdata, y=ydata) 
     
    126131            self.clearResults() 
    127132            msg = "Slit Size Calculator: %s" % (sys.exc_info()[1]) 
    128             raise RuntimeError(msg) 
     133            logging.error(msg) 
     134            return 
    129135 
    130136        slit_length_str = "{:.5f}".format(slit_length) 
Note: See TracChangeset for help on using the changeset viewer.