Ignore:
Timestamp:
Oct 26, 2017 3:13:05 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:
895e7359
Parents:
def64a0
Message:

Initial changes to make SasView? run with python3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/qtgui/Perspectives/Fitting/FittingWidget.py

    • Property mode changed from 100644 to 100755
    rdef64a0 rb0b09b9  
    22import os 
    33from collections import defaultdict 
    4 from itertools import izip 
     4 
    55 
    66import logging 
     
    6969        if role == QtCore.Qt.ToolTipRole: 
    7070            if orientation == QtCore.Qt.Horizontal: 
    71                 return QtCore.QString(str(self.header_tooltips[section])) 
     71                return str(self.header_tooltips[section]) 
    7272 
    7373        return QtGui.QStandardItemModel.headerData(self, section, orientation, role) 
     
    353353        # Similarly on other tabs 
    354354        self.options_widget.setEnablementOnDataLoad() 
    355  
     355        self.onSelectModel() 
    356356        # Smearing tab 
    357357        self.smearing_widget.updateSmearing(self.data) 
     
    473473        model = str(self.cbModel.currentText()) 
    474474 
     475        # empty combobox forced to be read 
     476        if not model: 
     477            return 
    475478        # Reset structure factor 
    476479        self.cbStructureFactor.setCurrentIndex(0) 
     
    763766        """ 
    764767        """ 
    765         print "UPDATE FIT" 
     768        print("UPDATE FIT") 
    766769        pass 
    767770 
     
    769772        """ 
    770773        """ 
    771         print "FIT FAILED: ", reason 
     774        print("FIT FAILED: ", reason) 
    772775        pass 
    773776 
     
    814817        param_values = res.pvec     # array([ 0.36221662,  0.0146783 ]) 
    815818        param_stderr = res.stderr   # array([ 1.71293015,  1.71294233]) 
    816         params_and_errors = zip(param_values, param_stderr) 
    817         param_dict = dict(izip(param_list, params_and_errors)) 
     819        params_and_errors = list(zip(param_values, param_stderr)) 
     820        param_dict = dict(zip(param_list, params_and_errors)) 
    818821 
    819822        # Dictionary of fitted parameter: value, error 
     
    836839        Take func and throw it inside the model row loop 
    837840        """ 
    838         for row_i in xrange(self._model_model.rowCount()): 
     841        for row_i in range(self._model_model.rowCount()): 
    839842            func(row_i) 
    840843 
     
    851854            # internal so can use closure for param_dict 
    852855            param_name = str(self._model_model.item(row, 0).text()) 
    853             if param_name not in param_dict.keys(): 
     856            if param_name not in list(param_dict.keys()): 
    854857                return 
    855858            # modify the param value 
     
    863866            # Utility function for updateof polydispersity part of the main model 
    864867            param_name = str(self._model_model.item(row, 0).text())+'.width' 
    865             if param_name not in param_dict.keys(): 
     868            if param_name not in list(param_dict.keys()): 
    866869                return 
    867870            # modify the param value 
     
    878881                return str(self._model_model.item(row, 0).text()) 
    879882 
    880             [createItem(param_name) for param_name in param_dict.keys() if curr_param() == param_name] 
     883            [createItem(param_name) for param_name in list(param_dict.keys()) if curr_param() == param_name] 
    881884 
    882885            error_column.append(item) 
     
    922925            Take func and throw it inside the poly model row loop 
    923926            """ 
    924             for row_i in xrange(self._poly_model.rowCount()): 
     927            for row_i in range(self._poly_model.rowCount()): 
    925928                func(row_i) 
    926929 
     
    931934                return 
    932935            param_name = str(self._poly_model.item(row_i, 0).text()).rsplit()[-1] + '.width' 
    933             if param_name not in param_dict.keys(): 
     936            if param_name not in list(param_dict.keys()): 
    934937                return 
    935938            # modify the param value 
     
    954957                return str(self._poly_model.item(row_i, 0).text()).rsplit()[-1] + '.width' 
    955958 
    956             [createItem(param_name) for param_name in param_dict.keys() if poly_param() == param_name] 
     959            [createItem(param_name) for param_name in list(param_dict.keys()) if poly_param() == param_name] 
    957960 
    958961            error_column.append(item) 
     
    991994            Take func and throw it inside the magnet model row loop 
    992995            """ 
    993             for row_i in xrange(self._model_model.rowCount()): 
     996            for row_i in range(self._model_model.rowCount()): 
    994997                func(row_i) 
    995998 
     
    9981001            # internal so can use closure for param_dict 
    9991002            param_name = str(self._magnet_model.item(row, 0).text()) 
    1000             if param_name not in param_dict.keys(): 
     1003            if param_name not in list(param_dict.keys()): 
    10011004                return 
    10021005            # modify the param value 
     
    10161019                return str(self._magnet_model.item(row, 0).text()) 
    10171020 
    1018             [createItem(param_name) for param_name in param_dict.keys() if curr_param() == param_name] 
     1021            [createItem(param_name) for param_name in list(param_dict.keys()) if curr_param() == param_name] 
    10191022 
    10201023            error_column.append(item) 
     
    12911294            # Unparsable field 
    12921295            return 
    1293         parameter_name = str(self._model_model.data(name_index).toPyObject()) # sld, background etc. 
     1296        parameter_name = str(self._model_model.data(name_index)) #.toPyObject()) # sld, background etc. 
    12941297 
    12951298        # Update the parameter value - note: this supports +/-inf as well 
     
    13571360 
    13581361        return [str(model.item(row_index, 0).text()) 
    1359                 for row_index in xrange(model.rowCount()) 
     1362                for row_index in range(model.rowCount()) 
    13601363                if isChecked(row_index)] 
    13611364 
     
    13981401            fitted_data.symbol = 'Line' 
    13991402        # Notify the GUI manager so it can update the main model in DataExplorer 
    1400         GuiUtils.updateModelItemWithPlot(self._index, QtCore.QVariant(fitted_data), name) 
     1403        GuiUtils.updateModelItemWithPlot(self._index, fitted_data, name) 
    14011404 
    14021405    def createTheoryIndex(self, fitted_data): 
     
    14061409        name = self.nameFromData(fitted_data) 
    14071410        # Notify the GUI manager so it can create the theory model in DataExplorer 
    1408         new_item = GuiUtils.createModelItemWithPlot(QtCore.QVariant(fitted_data), name=name) 
     1411        new_item = GuiUtils.createModelItemWithPlot(fitted_data, name=name) 
    14091412        self.communicate.updateTheoryFromPerspectiveSignal.emit(new_item) 
    14101413 
     
    14601463        Thread returned error 
    14611464        """ 
    1462         print "Calculate Data failed with ", reason 
     1465        print("Calculate Data failed with ", reason) 
    14631466 
    14641467    def complete1D(self, return_data): 
     
    15571560            else: 
    15581561                # Create as many entries as current shells 
    1559                 for ishell in xrange(1, self.current_shell_displayed+1): 
     1562                for ishell in range(1, self.current_shell_displayed+1): 
    15601563                    # Remove [n] and add the shell numeral 
    15611564                    name = param_name[0:param_name.index('[')] + str(ishell) 
     
    15851588        # All possible polydisp. functions as strings in combobox 
    15861589        func = QtGui.QComboBox() 
    1587         func.addItems([str(name_disp) for name_disp in POLYDISPERSITY_MODELS.iterkeys()]) 
     1590        func.addItems([str(name_disp) for name_disp in POLYDISPERSITY_MODELS.keys()]) 
    15881591        # Set the default index 
    15891592        func.setCurrentIndex(func.findText(DEFAULT_POLYDISP_FUNCTION)) 
     
    16361639                lo = self.lstPoly.itemDelegate().poly_pd 
    16371640                hi = self.lstPoly.itemDelegate().poly_function 
    1638                 [self._poly_model.item(row_index, i).setEnabled(False) for i in xrange(lo, hi)] 
     1641                [self._poly_model.item(row_index, i).setEnabled(False) for i in range(lo, hi)] 
    16391642                return 
    16401643            except IOError: 
     
    16461649        self._poly_model.blockSignals(True) 
    16471650        max_range = self.lstPoly.itemDelegate().poly_filename 
    1648         [self._poly_model.item(row_index, i).setEnabled(True) for i in xrange(7)] 
     1651        [self._poly_model.item(row_index, i).setEnabled(True) for i in range(7)] 
    16491652        file_index = self._poly_model.index(row_index, self.lstPoly.itemDelegate().poly_filename) 
    1650         self._poly_model.setData(file_index, QtCore.QVariant("")) 
     1653        self._poly_model.setData(file_index, "") 
    16511654        self._poly_model.blockSignals(False) 
    16521655 
     
    16571660        nsigs = POLYDISPERSITY_MODELS[str(combo_string)].default['nsigmas'] 
    16581661 
    1659         self._poly_model.setData(npts_index, QtCore.QVariant(npts)) 
    1660         self._poly_model.setData(nsigs_index, QtCore.QVariant(nsigs)) 
     1662        self._poly_model.setData(npts_index, npts) 
     1663        self._poly_model.setData(nsigs_index, nsigs) 
    16611664 
    16621665        self.iterateOverModel(updateFunctionCaption) 
     
    16691672        datafile = QtGui.QFileDialog.getOpenFileName( 
    16701673            self, "Choose a weight file", "", "All files (*.*)", 
    1671             None, QtGui.QFileDialog.DontUseNativeDialog) 
     1674            QtGui.QFileDialog.DontUseNativeDialog) 
    16721675 
    16731676        if datafile is None or str(datafile)=='': 
     
    16981701        fname = os.path.basename(str(datafile)) 
    16991702        fname_index = self._poly_model.index(row_index, self.lstPoly.itemDelegate().poly_filename) 
    1700         self._poly_model.setData(fname_index, QtCore.QVariant(fname)) 
     1703        self._poly_model.setData(fname_index, fname) 
    17011704 
    17021705    def setMagneticModel(self): 
     
    17201723        top_index = self.kernel_module.multiplicity_info.number 
    17211724        shell_names = [] 
    1722         for i in xrange(1, top_index+1): 
     1725        for i in range(1, top_index+1): 
    17231726            for name in multi_names: 
    17241727                shell_names.append(name+str(i)) 
     
    17701773        func = QtGui.QComboBox() 
    17711774        # Available range of shells displayed in the combobox 
    1772         func.addItems([str(i) for i in xrange(param_length+1)]) 
     1775        func.addItems([str(i) for i in range(param_length+1)]) 
    17731776 
    17741777        # Respond to index change 
Note: See TracChangeset for help on using the changeset viewer.