Changeset b0b09b9 in sasview for src/sas/qtgui/Perspectives


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

Location:
src/sas/qtgui/Perspectives
Files:
14 edited

Legend:

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

    ree18d33 rb0b09b9  
    1414 
    1515def map_apply(arguments): 
    16     return apply(arguments[0], arguments[1:]) 
     16    return arguments[0](*arguments[1:]) 
    1717 
    1818class FitThread(CalcThread): 
     
    5555        except KeyboardInterrupt: 
    5656            msg = "Fitting: terminated by the user." 
    57             raise KeyboardInterrupt, msg 
     57            raise KeyboardInterrupt(msg) 
    5858 
    5959    def compute(self): 
     
    7171            list_q = [None]*fitter_size 
    7272 
    73             inputs = zip(list_map_get_attr, self.fitter, list_fit_function, 
     73            inputs = list(zip(list_map_get_attr, self.fitter, list_fit_function, 
    7474                         list_q, list_q, list_handler, list_curr_thread, 
    75                          list_reset_flag) 
    76             result = map(map_apply, inputs) 
     75                         list_reset_flag)) 
     76            result = list(map(map_apply, inputs)) 
    7777            results = (result, time.time()-self.starttime) 
    7878            if self.handler: 
     
    8181                return (results) 
    8282 
    83         except KeyboardInterrupt, msg: 
     83        except KeyboardInterrupt as msg: 
    8484            # Thread was interrupted, just proceed and re-raise. 
    8585            # Real code should not print, but this is an example... 
  • src/sas/qtgui/Perspectives/Fitting/FittingLogic.py

    ree18d33 rb0b09b9  
    196196                msg = "Unable to find min/max/length of \n data named %s" % \ 
    197197                            self.data.filename 
    198                 raise ValueError, msg 
     198                raise ValueError(msg) 
    199199 
    200200        else: 
     
    206206                msg = "Unable to find min/max of \n data named %s" % \ 
    207207                            self.data.filename 
    208                 raise ValueError, msg 
     208                raise ValueError(msg) 
    209209            qmax = np.sqrt(x * x + y * y) 
    210210            npts = len(data.data) 
  • src/sas/qtgui/Perspectives/Fitting/FittingOptions.py

    r377ade1 rb0b09b9  
    8080        Use options.FIT_FIELDS to assert which line edit gets what validator 
    8181        """ 
    82         for option in bumps.options.FIT_FIELDS.iterkeys(): 
     82        for option in bumps.options.FIT_FIELDS.keys(): 
    8383            (f_name, f_type) = bumps.options.FIT_FIELDS[option] 
    8484            validator = None 
     
    8686                validator = QtGui.QIntValidator() 
    8787                validator.setBottom(0) 
    88             elif f_type == types.FloatType: 
     88            elif f_type == float: 
    8989                validator = QtGui.QDoubleValidator() 
    9090                validator.setBottom(0) 
     
    153153 
    154154        # Update the BUMPS singleton 
    155         [bumpsUpdate(o) for o in self.config.values[self.current_fitter_id].iterkeys()] 
     155        [bumpsUpdate(o) for o in self.config.values[self.current_fitter_id].keys()] 
    156156 
    157157    def onHelp(self): 
     
    175175        if current_fitter is None: 
    176176            current_fitter = self.current_fitter_id 
    177         if option_id not in bumps.options.FIT_FIELDS.keys(): return None 
     177        if option_id not in list(bumps.options.FIT_FIELDS.keys()): return None 
    178178        option = option_id + '_' + current_fitter 
    179179        if not hasattr(self, option): return None 
     
    193193        """ 
    194194        options = self.config.values[fitter_id] 
    195         for option in options.iterkeys(): 
     195        for option in options.keys(): 
    196196            # Find the widget name of the option 
    197197            # e.g. 'samples' for 'dream' is 'self.samples_dream' 
  • src/sas/qtgui/Perspectives/Fitting/FittingPerspective.py

    • Property mode changed from 100644 to 100755
    r377ade1 rb0b09b9  
    1111from sas.qtgui.Perspectives.Fitting.FittingWidget import FittingWidget 
    1212from sas.qtgui.Perspectives.Fitting.FittingOptions import FittingOptions 
    13 from sas.qtgui.Perspectives.Fitting import ModelUtilities 
     13#from sas.qtgui.Perspectives.Fitting import ModelUtilities 
    1414 
    1515class FittingWindow(QtGui.QTabWidget): 
     
    6161        self.fit_options_widget.fit_option_changed.connect(self.onFittingOptionsChange) 
    6262 
    63         self.menu_manager = ModelUtilities.ModelManager() 
    64         # TODO: reuse these in FittingWidget properly 
    65         self.model_list_box = self.menu_manager.get_model_list() 
    66         self.model_dictionary = self.menu_manager.get_model_dictionary() 
     63        #self.menu_manager = ModelUtilities.ModelManager() 
     64        ## TODO: reuse these in FittingWidget properly 
     65        #self.model_list_box = self.menu_manager.get_model_list() 
     66        #self.model_dictionary = self.menu_manager.get_model_dictionary() 
    6767 
    6868        #self.setWindowTitle('Fit panel - Active Fitting Optimizer: %s' % self.optimizer) 
     
    120120        Create a list if none exists and append if there's already a list 
    121121        """ 
    122         if item_key in self.dataToFitTab.keys(): 
    123             self.dataToFitTab[item_key].append(tab_name) 
     122        item_key_str = str(item_key) 
     123        if item_key_str in list(self.dataToFitTab.keys()): 
     124            self.dataToFitTab[item_key_str].append(tab_name) 
    124125        else: 
    125             self.dataToFitTab[item_key] = [tab_name] 
     126            self.dataToFitTab[item_key_str] = [tab_name] 
    126127 
    127128        #print "CURRENT dict: ", self.dataToFitTab 
     
    169170        Given name of the fitting tab - close it 
    170171        """ 
    171         for tab_index in xrange(len(self.tabs)): 
     172        for tab_index in range(len(self.tabs)): 
    172173            if self.tabText(tab_index) == tab_name: 
    173174                self.tabCloses(tab_index) 
     
    181182            return 
    182183        for index_to_delete in index_list: 
    183             if index_to_delete in self.dataToFitTab.keys(): 
    184                 for tab_name in self.dataToFitTab[index_to_delete]: 
     184            index_to_delete_str = str(index_to_delete) 
     185            if index_to_delete_str in list(self.dataToFitTab.keys()): 
     186                for tab_name in self.dataToFitTab[index_to_delete_str]: 
    185187                    # delete tab #index after corresponding data got removed 
    186188                    self.closeTabByName(tab_name) 
    187                 self.dataToFitTab.pop(index_to_delete) 
     189                self.dataToFitTab.pop(index_to_delete_str) 
    188190 
    189191        #print "CURRENT dict: ", self.dataToFitTab 
     
    205207        if not isinstance(data_item, list): 
    206208            msg = "Incorrect type passed to the Fitting Perspective" 
    207             raise AttributeError, msg 
     209            raise AttributeError(msg) 
    208210 
    209211        if not isinstance(data_item[0], QtGui.QStandardItem): 
    210212            msg = "Incorrect type passed to the Fitting Perspective" 
    211             raise AttributeError, msg 
     213            raise AttributeError(msg) 
    212214 
    213215        items = [data_item] if is_batch else data_item 
     
    216218            # Find the first unassigned tab. 
    217219            # If none, open a new tab. 
    218             available_tabs = list(map(lambda tab: tab.acceptsData(), self.tabs)) 
     220            available_tabs = list([tab.acceptsData() for tab in self.tabs]) 
    219221 
    220222            if numpy.any(available_tabs): 
  • src/sas/qtgui/Perspectives/Fitting/FittingUtilities.py

    • Property mode changed from 100644 to 100755
    rd0dfcb2 rb0b09b9  
    4444    Returns a list of all multi-shell parameters in 'model' 
    4545    """ 
    46     return list(filter(lambda par: "[" in par.name, model.iq_parameters)) 
     46    return list([par for par in model.iq_parameters if "[" in par.name]) 
    4747 
    4848def getMultiplicity(model): 
     
    156156    """ 
    157157    for i, item in enumerate(model_header_captions): 
    158         model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     158        #model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     159        model.setHeaderData(i, QtCore.Qt.Horizontal, item) 
    159160 
    160161    model.header_tooltips = model_header_tooltips 
     
    167168    model_header_error_captions.insert(2, header_error_caption) 
    168169    for i, item in enumerate(model_header_error_captions): 
    169         model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     170        model.setHeaderData(i, QtCore.Qt.Horizontal, item) 
    170171 
    171172    model_header_error_tooltips = model_header_tooltips 
     
    178179    """ 
    179180    for i, item in enumerate(poly_header_captions): 
    180         model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     181        model.setHeaderData(i, QtCore.Qt.Horizontal, item) 
    181182 
    182183    model.header_tooltips = poly_header_tooltips 
     
    190191    poly_header_error_captions.insert(2, header_error_caption) 
    191192    for i, item in enumerate(poly_header_error_captions): 
    192         model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     193        model.setHeaderData(i, QtCore.Qt.Horizontal, item) 
    193194 
    194195    poly_header_error_tooltips = poly_header_tooltips 
     
    202203    multishell_parameters = getIterParams(parameters) 
    203204 
    204     for i in xrange(index): 
     205    for i in range(index): 
    205206        for par in multishell_parameters: 
    206207            # Create the name: <param>[<i>], e.g. "sld1" for parameter "sld[n]" 
     
    396397 
    397398def binary_encode(i, digits): 
    398     return [i >> d & 1 for d in xrange(digits)] 
     399    return [i >> d & 1 for d in range(digits)] 
    399400 
    400401def getWeight(data, is2d, flag=None): 
  • 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 
  • src/sas/qtgui/Perspectives/Fitting/ModelThread.py

    r6964d44 rb0b09b9  
    6565        if self.data is None: 
    6666            msg = "Compute Calc2D receive data = %s.\n" % str(self.data) 
    67             raise ValueError, msg 
     67            raise ValueError(msg) 
    6868 
    6969        # Define matrix where data will be plotted 
  • src/sas/qtgui/Perspectives/Fitting/ModelUtilities.py

    r125c4be rb0b09b9  
    22    Utilities to manage models 
    33""" 
    4 from __future__ import print_function 
     4 
    55 
    66import traceback 
     
    6868    except: 
    6969        msg = "Plugin %s error in __init__ \n\t: %s %s\n" % (str(name), 
    70                                                              str(sys.exc_type), 
     70                                                             str(sys.exc_info()[0]), 
    7171                                                             sys.exc_info()[1]) 
    7272        plugin_log(msg) 
     
    7878        except: 
    7979            msg = "Plugin %s: error writing function \n\t :%s %s\n " % \ 
    80                     (str(name), str(sys.exc_type), sys.exc_info()[1]) 
     80                    (str(name), str(sys.exc_info()[0]), sys.exc_info()[1]) 
    8181            plugin_log(msg) 
    8282            return None 
     
    138138    Class to check for problems with specific values 
    139139    """ 
    140     def __nonzero__(self): 
     140    def __bool__(self): 
    141141        type, value, tb = sys.exc_info() 
    142142        if type is not None and issubclass(type, py_compile.PyCompileError): 
    143143            print("Problem with", repr(value)) 
    144             raise type, value, tb 
     144            raise type(value).with_traceback(tb) 
    145145        return 1 
    146146 
     
    211211 
    212212        """ 
    213         if name not in self.mydict.keys(): 
     213        if name not in list(self.mydict.keys()): 
    214214            self.reset_list(name, mylist) 
    215215 
     
    292292        #Looking for plugins 
    293293        self.stored_plugins = self.findModels() 
    294         self.plugins = self.stored_plugins.values() 
    295         for name, plug in self.stored_plugins.iteritems(): 
     294        self.plugins = list(self.stored_plugins.values()) 
     295        for name, plug in self.stored_plugins.items(): 
    296296            self.model_dictionary[name] = plug 
    297297         
     
    322322        new_plugins = self.findModels() 
    323323        if len(new_plugins) > 0: 
    324             for name, plug in  new_plugins.iteritems(): 
    325                 if name not in self.stored_plugins.keys(): 
     324            for name, plug in  new_plugins.items(): 
     325                if name not in list(self.stored_plugins.keys()): 
    326326                    self.stored_plugins[name] = plug 
    327327                    self.plugins.append(plug) 
     
    338338        self.plugins = [] 
    339339        new_plugins = _find_models() 
    340         for name, plug in  new_plugins.iteritems(): 
    341             for stored_name, stored_plug in self.stored_plugins.iteritems(): 
     340        for name, plug in  new_plugins.items(): 
     341            for stored_name, stored_plug in self.stored_plugins.items(): 
    342342                if name == stored_name: 
    343343                    del self.stored_plugins[name] 
     
    358358 
    359359        """ 
    360         if int(evt.GetId()) in self.form_factor_dict.keys(): 
     360        if int(evt.GetId()) in list(self.form_factor_dict.keys()): 
    361361            from sasmodels.sasview_model import MultiplicationModel 
    362362            self.model_dictionary[MultiplicationModel.__name__] = MultiplicationModel 
     
    417417    __modelmanager = ModelManagerBase() 
    418418    cat_model_list = [__modelmanager.model_dictionary[model_name] for model_name \ 
    419                       in __modelmanager.model_dictionary.keys() \ 
    420                       if model_name not in __modelmanager.stored_plugins.keys()] 
     419                      in list(__modelmanager.model_dictionary.keys()) \ 
     420                      if model_name not in list(__modelmanager.stored_plugins.keys())] 
    421421 
    422422    CategoryInstaller.check_install(model_list=cat_model_list) 
  • src/sas/qtgui/Perspectives/Fitting/OptionsWidget.py

    r457d961 rb0b09b9  
    9696        """ 
    9797        self.model = QtGui.QStandardItemModel() 
    98         for model_item in xrange(len(MODEL)): 
     98        for model_item in range(len(MODEL)): 
    9999            self.model.setItem(model_item, QtGui.QStandardItem()) 
    100100        # Attach slot 
  • src/sas/qtgui/Perspectives/Fitting/SmearingWidget.py

    • Property mode changed from 100644 to 100755
    rdc5ef15 rb0b09b9  
    6565        """ 
    6666        self.model = QtGui.QStandardItemModel() 
    67         for model_item in xrange(len(MODEL)): 
     67        for model_item in range(len(MODEL)): 
    6868            self.model.setItem(model_item, QtGui.QStandardItem()) 
    6969        # Attach slot 
  • src/sas/qtgui/Perspectives/Invariant/InvariantDetails.py

    • Property mode changed from 100644 to 100755
    r28cda69 rb0b09b9  
    55 
    66# local 
    7 from UI.InvariantDetailsUI import Ui_Dialog 
    8 from InvariantUtils import WIDGETS 
     7from .UI.InvariantDetailsUI import Ui_Dialog 
     8from .InvariantUtils import WIDGETS 
    99 
    1010class DetailsDialog(QtGui.QDialog, Ui_Dialog): 
  • src/sas/qtgui/Perspectives/Invariant/InvariantPerspective.py

    • Property mode changed from 100644 to 100755
    r457d961 rb0b09b9  
    1515 
    1616# local 
    17 from UI.TabbedInvariantUI import Ui_tabbedInvariantUI 
    18 from InvariantDetails import DetailsDialog 
    19 from InvariantUtils import WIDGETS 
     17from .UI.TabbedInvariantUI import Ui_tabbedInvariantUI 
     18from .InvariantDetails import DetailsDialog 
     19from .InvariantUtils import WIDGETS 
    2020 
    2121# The minimum q-value to be used when extrapolating 
     
    551551        if not isinstance(data_item, list): 
    552552            msg = "Incorrect type passed to the Invariant Perspective" 
    553             raise AttributeError, msg 
     553            raise AttributeError(msg) 
    554554 
    555555        if not isinstance(data_item[0], QtGui.QStandardItem): 
    556556            msg = "Incorrect type passed to the Invariant Perspective" 
    557             raise AttributeError, msg 
     557            raise AttributeError(msg) 
    558558 
    559559        self._model_item = data_item[0] 
     
    631631                    self.calculateInvariant() 
    632632                except: 
    633                     msg = "Invariant Set_data: " + str(sys.exc_value) 
     633                    msg = "Invariant Set_data: " + str(sys.exc_info()[1]) 
    634634                    #wx.PostEvent(self.parent, StatusEvent(status=msg, info="error")) 
    635635        else: 
  • src/sas/qtgui/Perspectives/Invariant/InvariantUtils.py

    rf721030 rb0b09b9  
    11def enum(*sequential, **named): 
    2     enums = dict(zip(sequential, range(len(sequential))), **named) 
     2    enums = dict(list(zip(sequential, list(range(len(sequential))))), **named) 
    33    return type('Enum', (), enums) 
    44 
  • src/sas/qtgui/Perspectives/__init__.py

    • Property mode changed from 100644 to 100755
    r7adc2a8 rb0b09b9  
    22# When adding a new perspective, this dictionary needs to be updated 
    33 
    4 from Fitting.FittingPerspective import FittingWindow 
    5 from Invariant.InvariantPerspective import InvariantWindow 
     4from .Fitting.FittingPerspective import FittingWindow 
     5from .Invariant.InvariantPerspective import InvariantWindow 
    66 
    77PERSPECTIVES = { 
Note: See TracChangeset for help on using the changeset viewer.