Index: sansview/perspectives/fitting/fitpage.py
===================================================================
--- sansview/perspectives/fitting/fitpage.py	(revision 64017a8c94a1fcc7b7f6c7799d54bc7ff750e6e5)
+++ sansview/perspectives/fitting/fitpage.py	(revision 6747217a65bc7b38c610ba4878cc028b2472751f)
@@ -765,5 +765,5 @@
         """
              call back for model selection
-        """    
+        """  
         self._on_select_model_helper() 
         self.set_model_param_sizer(self.model)                   
@@ -775,4 +775,13 @@
         except:
             pass
+        self.btFit.SetFocus() 
+        self.state.enable_disp = self.enable_disp.GetValue()
+        self.state.disable_disp = self.disable_disp.GetValue()
+        self.state.pinhole_smearer = self.pinhole_smearer.GetValue()
+        self.state.slit_smearer = self.slit_smearer.GetValue()
+    
+        self.state.structurecombobox = self.structurebox.GetCurrentSelection()
+        self.state.formfactorcombobox = self.formfactorbox.GetCurrentSelection()
+      
         if self.model != None:
             try:
@@ -786,20 +795,12 @@
             if self.data is not None and self.data.__class__.__name__ !="Data2D":
                 ## set smearing value whether or not the data contain the smearing info
-                self.manager.set_smearer(smearer=temp_smear, qmin= float(self.qmin_x),
+                evt = ModelEventbox(model=self.model, 
+                                        smearer=temp_smear, 
+                                        qmin= float(self.qmin_x),
                                      qmax= float(self.qmax_x)) 
-           
-            evt = ModelEventbox(model=self.model)
+            else:   
+                 evt = ModelEventbox(model=self.model)
             wx.PostEvent(self.event_owner, evt)  
             
-        self.btFit.SetFocus() 
-        self.state.enable_disp = self.enable_disp.GetValue()
-        self.state.disable_disp = self.disable_disp.GetValue()
-        self.state.pinhole_smearer = self.pinhole_smearer.GetValue()
-        self.state.slit_smearer = self.slit_smearer.GetValue()
-    
-        self.state.structurecombobox = self.structurebox.GetCurrentSelection()
-        self.state.formfactorcombobox = self.formfactorbox.GetCurrentSelection()
-      
-       
         if event !=None:
             #self._undo.Enable(True)
Index: sansview/perspectives/fitting/fitting.py
===================================================================
--- sansview/perspectives/fitting/fitting.py	(revision f71c2decfd6e8966be02495d9bcb84c098f67dc6)
+++ sansview/perspectives/fitting/fitting.py	(revision 6747217a65bc7b38c610ba4878cc028b2472751f)
@@ -932,13 +932,20 @@
         """
         model = evt.model
-        
         if model == None:
             return
-        model.origin_name = model.name
+        smearer = None
+        qmin = None
+        qmax = None
+        if hasattr(evt, "qmin"):
+            qmin = evt.qmin
+        if hasattr(evt, "qmax"):
+            qmax = evt.qmax
+        if hasattr(evt, "smearer"):
+            smearer = evt.smearer
+        #model.origin_name = model.name
         self.current_pg = self.fit_panel.get_current_page() 
         ## make sure nothing is done on self.sim_page
         ## example trying to call set_panel on self.sim_page
         if self.current_pg != self.sim_page :
-           
             if self.page_finder[self.current_pg].get_model()== None :
                 
@@ -947,5 +954,5 @@
             else:
                 model.name= self.page_finder[self.current_pg].get_model().name
-                
+            
             data = self.page_finder[self.current_pg].get_fit_data()
             
@@ -956,6 +963,5 @@
             smearer=  self.page_finder[self.current_pg].get_smearer()
             # save model name
-            self.draw_model( model=model, smearer=smearer, 
-                             data=data, qmin=qmin, qmax=qmax)
+            self.set_smearer(smearer=smearer, qmin=qmin, qmax=qmax)
             
             if self.sim_page!=None:
@@ -1124,6 +1130,5 @@
                              title=str(title), reset=True))
             else:
-                wx.PostEvent(self.parent, NewPlotEvent(plot=new_plot,
-                             title= str(title)))
+                wx.PostEvent(self.parent, NewPlotEvent(plot=new_plot,title= str(title)))
             msg = "Plot 1D  complete !"
             wx.PostEvent( self.parent, StatusEvent( status= msg , type="stop" ))
@@ -1189,5 +1194,5 @@
         """
         self.err_dy = event.err_dy
-        print "receiving error dy",self.err_dy
+        #print "receiving error dy",self.err_dy
          
     def _draw_model2D(self,model,data=None,description=None, enable2D=False,
@@ -1299,6 +1304,6 @@
     cProfile.runctx('call()', dict(call=call), {}, 'profile.out')
     stats = pstats.Stats('profile.out')
-    stats.sort_stats('time')
-    #stats.sort_stats('calls')
+    #stats.sort_stats('time')
+    stats.sort_stats('calls')
     stats.print_stats()
     os.unlink('profile.out')
