Changeset 2dbb681 in sasview for sansview/perspectives/fitting/modelpage.py
- Timestamp:
- Oct 21, 2008 12:30:12 PM (16 years ago)
- 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:
- 5893cdb
- Parents:
- b3328d8
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sansview/perspectives/fitting/modelpage.py
r00561739 r2dbb681 39 39 40 40 41 def __init__(self, parent,model, description,*args, **kwargs):41 def __init__(self, parent,model, *args, **kwargs): 42 42 wx.Panel.__init__(self, parent, *args, **kwargs) 43 43 """ … … 80 80 # model on which the fit would be performed 81 81 self.model=model 82 self.description=description 83 self.set_panel(model,description) 82 try: 83 print"init modelpage",model.name 84 self.set_panel(model) 85 except: 86 raise 84 87 # preview selected model name 85 88 self.prevmodel_name=model.__class__.__name__ … … 95 98 self.SetSizer(self.vbox) 96 99 self.Centre() 97 100 98 101 99 102 def onClose(self,event): … … 123 126 id=0 124 127 self.model_list_box=dict 125 for item in self.model_list_box.itervalues(): 126 if hasattr(item, "name"): 127 name = item.name 128 else: 129 name = item.__name__ 130 128 list_name=[] 129 for item in self.model_list_box.itervalues(): 130 name = item.__name__ 131 model=item() 132 if hasattr(model, "name"): 133 name = model.name 134 list_name.append(name) 135 list_name.sort() 136 for name in list_name: 131 137 self.modelbox.Insert(name,int(id)) 132 138 id+=1 133 134 wx.EVT_COMBOBOX(self.modelbox,-1, self._on_select_model) 139 wx.EVT_COMBOBOX(self.modelbox,-1, self._on_select_model) 135 140 return 0 136 141 137 def set_page(self, model,description ):142 def set_page(self, model,description=None): 138 143 #print " modelpage: set_page was called",model 139 144 self.model=model 140 self.description=description145 name = self.model.__class__.__name__ 141 146 if hasattr(self.model, "name"): 142 147 name = self.model.name 143 else:144 name = self.model.__class__.__name__148 149 145 150 self.modelbox.SetValue(name) 146 self.set_panel(self.model ,description)151 self.set_panel(self.model) 147 152 self.manager.draw_model(self.model) 153 148 154 def _on_select_model(self,event): 149 155 """ … … 153 159 #print "modelpage: self.model_list_box ",self.model_list_box 154 160 for item in self.model_list_box.itervalues(): 155 model=item() 156 #print "modelpage:model",model 157 if hasattr(model, "name"): 158 name = model.name 159 else: 160 name = model.__class__.__name__ 161 try: 162 if name ==event.GetString(): 163 self.model=model 164 self.set_panel(self.model) 165 self.manager.draw_model(self.model) 166 except: 167 raise #ValueError,"model.name is not equal to model class name" 161 name = item.__name__ 162 items=item() 163 if hasattr(items, "name"): 164 name = items.name 165 print "fitpage: _on_select_model model name",name ,event.GetString() 166 if name ==event.GetString(): 167 model=items 168 print "fitpage: _on_select_model model name",name ,event.GetString() 169 self.manager.draw_model(model) 170 self.set_panel(model) 168 171 def set_model_name(self,name): 169 172 """ … … 197 200 198 201 199 def set_panel(self,model ,description=None):202 def set_panel(self,model): 200 203 """ 201 204 Build the panel from the model content 202 205 @param model: the model selected in combo box for fitting purpose 203 206 """ 204 207 205 208 self.sizer2.Clear(True) 206 209 self.sizer1.Clear(True) … … 210 213 keys = self.model.getParamList() 211 214 keys.sort() 215 print "went here",self.model.name,model.description 212 216 iy = 1 213 217 ix = 0 … … 216 220 wx.LEFT|wx.EXPAND|wx.ADJUST_MINSIZE, 15) 217 221 ix += 1 218 self.cb01 = wx.StaticText(self, -1,str( description))222 self.cb01 = wx.StaticText(self, -1,str(model.description)) 219 223 self.sizer1.Add(self.cb01,(iy, ix),(1,1),\ 220 224 wx.LEFT|wx.EXPAND|wx.ADJUST_MINSIZE, 15) … … 245 249 ctl1.Bind(wx.EVT_TEXT_ENTER, self._onparamEnter) 246 250 self.sizer2.Add(ctl1, (iy,ix),(1,1), wx.EXPAND|wx.ADJUST_MINSIZE, 0) 247 248 251 ix +=1 249 252 # Units … … 262 265 else: 263 266 self.text2_4.Hide() 264 265 267 self.vbox.Layout() 266 268 self.GrandParent.GetSizer().Layout() 267 269 print "out" 268 270 269 271 def _onparamEnter(self,event): … … 280 282 value= float(item[1].GetValue()) 281 283 self.model.setParam(name,value) 282 self.manager.draw_model(self.model)283 284 except: 284 285 285 wx.PostEvent(self.parent.GrandParent, StatusEvent(status=\ 286 286 "Model Drawing Error:wrong value entered : %s"% sys.exc_value)) 287 288 287 self.manager.draw_model(self.model) 288
Note: See TracChangeset
for help on using the changeset viewer.