Changeset 9867860 in sasview for src/sas/qtgui/Perspectives/Fitting


Ignore:
Timestamp:
Oct 24, 2017 10:12:28 AM (7 years ago)
Author:
wojciech
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:
4f9226c
Parents:
cca56a5 (diff), 5d1440e1 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'ESS_GUI' of https://github.com/SasView/sasview into ESS_GUI_magnetism_bug

Location:
src/sas/qtgui/Perspectives/Fitting
Files:
3 edited

Legend:

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

    ra95c44b rd0dfcb2  
    88from sas.qtgui.Plotting.PlotterData import Data1D 
    99from sas.qtgui.Plotting.PlotterData import Data2D 
     10 
     11model_header_captions = ['Parameter', 'Value', 'Min', 'Max', 'Units'] 
     12 
     13model_header_tooltips = ['Select parameter for fitting', 
     14                         'Enter parameter value', 
     15                         'Enter minimum value for parameter', 
     16                         'Enter maximum value for parameter', 
     17                         'Unit of the parameter'] 
     18 
     19poly_header_captions = ['Parameter', 'PD[ratio]', 'Min', 'Max', 'Npts', 'Nsigs', 
     20                        'Function', 'Filename'] 
     21 
     22poly_header_tooltips = ['Select parameter for fitting', 
     23                        'Enter polydispersity ratio (STD/mean). ' 
     24                        'STD: standard deviation from the mean value', 
     25                        'Enter minimum value for parameter', 
     26                        'Enter maximum value for parameter', 
     27                        'Enter number of points for parameter', 
     28                        'Enter number of sigmas parameter', 
     29                        'Select distribution function', 
     30                        'Select filename with user-definable distribution'] 
     31 
     32error_tooltip = 'Error value for fitted parameter' 
     33header_error_caption = 'Error' 
    1034 
    1135def replaceShellName(param_name, value): 
     
    131155    Adds predefined headers to the model 
    132156    """ 
    133     model.setHeaderData(0, QtCore.Qt.Horizontal, QtCore.QVariant("Parameter")) 
    134     model.setHeaderData(1, QtCore.Qt.Horizontal, QtCore.QVariant("Value")) 
    135     model.setHeaderData(2, QtCore.Qt.Horizontal, QtCore.QVariant("Min")) 
    136     model.setHeaderData(3, QtCore.Qt.Horizontal, QtCore.QVariant("Max")) 
    137     model.setHeaderData(4, QtCore.Qt.Horizontal, QtCore.QVariant("Units")) 
    138  
    139     model.header_tooltips = ['Select parameter for fitting', 
    140                              'Enter parameter value', 
    141                              'Enter minimum value for parameter', 
    142                              'Enter maximum value for parameter', 
    143                              'Unit of the parameter'] 
     157    for i, item in enumerate(model_header_captions): 
     158        model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     159 
     160    model.header_tooltips = model_header_tooltips 
     161 
    144162def addErrorHeadersToModel(model): 
    145163    """ 
    146164    Adds predefined headers to the model 
    147165    """ 
    148     model.setHeaderData(0, QtCore.Qt.Horizontal, QtCore.QVariant("Parameter")) 
    149     model.setHeaderData(1, QtCore.Qt.Horizontal, QtCore.QVariant("Value")) 
    150     model.setHeaderData(2, QtCore.Qt.Horizontal, QtCore.QVariant("Error")) 
    151     model.setHeaderData(3, QtCore.Qt.Horizontal, QtCore.QVariant("Min")) 
    152     model.setHeaderData(4, QtCore.Qt.Horizontal, QtCore.QVariant("Max")) 
    153     model.setHeaderData(5, QtCore.Qt.Horizontal, QtCore.QVariant("Units")) 
    154  
    155     model.header_tooltips = ['Select parameter for fitting', 
    156                              'Enter parameter value', 
    157                              'Error value for fitted parameter', 
    158                              'Enter minimum value for parameter', 
    159                              'Enter maximum value for parameter', 
    160                              'Unit of the parameter'] 
     166    model_header_error_captions = model_header_captions 
     167    model_header_error_captions.insert(2, header_error_caption) 
     168    for i, item in enumerate(model_header_error_captions): 
     169        model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     170 
     171    model_header_error_tooltips = model_header_tooltips 
     172    model_header_error_tooltips.insert(2, error_tooltip) 
     173    model.header_tooltips = model_header_error_tooltips 
    161174 
    162175def addPolyHeadersToModel(model): 
     
    164177    Adds predefined headers to the model 
    165178    """ 
    166     model.setHeaderData(0, QtCore.Qt.Horizontal, QtCore.QVariant("Parameter")) 
    167     model.setHeaderData(1, QtCore.Qt.Horizontal, QtCore.QVariant("PD[ratio]")) 
    168     model.setHeaderData(2, QtCore.Qt.Horizontal, QtCore.QVariant("Min")) 
    169     model.setHeaderData(3, QtCore.Qt.Horizontal, QtCore.QVariant("Max")) 
    170     model.setHeaderData(4, QtCore.Qt.Horizontal, QtCore.QVariant("Npts")) 
    171     model.setHeaderData(5, QtCore.Qt.Horizontal, QtCore.QVariant("Nsigs")) 
    172     model.setHeaderData(6, QtCore.Qt.Horizontal, QtCore.QVariant("Function")) 
    173     model.setHeaderData(7, QtCore.Qt.Horizontal, QtCore.QVariant("Filename")) 
    174  
    175     model.header_tooltips = ['Select parameter for fitting', 
    176                              'Enter polydispersity ratio (STD/mean). ' 
    177                              'STD: standard deviation from the mean value', 
    178                              'Enter minimum value for parameter', 
    179                              'Enter maximum value for parameter', 
    180                              'Enter number of points for parameter', 
    181                              'Enter number of sigmas parameter', 
    182                              'Select distribution function', 
    183                              'Select filename with user-definable distribution'] 
     179    for i, item in enumerate(poly_header_captions): 
     180        model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     181 
     182    model.header_tooltips = poly_header_tooltips 
     183 
    184184 
    185185def addErrorPolyHeadersToModel(model): 
     
    187187    Adds predefined headers to the model 
    188188    """ 
    189     model.setHeaderData(0, QtCore.Qt.Horizontal, QtCore.QVariant("Parameter")) 
    190     model.setHeaderData(1, QtCore.Qt.Horizontal, QtCore.QVariant("PD[ratio]")) 
    191     model.setHeaderData(2, QtCore.Qt.Horizontal, QtCore.QVariant("Error")) 
    192     model.setHeaderData(3, QtCore.Qt.Horizontal, QtCore.QVariant("Min")) 
    193     model.setHeaderData(4, QtCore.Qt.Horizontal, QtCore.QVariant("Max")) 
    194     model.setHeaderData(5, QtCore.Qt.Horizontal, QtCore.QVariant("Npts")) 
    195     model.setHeaderData(6, QtCore.Qt.Horizontal, QtCore.QVariant("Nsigs")) 
    196     model.setHeaderData(7, QtCore.Qt.Horizontal, QtCore.QVariant("Function")) 
    197     model.setHeaderData(8, QtCore.Qt.Horizontal, QtCore.QVariant("Filename")) 
    198  
    199     model.header_tooltips = ['Select parameter for fitting', 
    200                              'Enter polydispersity ratio (STD/mean). ' 
    201                              'STD: standard deviation from the mean value', 
    202                              'Error value for fitted parameter', 
    203                              'Enter minimum value for parameter', 
    204                              'Enter maximum value for parameter', 
    205                              'Enter number of points for parameter', 
    206                              'Enter number of sigmas parameter', 
    207                              'Select distribution function', 
    208                              'Select filename with user-definable distribution'] 
     189    poly_header_error_captions = poly_header_captions 
     190    poly_header_error_captions.insert(2, header_error_caption) 
     191    for i, item in enumerate(poly_header_error_captions): 
     192        model.setHeaderData(i, QtCore.Qt.Horizontal, QtCore.QVariant(item)) 
     193 
     194    poly_header_error_tooltips = poly_header_tooltips 
     195    poly_header_error_tooltips.insert(2, error_tooltip) 
     196    model.header_tooltips = poly_header_error_tooltips 
    209197 
    210198def addShellsToModel(parameters, model, index): 
  • src/sas/qtgui/Perspectives/Fitting/FittingWidget.py

    rcca56a5 r9867860  
    1313from PyQt4 import QtWebKit 
    1414 
     15from sasmodels import product 
    1516from sasmodels import generate 
    1617from sasmodels import modelinfo 
     
    5253 
    5354class ToolTippedItemModel(QtGui.QStandardItemModel): 
    54  
    55     def __init__(self, parent = None): 
     55    """ 
     56    Subclass from QStandardItemModel to allow displaying tooltips in 
     57    QTableView model. 
     58    """ 
     59    def __init__(self, parent=None): 
    5660        QtGui.QStandardItemModel.__init__(self,parent) 
    5761 
    5862    def headerData(self, section, orientation, role): 
    59  
     63        """ 
     64        Displays tooltip for each column's header 
     65        :param section: 
     66        :param orientation: 
     67        :param role: 
     68        :return: 
     69        """ 
    6070        if role == QtCore.Qt.ToolTipRole: 
    6171            if orientation == QtCore.Qt.Horizontal: 
     
    10391049        # Regardless of previous state, this should now be `plot show` functionality only 
    10401050        self.cmdPlot.setText("Show Plot") 
    1041         if not self.data_is_loaded: 
    1042             self.recalculatePlotData() 
     1051        # Force data recalculation so existing charts are updated 
     1052        self.recalculatePlotData() 
    10431053        self.showPlot() 
    10441054 
     
    12541264        structure_module = generate.load_kernel_module(structure_factor) 
    12551265        structure_parameters = modelinfo.make_parameter_table(getattr(structure_module, 'parameters', [])) 
     1266        structure_kernel = self.models[structure_factor]() 
     1267 
     1268        self.kernel_module._model_info = product.make_product_info(self.kernel_module._model_info, structure_kernel._model_info) 
    12561269 
    12571270        new_rows = FittingUtilities.addSimpleParametersToModel(structure_parameters, self.is2D) 
  • src/sas/qtgui/Perspectives/Fitting/ViewDelegate.py

    r16afe01 r7ffa5ee9  
    128128 
    129129    def editableParameters(self): 
    130         return [self.poly_min, self.poly_max, self.poly_npts, self.poly_nsigs] 
     130        return [self.poly_pd, self.poly_min, self.poly_max, self.poly_npts, self.poly_nsigs] 
    131131 
    132132    def columnDict(self): 
Note: See TracChangeset for help on using the changeset viewer.