Index: sansview/perspectives/fitting/basepage.py
===================================================================
--- sansview/perspectives/fitting/basepage.py	(revision 6e9976be3c6ad17c4ee1e455860ae747e46fc9af)
+++ sansview/perspectives/fitting/basepage.py	(revision 12eac7367af1ea7729180dcee7ebf9cc3ebb4e38)
@@ -962,6 +962,4 @@
                 self.state_change= True
                 self._draw_model() 
-                self._sleep4sec()
-                self.Layout()
                 self.Refresh()
         return is_modified
@@ -1483,7 +1481,5 @@
         wx.PostEvent(self.parent, event)
         self.state_change= False
-        self._sleep4sec()
-        self.Layout()
-        self.Refresh()        
+  
                    
     def _on_select_model_helper(self): 
@@ -1941,13 +1937,14 @@
         self._sleep4sec()
         self.Layout()
-        self._sleep4sec()
+        #self._sleep4sec()
         return 
     
     def _sleep4sec(self):
         """
-        sleep for 0.5 sec only on Mac
+            sleep for 1 sec only applied on Mac
+            Note: This 1sec helps for Mac not to crash on self.:ayout after self._draw_model
         """
         if ON_MAC == True:
-            time.sleep(0.5)
+            time.sleep(1)
              
     def on_reset_clicked(self,event):
Index: sansview/perspectives/fitting/fitpage.py
===================================================================
--- sansview/perspectives/fitting/fitpage.py	(revision 6e9976be3c6ad17c4ee1e455860ae747e46fc9af)
+++ sansview/perspectives/fitting/fitpage.py	(revision 12eac7367af1ea7729180dcee7ebf9cc3ebb4e38)
@@ -726,9 +726,64 @@
         wx.PostEvent(self.parent, event)
         self.state_change= False
-        self._sleep4sec()
-        self.Layout()
-        self.Refresh()                
-
-       
+
+                    
+    def _onQrangeEnter(self, event):
+        """
+            Check validity of value enter in the Q range field
+        """
+        
+        tcrtl= event.GetEventObject()
+        #Clear msg if previously shown.
+        msg= ""
+        wx.PostEvent(self.parent.parent, StatusEvent(status = msg ))
+        # Flag to register when a parameter has changed.
+        is_modified = False
+        if tcrtl.GetValue().lstrip().rstrip()!="":
+            try:
+                value = float(tcrtl.GetValue())
+                tcrtl.SetBackgroundColour(wx.WHITE)
+
+                # If qmin and qmax have been modified, update qmin and qmax
+                if check_value( self.qmin, self.qmax):
+                    tempmin = float(self.qmin.GetValue())
+                    if tempmin != self.qmin_x:
+                        self.qmin_x = tempmin
+                    tempmax = float(self.qmax.GetValue())
+                    if tempmax != self.qmax_x:
+                        self.qmax_x = tempmax
+                else:
+                    tcrtl.SetBackgroundColour("pink")
+                    msg= "Model Error:wrong value entered : %s"% sys.exc_value
+                    wx.PostEvent(self.parent.parent, StatusEvent(status = msg ))
+                    return 
+                
+            except:
+                tcrtl.SetBackgroundColour("pink")
+                msg= "Model Error:wrong value entered : %s"% sys.exc_value
+                wx.PostEvent(self.parent.parent, StatusEvent(status = msg ))
+                return 
+            #Check if # of points for theory model are valid(>0).
+            if self.npts != None:
+                if check_float(self.npts):
+                    temp_npts = float(self.npts.GetValue())
+                    if temp_npts !=  self.num_points:
+                        self.num_points = temp_npts
+                        is_modified = True
+                else:
+                    msg= "Cannot Plot :No npts in that Qrange!!!  "
+                    wx.PostEvent(self.parent.parent, StatusEvent(status = msg ))
+           
+        else:
+           tcrtl.SetBackgroundColour("pink")
+           msg= "Model Error:wrong value entered!!!"
+           wx.PostEvent(self.parent.parent, StatusEvent(status = msg ))
+        
+        self.compute_chisqr()   
+        #self._undo.Enable(True)
+        self.save_current_state()
+        event = PageInfoEvent(page = self)
+        wx.PostEvent(self.parent, event)
+        self.state_change= False
+
     def _clear_Err_on_Fit(self):
         """
@@ -1013,6 +1068,5 @@
 
             self.tcChi.SetLabel(str(format_number(output)))
-           
-            self.sizer5.Layout()
+
             self.state.tcChi =self.tcChi
           
