Ignore:
Timestamp:
Apr 27, 2015 6:29:39 PM (9 years ago)
Author:
Paul Kienzle <pkienzle@…>
Branches:
master, 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, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
Children:
3cd840f
Parents:
7e0f9b5
Message:

code cleanup for fit panel

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/sas/perspectives/fitting/fitpage.py

    r85ccd3a r373d4ee  
    2626from sas.perspectives.fitting.basepage import PageInfoEvent as PageInfoEvent 
    2727from sas.models.qsmearing import smear_selection 
     28from .basepage import ModelTextCtrl 
    2829 
    2930 
     
    284285 
    285286        #textcntrl for custom resolution 
    286         self.smear_pinhole_max = self.ModelTextCtrl(self, -1, 
     287        self.smear_pinhole_max = ModelTextCtrl(self, -1, 
    287288                            size=(_BOX_WIDTH - 25, 20), 
    288289                            style=wx.TE_PROCESS_ENTER, 
    289290                            text_enter_callback=self.onPinholeSmear) 
    290         self.smear_pinhole_min = self.ModelTextCtrl(self, -1, 
     291        self.smear_pinhole_min = ModelTextCtrl(self, -1, 
    291292                            size=(_BOX_WIDTH - 25, 20), 
    292293                            style=wx.TE_PROCESS_ENTER, 
    293294                            text_enter_callback=self.onPinholeSmear) 
    294         self.smear_slit_height = self.ModelTextCtrl(self, -1, 
     295        self.smear_slit_height = ModelTextCtrl(self, -1, 
    295296                            size=(_BOX_WIDTH - 25, 20), 
    296297                            style=wx.TE_PROCESS_ENTER, 
    297298                            text_enter_callback=self.onSlitSmear) 
    298         self.smear_slit_width = self.ModelTextCtrl(self, -1, 
     299        self.smear_slit_width = ModelTextCtrl(self, -1, 
    299300                            size=(_BOX_WIDTH - 25, 20), 
    300301                            style=wx.TE_PROCESS_ENTER, 
     
    303304        ## smear 
    304305        self.smear_data_left = BGTextCtrl(self, -1, 
    305                                          size=(_BOX_WIDTH - 25, 20), style=0) 
     306                                          size=(_BOX_WIDTH - 25, 20), style=0) 
    306307        self.smear_data_left.SetValue(str(self.dq_l)) 
    307308        self.smear_data_right = BGTextCtrl(self, -1, 
    308                                         size=(_BOX_WIDTH - 25, 20), style=0) 
     309                                           size=(_BOX_WIDTH - 25, 20), style=0) 
    309310        self.smear_data_right.SetValue(str(self.dq_r)) 
    310311 
     
    355356        self.Npts_fit.SetToolTipString(\ 
    356357                            " Npts : number of points selected for fitting") 
    357         self.Npts_total = self.ModelTextCtrl(self, -1, 
    358                         size=(_BOX_WIDTH, 20), 
    359                         style=wx.TE_PROCESS_ENTER, 
    360                         text_enter_callback=self._onQrangeEnter) 
     358        self.Npts_total = ModelTextCtrl(self, -1, 
     359                            size=(_BOX_WIDTH, 20), 
     360                            style=wx.TE_PROCESS_ENTER, 
     361                            text_enter_callback=self._onQrangeEnter) 
    361362        self.Npts_total.SetValue(format_number(self.npts_x)) 
    362363        self.Npts_total.SetToolTipString(\ 
     
    515516        self.sizer5.Clear(True) 
    516517 
    517         self.qmin = self.ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
    518                                     style=wx.TE_PROCESS_ENTER, 
    519                                     set_focus_callback=self.qrang_set_focus, 
    520                                     text_enter_callback=self._onQrangeEnter, 
    521                                     name='qmin') 
     518        self.qmin = ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
     519                                  style=wx.TE_PROCESS_ENTER, 
     520                                  set_focus_callback=self.qrang_set_focus, 
     521                                  text_enter_callback=self._onQrangeEnter, 
     522                                  name='qmin') 
    522523        self.qmin.SetValue(str(self.qmin_x)) 
    523524        q_tip = "Click outside of the axes\n to remove the lines." 
     
    526527        self.qmin.SetToolTipString(qmin_tip) 
    527528 
    528         self.qmax = self.ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
    529                                        style=wx.TE_PROCESS_ENTER, 
    530                                        set_focus_callback=self.qrang_set_focus, 
    531                                        text_enter_callback=self._onQrangeEnter, 
    532                                        name='qmax') 
     529        self.qmax = ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
     530                                  style=wx.TE_PROCESS_ENTER, 
     531                                  set_focus_callback=self.qrang_set_focus, 
     532                                  text_enter_callback=self._onQrangeEnter, 
     533                                  name='qmax') 
    533534        self.qmax.SetValue(str(self.qmax_x)) 
    534535        qmax_tip = "Maximum value of Q.\n" 
     
    686687                        ix = 1 
    687688                        value = self.model.getParam(name1) 
    688                         ctl1 = self.ModelTextCtrl(self, -1, 
    689                                                   size=(_BOX_WIDTH / 1.3, 20), 
    690                                                   style=wx.TE_PROCESS_ENTER) 
     689                        ctl1 = ModelTextCtrl(self, -1, 
     690                                             size=(_BOX_WIDTH / 1.3, 20), 
     691                                             style=wx.TE_PROCESS_ENTER) 
    691692                        ctl1.SetLabel('PD[ratio]') 
    692693                        poly_text = "Polydispersity (STD/mean) of %s\n" % item 
     
    715716 
    716717                        ix = 4 
    717                         ctl3 = self.ModelTextCtrl(self, -1, 
    718                                                   size=(_BOX_WIDTH / 2, 20), 
    719                                                   style=wx.TE_PROCESS_ENTER, 
    720                                 text_enter_callback=self._onparamRangeEnter) 
     718                        ctl3 = ModelTextCtrl(self, -1, 
     719                                             size=(_BOX_WIDTH / 2, 20), 
     720                                             style=wx.TE_PROCESS_ENTER, 
     721                            text_enter_callback=self._onparamRangeEnter) 
    721722 
    722723                        self.sizer4_4.Add(ctl3, (iy, ix), (1, 1), 
     
    724725 
    725726                        ix = 5 
    726                         ctl4 = self.ModelTextCtrl(self, -1, 
    727                                                   size=(_BOX_WIDTH / 2, 20), 
    728                                                   style=wx.TE_PROCESS_ENTER, 
     727                        ctl4 = ModelTextCtrl(self, -1, 
     728                                             size=(_BOX_WIDTH / 2, 20), 
     729                                             style=wx.TE_PROCESS_ENTER, 
    729730                            text_enter_callback=self._onparamRangeEnter) 
    730731 
     
    738739                        ix = 6 
    739740                        value = self.model.getParam(name2) 
    740                         Tctl = self.ModelTextCtrl(self, -1, 
    741                                                   size=(_BOX_WIDTH / 2.2, 20), 
    742                                                   style=wx.TE_PROCESS_ENTER) 
     741                        Tctl = ModelTextCtrl(self, -1, 
     742                                             size=(_BOX_WIDTH / 2.2, 20), 
     743                                             style=wx.TE_PROCESS_ENTER) 
    743744 
    744745                        Tctl.SetValue(str(format_number(value))) 
     
    750751                        ix = 7 
    751752                        value = self.model.getParam(name3) 
    752                         Tct2 = self.ModelTextCtrl(self, -1, 
    753                                                   size=(_BOX_WIDTH / 2.2, 20), 
    754                                                   style=wx.TE_PROCESS_ENTER) 
     753                        Tct2 = ModelTextCtrl(self, -1, 
     754                                             size=(_BOX_WIDTH / 2.2, 20), 
     755                                             style=wx.TE_PROCESS_ENTER) 
    755756 
    756757                        Tct2.SetValue(str(format_number(value))) 
     
    811812                        ix = 1 
    812813                        value = self.model.getParam(name1) 
    813                         ctl1 = self.ModelTextCtrl(self, -1, 
    814                                                   size=(_BOX_WIDTH / 1.3, 20), 
    815                                                   style=wx.TE_PROCESS_ENTER) 
     814                        ctl1 = ModelTextCtrl(self, -1, 
     815                                             size=(_BOX_WIDTH / 1.3, 20), 
     816                                             style=wx.TE_PROCESS_ENTER) 
    816817                        poly_tip = "Absolute Sigma for %s." % item 
    817818                        ctl1.SetToolTipString(poly_tip) 
     
    859860 
    860861                        ix = 4 
    861                         ctl3 = self.ModelTextCtrl(self, -1, 
    862                                                   size=(_BOX_WIDTH / 2, 20), 
    863                                                   style=wx.TE_PROCESS_ENTER, 
     862                        ctl3 = ModelTextCtrl(self, -1, 
     863                                             size=(_BOX_WIDTH / 2, 20), 
     864                                             style=wx.TE_PROCESS_ENTER, 
    864865                                text_enter_callback=self._onparamRangeEnter) 
    865866 
     
    870871 
    871872                        ix = 5 
    872                         ctl4 = self.ModelTextCtrl(self, -1, 
    873                             size=(_BOX_WIDTH / 2, 20), 
    874                             style=wx.TE_PROCESS_ENTER, 
     873                        ctl4 = ModelTextCtrl(self, -1, 
     874                                             size=(_BOX_WIDTH / 2, 20), 
     875                                             style=wx.TE_PROCESS_ENTER, 
    875876                            text_enter_callback=self._onparamRangeEnter) 
    876877                        self.sizer4_4.Add(ctl4, (iy, ix), (1, 1), 
     
    886887                        ix = 6 
    887888                        value = self.model.getParam(name2) 
    888                         Tctl = self.ModelTextCtrl(self, -1, 
    889                                                  size=(_BOX_WIDTH / 2.2, 20), 
    890                                                  style=wx.TE_PROCESS_ENTER) 
     889                        Tctl = ModelTextCtrl(self, -1, 
     890                                             size=(_BOX_WIDTH / 2.2, 20), 
     891                                             style=wx.TE_PROCESS_ENTER) 
    891892 
    892893                        Tctl.SetValue(str(format_number(value))) 
     
    906907                        ix = 7 
    907908                        value = self.model.getParam(name3) 
    908                         Tct2 = self.ModelTextCtrl(self, -1, 
    909                                                   size=(_BOX_WIDTH / 2.2, 20), 
    910                                                   style=wx.TE_PROCESS_ENTER) 
     909                        Tct2 = ModelTextCtrl(self, -1, 
     910                                             size=(_BOX_WIDTH / 2.2, 20), 
     911                                             style=wx.TE_PROCESS_ENTER) 
    911912 
    912913                        Tct2.SetValue(str(format_number(value))) 
     
    11401141        self.state.formfactorcombobox = self.formfactorbox.GetLabel() 
    11411142        self.enable_fit_button() 
    1142         if self.model != None: 
     1143        if self.model is not None: 
    11431144            self.m_name = self.model.name 
    11441145            self.state.m_name = self.m_name 
     
    11521153                    self._keep.Enable(not self.batch_on) 
    11531154                    self._set_save_flag(True) 
    1154             # Reset smearer, model and data 
    1155             if not copy_flag: 
    1156                 self.disable_smearer.SetValue(True) 
    1157                 self.enable_smearer.SetValue(False) 
    11581155 
    11591156            # more disables for 2D 
     
    11621159            try: 
    11631160                # update smearer sizer 
    1164                 #if not self.enable_smearer.GetValue(): 
    1165                 #    self.disable_smearer.SetValue(True) 
    11661161                self.onSmear(None) 
    11671162                temp_smear = None 
     
    12681263                elif self.data.__class__.__name__ != "Data2D" and \ 
    12691264                        not self.enable2D: 
     1265                    enable_smearer = not self.disable_smearer.GetValue() 
    12701266                    self._manager.set_smearer(smearer=temp_smearer, 
    12711267                                              fid=self.data.id, 
     
    12731269                                              qmin=float(self.qmin_x), 
    12741270                                              qmax=float(self.qmax_x), 
    1275                             enable_smearer=not self.disable_smearer.GetValue(), 
    1276                                             draw=True) 
     1271                                              enable_smearer=enable_smearer, 
     1272                                              draw=True) 
    12771273                if flag: 
    12781274                    #self.compute_chisqr(smearer= temp_smearer) 
     
    17721768        self.current_smearer = smear_selection(data, self.model) 
    17731769        flag = self.disable_smearer.GetValue() 
    1774         self.disable_smearer.SetValue(flag) 
    1775         if self.current_smearer == None: 
     1770        if self.current_smearer is None: 
    17761771            self.enable_smearer.Disable() 
    17771772        else: 
     
    19591954        if flag: 
    19601955            #set model view button 
    1961             if not self.enable_smearer.GetValue(): 
    1962                     self.disable_smearer.SetValue(True) 
    19631956            self.onSmear(None) 
    19641957 
     
    21322125                            if numpy.isfinite(float(cov[ind])): 
    21332126                                val_err = format_number(cov[ind], True) 
    2134                                 if not self.is_mac: 
    2135                                     item[3].Show(True) 
    2136                                     item[4].Show(True) 
    2137                                     item[4].SetForegroundColour(wx.BLACK) 
    2138                                 item[4].SetValue(val_err) 
    2139                                 has_error = True 
    2140                             else: 
    2141                                 val_err = 'NaN' 
    2142                                 if not self.is_mac: 
    2143                                     item[3].Show(True) 
    2144                                     item[4].Show(True) 
    2145                                     item[4].SetForegroundColour(wx.RED) 
    2146                                 item[4].SetValue(val_err) 
    2147                                 has_error = True 
     2127                            else: 
     2128                                val_err = 'NaN' 
     2129                            if not self.is_mac: 
     2130                                item[3].Show(True) 
     2131                                item[4].Show(True) 
     2132                                item[4].SetForegroundColour(wx.RED) 
     2133                            item[4].SetValue(val_err) 
     2134                            has_error = True 
    21482135                i += 1 
    21492136            else: 
     
    22052192                         StatusEvent(status="Smear: %s" % msg)) 
    22062193            return 
    2207  
    22082194        # Need update param values 
    22092195        self._update_paramv_on_fit() 
     
    23452331        ## set smearing value whether or not the data contain the smearing info 
    23462332 
     2333        enable_smearer = not self.disable_smearer.GetValue() 
    23472334        self._manager.set_smearer(smearer=self.current_smearer, 
    2348                             fid=self.data.id, 
    2349                             qmin=float(self.qmin_x), 
    2350                             qmax=float(self.qmax_x), 
    2351                             enable_smearer=not self.disable_smearer.GetValue(), 
    2352                             uid=self.uid) 
     2335                                  fid=self.data.id, 
     2336                                  qmin=float(self.qmin_x), 
     2337                                  qmax=float(self.qmax_x), 
     2338                                  enable_smearer=enable_smearer, 
     2339                                  uid=self.uid) 
    23532340        return msg 
    23542341 
     
    24752462            of the values entered for slit smear 
    24762463        """ 
    2477         if self.data.__class__.__name__ == "Data2D" or \ 
    2478                         self.enable2D: 
     2464        if self.data.__class__.__name__ == "Data2D" or self.enable2D: 
    24792465            return 
    24802466        # make sure once more if it is smearer 
     
    25132499        self.current_smearer = smear_selection(data, self.model) 
    25142500        ## set smearing value whether or not the data contain the smearing info 
     2501        enable_smearer = not self.disable_smearer.GetValue() 
    25152502        self._manager.set_smearer(smearer=self.current_smearer, 
    2516                                  fid=self.data.id, 
    2517                                  qmin=float(self.qmin_x), 
    2518                                  qmax=float(self.qmax_x), 
    2519                         enable_smearer=not self.disable_smearer.GetValue(), 
    2520                                  uid=self.uid) 
     2503                                  fid=self.data.id, 
     2504                                  qmin=float(self.qmin_x), 
     2505                                  qmax=float(self.qmax_x), 
     2506                                  enable_smearer=enable_smearer, 
     2507                                  uid=self.uid) 
    25212508        return msg 
    25222509 
     
    25632550        # Need update param values 
    25642551        self._update_paramv_on_fit() 
    2565         if self.model != None: 
     2552        if self.model is not None: 
    25662553            if self.data.is_data: 
    25672554                self._manager.page_finder[self.uid].add_data(data=self.data) 
     
    25732560 
    25742561        ## set smearing value whether or not the data contain the smearing info 
     2562        enable_smearer = not self.disable_smearer.GetValue() 
    25752563        wx.CallAfter(self._manager.set_smearer, uid=self.uid, 
    25762564                     smearer=temp_smearer, 
     
    25782566                     qmin=float(self.qmin_x), 
    25792567                     qmax=float(self.qmax_x), 
    2580                      enable_smearer=not self.disable_smearer.GetValue(), 
     2568                     enable_smearer=enable_smearer, 
    25812569                     draw=True) 
    25822570 
     
    25942582        self._get_smear_info() 
    25952583        #renew smear sizer 
    2596         if self.smear_type != None: 
     2584        if self.smear_type is not None: 
    25972585            self.smear_description_smear_type.SetValue(str(self.smear_type)) 
    25982586            self.smear_data_left.SetValue(str(self.dq_l)) 
     
    26072595            self.current_smearer = temp_smearer 
    26082596        if self.enable_smearer.GetValue(): 
    2609             if self.current_smearer == None: 
     2597            if self.current_smearer is None: 
    26102598                wx.PostEvent(self._manager.parent, 
    26112599                    StatusEvent(status="Data contains no smearing information")) 
     
    29532941                        wx.EVT_COMBOBOX(fun_box, -1, self._on_fun_box) 
    29542942                    else: 
    2955                         fun_box = self.ModelTextCtrl(self, -1, 
    2956                                                      size=(_BOX_WIDTH, 20), 
     2943                        fun_box = ModelTextCtrl(self, -1, 
     2944                                                size=(_BOX_WIDTH, 20), 
    29572945                                style=wx.TE_PROCESS_ENTER, name='%s' % item) 
    29582946                        fun_box.SetToolTipString(\ 
     
    29772965                    ix += 1 
    29782966                    value = self.model.getParam(item) 
    2979                     ctl1 = self.ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
    2980                                         style=wx.TE_PROCESS_ENTER) 
     2967                    ctl1 = ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
     2968                                         style=wx.TE_PROCESS_ENTER) 
    29812969                    ctl1.SetToolTipString(\ 
    29822970                                "Hit 'Enter' after typing to update the plot.") 
     
    29992987 
    30002988                    ix += 1 
    3001                     ctl3 = self.ModelTextCtrl(self, -1, 
    3002                                               size=(_BOX_WIDTH / 1.9, 20), 
    3003                                               style=wx.TE_PROCESS_ENTER, 
     2989                    ctl3 = ModelTextCtrl(self, -1, 
     2990                                         size=(_BOX_WIDTH / 1.9, 20), 
     2991                                         style=wx.TE_PROCESS_ENTER, 
    30042992                                text_enter_callback=self._onparamRangeEnter) 
    30052993                    min_bound = self.model.details[item][1] 
     
    30112999 
    30123000                    ix += 1 
    3013                     ctl4 = self.ModelTextCtrl(self, -1, 
    3014                                               size=(_BOX_WIDTH / 1.9, 20), 
    3015                                               style=wx.TE_PROCESS_ENTER, 
     3001                    ctl4 = ModelTextCtrl(self, -1, 
     3002                                         size=(_BOX_WIDTH / 1.9, 20), 
     3003                                         style=wx.TE_PROCESS_ENTER, 
    30163004                                text_enter_callback=self._onparamRangeEnter) 
    30173005                    max_bound = self.model.details[item][2] 
     
    31153103                    ix += 1 
    31163104                    value = self.model.getParam(item) 
    3117                     ctl1 = self.ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
    3118                                         style=wx.TE_PROCESS_ENTER) 
     3105                    ctl1 = ModelTextCtrl(self, -1, size=(_BOX_WIDTH, 20), 
     3106                                         style=wx.TE_PROCESS_ENTER) 
    31193107                    ctl1.SetToolTipString(\ 
    31203108                                "Hit 'Enter' after typing to update the plot.") 
     
    31423130 
    31433131                    ix += 1 
    3144                     ctl3 = self.ModelTextCtrl(self, -1, 
    3145                                               size=(_BOX_WIDTH / 1.8, 20), 
    3146                                               style=wx.TE_PROCESS_ENTER, 
     3132                    ctl3 = ModelTextCtrl(self, -1, 
     3133                                         size=(_BOX_WIDTH / 1.8, 20), 
     3134                                         style=wx.TE_PROCESS_ENTER, 
    31473135                                text_enter_callback=self._onparamRangeEnter) 
    31483136 
     
    31523140 
    31533141                    ix += 1 
    3154                     ctl4 = self.ModelTextCtrl(self, -1, 
    3155                                               size=(_BOX_WIDTH / 1.8, 20), 
    3156                                               style=wx.TE_PROCESS_ENTER, 
     3142                    ctl4 = ModelTextCtrl(self, -1, 
     3143                                         size=(_BOX_WIDTH / 1.8, 20), 
     3144                                         style=wx.TE_PROCESS_ENTER, 
    31573145                            text_enter_callback=self._onparamRangeEnter) 
    31583146                    sizer.Add(ctl4, (iy, ix), (1, 1), 
Note: See TracChangeset for help on using the changeset viewer.