Index: prview/perspectives/pr/inversion_panel.py
===================================================================
--- prview/perspectives/pr/inversion_panel.py	(revision aa4b8379ab733d444eb3a18e3390d30388cdc69f)
+++ prview/perspectives/pr/inversion_panel.py	(revision 3fd1ebccadc65f6073d98a1deb5f2d95863bd4d2)
@@ -200,30 +200,57 @@
         """
         if name=='nfunc':
-            int(self.nfunc_ctl.GetValue())
+            try:
+                return int(self.nfunc_ctl.GetValue())
+            except:
+                return -1
         elif name=='d_max':
-            self.dmax_ctl.GetValue()
+            try:
+                return self.dmax_ctl.GetValue()
+            except:
+                return -1.0
         elif name=='alpha':
-            self.alpha_ctl.GetValue()
+            try:
+                return self.alpha_ctl.GetValue()
+            except:
+                return -1.0
         elif name=='chi2':
-            self.chi2_ctl.GetValue()
+            try:
+                return float(self.chi2_ctl.GetValue())
+            except:
+                return -1.0
         elif name=='q_min':
-            self.qmin_ctl.GetValue()
+            try:
+                return float(self.qmin_ctl.GetValue())
+            except:
+                return 0.0
         elif name=='q_max':
-            self.qmax_ctl.GetValue()
+            try:
+                return float(self.qmax_ctl.GetValue())
+            except:
+                return 0.0
         elif name=='elapsed':
-            self.time_ctl.GetValue()
+            try:
+                return float(self.time_ctl.GetValue())
+            except:
+                return -1.0
         elif name=='oscillation':
-            self.osc_ctl.GetValue()
+            try:
+                return float(self.osc_ctl.GetValue())
+            except:
+                return -1.0
         elif name=='pos':
-            self.pos_ctl.GetValue()
+            try:
+                return float(self.pos_ctl.GetValue())
+            except:
+                return -1.0
         elif name=='pos_err':
-            self.pos_err_ctl.GetValue()
+            return self.pos_err_ctl.GetValue()
         elif name=='alpha_estimate':
-            self.alpha_estimate_ctl.GetValue()
+            return self.alpha_estimate_ctl.GetLabel()
         elif name=='plotname':
             if self.standalone==False:
-                self.plot_data.GetValue()
+                return self.plot_data.GetValue()
         elif name=='datafile':
-            self.data_file.GetValue()
+            return self.data_file.GetValue()
         else:
             wx.Panel.__getattr__(self, name)
@@ -311,5 +338,6 @@
         self.alpha_ctl.Bind(wx.EVT_KILL_FOCUS, self._read_pars)
         self.dmax_ctl.Bind(wx.EVT_KILL_FOCUS, self._on_pars_changed)
-        self.Bind(wx.EVT_TEXT_ENTER, self._on_pars_changed)
+        #self.dmax_ctl.Bind(wx.EVT_TEXT_ENTER, self._on_pars_changed)
+        #self.Bind(wx.EVT_TEXT_ENTER, self._on_pars_changed)
         
         sizer_params = wx.GridBagSizer(5,5)
@@ -343,4 +371,6 @@
         self.qmin_ctl = wx.TextCtrl(self, -1, size=(60,20))
         self.qmax_ctl = wx.TextCtrl(self, -1, size=(60,20))
+        self.qmin_ctl.Bind(wx.EVT_KILL_FOCUS, self._on_pars_changed)
+        self.qmax_ctl.Bind(wx.EVT_KILL_FOCUS, self._on_pars_changed)
         
         iy = 0
@@ -504,4 +534,6 @@
         nfunc = 5
         dmax  = 120
+        qmin  = 0
+        qmax  = 0
         
         flag = True
Index: prview/perspectives/pr/pr.py
===================================================================
--- prview/perspectives/pr/pr.py	(revision aa4b8379ab733d444eb3a18e3390d30388cdc69f)
+++ prview/perspectives/pr/pr.py	(revision 3fd1ebccadc65f6073d98a1deb5f2d95863bd4d2)
@@ -54,4 +54,5 @@
         ## Current invertor
         self.invertor    = None
+        self.pr          = None
         ## Calculation thread
         self.calc_thread = None
@@ -669,9 +670,17 @@
         
         # Store a reference to the current plottable
+        # If we have a suggested value, use it.
+        try:
+            estimate = float(self.control_panel.alpha_estimate)
+            self.control_panel.alpha = estimate
+        except:
+            self.control_panel.alpha = self.alpha
+            print "No estimate yet"
+            pass
+        
         self.current_plottable = panel.plots[dataset]
         self.control_panel.plotname = dataset
         self.control_panel.nfunc = self.nfunc
         self.control_panel.d_max = self.max_length
-        self.control_panel.alpha = self.alpha
         self.parent.set_perspective(self.perspective)
         self.control_panel._on_invert(None)
