Index: src/sas/qtgui/MainWindow/DataExplorer.py
===================================================================
--- src/sas/qtgui/MainWindow/DataExplorer.py	(revision c6fb57cd9b80659e4bab3a7661c437fa3dcbc3bf)
+++ src/sas/qtgui/MainWindow/DataExplorer.py	(revision cb4d21923d5112d84638455162621f5823dd13c5)
@@ -1023,5 +1023,5 @@
             row_index = proxy.mapToSource(index)
             item_to_delete = model.itemFromIndex(row_index)
-            if item_to_delete.isCheckable():
+            if item_to_delete and item_to_delete.isCheckable():
                 row = row_index.row()
                 if item_to_delete.parent():
Index: src/sas/qtgui/Perspectives/Corfunc/CorfuncPerspective.py
===================================================================
--- src/sas/qtgui/Perspectives/Corfunc/CorfuncPerspective.py	(revision d4881f6af1db66e68fbbc5d7b5c67fc1f7bc1ea7)
+++ src/sas/qtgui/Perspectives/Corfunc/CorfuncPerspective.py	(revision cb4d21923d5112d84638455162621f5823dd13c5)
@@ -43,4 +43,5 @@
         It will also plot the extrpolation in self.extrap, if it exists."""
 
+        # TODO: add interactivity to axvlines so qlimits are immediately updated!
         self.fig.clf()
 
@@ -103,4 +104,5 @@
         self.setWindowTitle("Corfunc Perspective")
 
+        self.parent = parent
         self.mapper = None
         self.model = QtGui.QStandardItemModel(self)
@@ -108,9 +110,10 @@
         self._calculator = CorfuncCalculator()
         self._allow_close = True
+        self._model_item = None
+        self.txtLowerQMin.setText("0.0")
+        self.txtLowerQMin.setEnabled(False)
 
         self._canvas = MyMplCanvas(self.model)
-        self._realplot = MyMplCanvas(self.model)
-        self.verticalLayout_7.insertWidget(0, self._canvas)
-        self.verticalLayout_7.insertWidget(1, self._realplot)
+        self.mainVerticalLayout.insertWidget(0, self._canvas)
 
         # Connect buttons to slots.
@@ -126,11 +129,11 @@
     def setup_slots(self):
         """Connect the buttons to their appropriate slots."""
-        self.extrapolateBtn.clicked.connect(self.extrapolate)
-        self.extrapolateBtn.setEnabled(False)
-        self.transformBtn.clicked.connect(self.transform)
-        self.transformBtn.setEnabled(False)
-
-        self.calculateBgBtn.clicked.connect(self.calculate_background)
-        self.calculateBgBtn.setEnabled(False)
+        self.cmdExtrapolate.clicked.connect(self.extrapolate)
+        self.cmdExtrapolate.setEnabled(False)
+        self.cmdTransform.clicked.connect(self.transform)
+        self.cmdTransform.setEnabled(False)
+
+        self.cmdCalculateBg.clicked.connect(self.calculate_background)
+        self.cmdCalculateBg.setEnabled(False)
 
         self.model.itemChanged.connect(self.model_changed)
@@ -148,6 +151,6 @@
         self.model.setItem(W.W_BACKGROUND,
                            QtGui.QStandardItem("0"))
-        self.model.setItem(W.W_TRANSFORM,
-                           QtGui.QStandardItem("Fourier"))
+        #self.model.setItem(W.W_TRANSFORM,
+        #                   QtGui.QStandardItem("Fourier"))
         self.model.setItem(W.W_GUINIERA,
                            QtGui.QStandardItem("0.0"))
@@ -185,13 +188,13 @@
         try:
             params, extrapolation, _ = self._calculator.compute_extrapolation()
-            self.model.setItem(W.W_GUINIERA, QtGui.QStandardItem(str(params['A'])))
-            self.model.setItem(W.W_GUINIERB, QtGui.QStandardItem(str(params['B'])))
-            self.model.setItem(W.W_PORODK, QtGui.QStandardItem(str(params['K'])))
+            self.model.setItem(W.W_GUINIERA, QtGui.QStandardItem("{:.3g}".format(params['A'])))
+            self.model.setItem(W.W_GUINIERB, QtGui.QStandardItem("{:.3g}".format(params['B'])))
+            self.model.setItem(W.W_PORODK, QtGui.QStandardItem("{:.3g}".format(params['K'])))
             self.model.setItem(W.W_PORODSIGMA,
-                               QtGui.QStandardItem(str(params['sigma'])))
+                               QtGui.QStandardItem("{:.4g}".format(params['sigma'])))
 
             self._canvas.extrap = extrapolation
             self._canvas.draw_q_space()
-            self.transformBtn.setEnabled(True)
+            self.cmdTransform.setEnabled(True)
         except (LinAlgError, ValueError):
             message = "These is not enough data in the fitting range. "\
@@ -206,5 +209,7 @@
     def transform(self):
         """Calculate the real space version of the extrapolation."""
-        method = str(self.model.item(W.W_TRANSFORM).text()).lower()
+        #method = self.model.item(W.W_TRANSFORM).text().lower()
+
+        method = "fourier"
 
         extrap = self._canvas.extrap
@@ -226,18 +231,37 @@
     def finish_transform(self, transforms):
         params = self._calculator.extract_parameters(transforms[0])
-        self.model.setItem(W.W_CORETHICK,
-                           QtGui.QStandardItem(str(params['d0'])))
-        self.model.setItem(W.W_INTTHICK,
-                           QtGui.QStandardItem(str(params['dtr'])))
-        self.model.setItem(W.W_HARDBLOCK,
-                           QtGui.QStandardItem(str(params['Lc'])))
-        self.model.setItem(W.W_CRYSTAL,
-                           QtGui.QStandardItem(str(params['fill'])))
-        self.model.setItem(W.W_POLY,
-                           QtGui.QStandardItem(str(params['A'])))
-        self.model.setItem(W.W_PERIOD,
-                           QtGui.QStandardItem(str(params['max'])))
-        self._realplot.data = transforms
-        self._realplot.draw_real_space()
+        self.model.setItem(W.W_CORETHICK, QtGui.QStandardItem("{:.3g}".format(params['d0'])))
+        self.model.setItem(W.W_INTTHICK, QtGui.QStandardItem("{:.3g}".format(params['dtr'])))
+        self.model.setItem(W.W_HARDBLOCK, QtGui.QStandardItem("{:.3g}".format(params['Lc'])))
+        self.model.setItem(W.W_CRYSTAL, QtGui.QStandardItem("{:.3g}".format(params['fill'])))
+        self.model.setItem(W.W_POLY, QtGui.QStandardItem("{:.3g}".format(params['A'])))
+        self.model.setItem(W.W_PERIOD, QtGui.QStandardItem("{:.3g}".format(params['max'])))
+        #self._realplot.data = transforms
+
+        self.update_real_space_plot(transforms)
+
+        #self._realplot.draw_real_space()
+
+    def update_real_space_plot(self, datas):
+        """take the datas tuple and create a plot in DE"""
+
+        assert isinstance(datas, tuple)
+        plot_id = id(self)
+        titles = ['1D Correlation', '3D Correlation', 'Interface Distribution Function']
+        for i, plot in enumerate(datas):
+            plot_to_add = self.parent.createGuiData(plot)
+            # set plot properties
+            title = plot_to_add.title
+            plot_to_add.scale = 'linear'
+            plot_to_add.symbol = 'Line'
+            plot_to_add._xaxis = "x"
+            plot_to_add._xunit = "A"
+            plot_to_add._yaxis = "\Gamma"
+            if i < len(titles):
+                title = titles[i]
+                plot_to_add.name = titles[i]
+            GuiUtils.updateModelItemWithPlot(self._model_item, plot_to_add, title)
+            #self.axes.set_xlim(min(data1.x), max(data1.x) / 4)
+        pass
 
     def setup_mapper(self):
@@ -247,21 +271,21 @@
         self.mapper.setModel(self.model)
 
-        self.mapper.addMapping(self.qMin, W.W_QMIN)
-        self.mapper.addMapping(self.qMax1, W.W_QMAX)
-        self.mapper.addMapping(self.qMax2, W.W_QCUTOFF)
-        self.mapper.addMapping(self.bg, W.W_BACKGROUND)
-        self.mapper.addMapping(self.transformCombo, W.W_TRANSFORM)
-
-        self.mapper.addMapping(self.guinierA, W.W_GUINIERA)
-        self.mapper.addMapping(self.guinierB, W.W_GUINIERB)
-        self.mapper.addMapping(self.porodK, W.W_PORODK)
-        self.mapper.addMapping(self.porodSigma, W.W_PORODSIGMA)
-
-        self.mapper.addMapping(self.avgCoreThick, W.W_CORETHICK)
-        self.mapper.addMapping(self.avgIntThick, W.W_INTTHICK)
-        self.mapper.addMapping(self.avgHardBlock, W.W_HARDBLOCK)
-        self.mapper.addMapping(self.polydisp, W.W_POLY)
-        self.mapper.addMapping(self.longPeriod, W.W_PERIOD)
-        self.mapper.addMapping(self.localCrystal, W.W_CRYSTAL)
+        self.mapper.addMapping(self.txtLowerQMax, W.W_QMIN)
+        self.mapper.addMapping(self.txtUpperQMin, W.W_QMAX)
+        self.mapper.addMapping(self.txtUpperQMax, W.W_QCUTOFF)
+        self.mapper.addMapping(self.txtBackground, W.W_BACKGROUND)
+        #self.mapper.addMapping(self.transformCombo, W.W_TRANSFORM)
+
+        self.mapper.addMapping(self.txtGuinierA, W.W_GUINIERA)
+        self.mapper.addMapping(self.txtGuinierB, W.W_GUINIERB)
+        self.mapper.addMapping(self.txtPorodK, W.W_PORODK)
+        self.mapper.addMapping(self.txtPorodSigma, W.W_PORODSIGMA)
+
+        self.mapper.addMapping(self.txtAvgCoreThick, W.W_CORETHICK)
+        self.mapper.addMapping(self.txtAvgIntThick, W.W_INTTHICK)
+        self.mapper.addMapping(self.txtAvgHardBlock, W.W_HARDBLOCK)
+        self.mapper.addMapping(self.txtPolydisp, W.W_POLY)
+        self.mapper.addMapping(self.txtLongPeriod, W.W_PERIOD)
+        self.mapper.addMapping(self.txtLocalCrystal, W.W_CRYSTAL)
 
         self.mapper.toFirst()
@@ -272,5 +296,5 @@
         try:
             background = self._calculator.compute_background()
-            temp = QtGui.QStandardItem(str(background))
+            temp = QtGui.QStandardItem("{:.4g}".format(background))
             self.model.setItem(W.W_BACKGROUND, temp)
         except (LinAlgError, ValueError):
@@ -304,7 +328,8 @@
         model_item = data_item[0]
         data = GuiUtils.dataFromItem(model_item)
+        self._model_item = model_item
         self._calculator.set_data(data)
-        self.calculateBgBtn.setEnabled(True)
-        self.extrapolateBtn.setEnabled(True)
+        self.cmdCalculateBg.setEnabled(True)
+        self.cmdExtrapolate.setEnabled(True)
 
         self.model.setItem(W.W_GUINIERA, QtGui.QStandardItem(""))
@@ -322,8 +347,8 @@
         self._canvas.extrap = None
         self._canvas.draw_q_space()
-        self.transformBtn.setEnabled(False)
-
-        self._realplot.data = None
-        self._realplot.draw_real_space()
+        self.cmdTransform.setEnabled(False)
+
+        #self._realplot.data = None
+        #self._realplot.draw_real_space()
 
     def setClosable(self, value=True):
Index: src/sas/qtgui/Perspectives/Corfunc/UI/CorfuncPanel.ui
===================================================================
--- src/sas/qtgui/Perspectives/Corfunc/UI/CorfuncPanel.ui	(revision d4881f6af1db66e68fbbc5d7b5c67fc1f7bc1ea7)
+++ src/sas/qtgui/Perspectives/Corfunc/UI/CorfuncPanel.ui	(revision cb4d21923d5112d84638455162621f5823dd13c5)
@@ -7,6 +7,6 @@
     <x>0</x>
     <y>0</y>
-    <width>738</width>
-    <height>633</height>
+    <width>461</width>
+    <height>568</height>
    </rect>
   </property>
@@ -14,7 +14,7 @@
    <string>Dialog</string>
   </property>
-  <layout class="QGridLayout" name="gridLayout">
-   <item row="1" column="0">
-    <layout class="QVBoxLayout" name="verticalLayout_7" stretch="1,0,0,0,0,0,0">
+  <layout class="QGridLayout" name="gridLayout_8">
+   <item row="0" column="0">
+    <layout class="QVBoxLayout" name="mainVerticalLayout">
      <item>
       <spacer name="verticalSpacer">
@@ -25,5 +25,5 @@
         <size>
          <width>20</width>
-         <height>40</height>
+         <height>38</height>
         </size>
        </property>
@@ -31,293 +31,387 @@
      </item>
      <item>
-      <layout class="QHBoxLayout" name="horizontalLayout_2">
-       <item>
-        <layout class="QVBoxLayout" name="verticalLayout_3">
-         <item alignment="Qt::AlignHCenter">
-          <widget class="QLabel" name="label_8">
-           <property name="text">
-            <string>Guinier</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <layout class="QFormLayout" name="formLayout_2">
+      <widget class="QGroupBox" name="groupBox">
+       <property name="title">
+        <string>I(q) data source</string>
+       </property>
+       <layout class="QGridLayout" name="gridLayout_6">
+        <item row="0" column="0">
+         <layout class="QHBoxLayout" name="horizontalLayout_4">
+          <item>
+           <widget class="QLabel" name="lblName">
+            <property name="text">
+             <string>Name:</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QLineEdit" name="txtFilename">
+            <property name="enabled">
+             <bool>false</bool>
+            </property>
+            <property name="frame">
+             <bool>false</bool>
+            </property>
+            <property name="readOnly">
+             <bool>false</bool>
+            </property>
+           </widget>
+          </item>
+         </layout>
+        </item>
+        <item row="1" column="0">
+         <widget class="QGroupBox" name="groupBox_2">
+          <property name="title">
+           <string>Lower Q range</string>
+          </property>
+          <layout class="QGridLayout" name="gridLayout">
            <item row="0" column="0">
-            <widget class="QLineEdit" name="guinierA">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="1">
-            <widget class="QLabel" name="label_6">
-             <property name="text">
-              <string>A</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="0">
-            <widget class="QLineEdit" name="guinierB">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="1">
-            <widget class="QLabel" name="label_7">
-             <property name="text">
-              <string>B</string>
-             </property>
-            </widget>
+            <layout class="QHBoxLayout" name="horizontalLayout">
+             <item>
+              <widget class="QLabel" name="lblTotalQMin">
+               <property name="text">
+                <string>Min:</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLineEdit" name="txtLowerQMin">
+               <property name="enabled">
+                <bool>true</bool>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="lblTotalQMax">
+               <property name="text">
+                <string>Max:</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLineEdit" name="txtLowerQMax">
+               <property name="enabled">
+                <bool>true</bool>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="lblTotalQUnits">
+               <property name="text">
+                <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Ã
+&lt;span style=&quot; vertical-align:super;&quot;&gt;-1&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
            </item>
           </layout>
-         </item>
-        </layout>
-       </item>
-       <item>
-        <layout class="QVBoxLayout" name="verticalLayout_4">
-         <item alignment="Qt::AlignHCenter">
-          <widget class="QLabel" name="label_9">
-           <property name="text">
-            <string>Porod</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <layout class="QFormLayout" name="formLayout_3">
+         </widget>
+        </item>
+        <item row="2" column="0">
+         <widget class="QGroupBox" name="groupBox_6">
+          <property name="title">
+           <string>Upper Q range</string>
+          </property>
+          <layout class="QGridLayout" name="gridLayout_5">
            <item row="0" column="0">
-            <widget class="QLineEdit" name="porodK">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="1">
-            <widget class="QLabel" name="label_10">
-             <property name="text">
-              <string>K</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="0">
-            <widget class="QLineEdit" name="porodSigma">
-             <property name="readOnly">
-              <bool>true</bool>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="1">
-            <widget class="QLabel" name="label_11">
-             <property name="text">
-              <string> Ï </string>
-             </property>
-            </widget>
+            <layout class="QHBoxLayout" name="horizontalLayout_3">
+             <item>
+              <widget class="QLabel" name="lblTotalQMin_2">
+               <property name="text">
+                <string>Min:</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLineEdit" name="txtUpperQMin">
+               <property name="enabled">
+                <bool>true</bool>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="lblTotalQMax_2">
+               <property name="text">
+                <string>Max:</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLineEdit" name="txtUpperQMax">
+               <property name="enabled">
+                <bool>true</bool>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="lblTotalQUnits_2">
+               <property name="text">
+                <string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;Ã
+&lt;span style=&quot; vertical-align:super;&quot;&gt;-1&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
            </item>
           </layout>
-         </item>
-        </layout>
-       </item>
-      </layout>
-     </item>
-     <item>
-      <widget class="QFrame" name="frame">
-       <property name="frameShape">
-        <enum>QFrame::StyledPanel</enum>
-       </property>
-       <property name="frameShadow">
-        <enum>QFrame::Raised</enum>
-       </property>
-       <property name="lineWidth">
-        <number>5</number>
-       </property>
+         </widget>
+        </item>
+       </layout>
       </widget>
      </item>
      <item>
-      <widget class="Line" name="line">
-       <property name="orientation">
-        <enum>Qt::Horizontal</enum>
-       </property>
+      <widget class="QGroupBox" name="groupBox_4">
+       <property name="title">
+        <string>Extrapolation parameters</string>
+       </property>
+       <layout class="QGridLayout" name="gridLayout_4">
+        <item row="0" column="0">
+         <layout class="QFormLayout" name="formLayout_2">
+          <item row="0" column="0">
+           <widget class="QLabel" name="label_8">
+            <property name="text">
+             <string>Guinier</string>
+            </property>
+            <property name="alignment">
+             <set>Qt::AlignJustify|Qt::AlignVCenter</set>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="0">
+           <layout class="QHBoxLayout" name="horizontalLayout_7">
+            <item>
+             <widget class="QLabel" name="label_6">
+              <property name="text">
+               <string>A</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QLineEdit" name="txtGuinierA">
+              <property name="readOnly">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+          <item row="2" column="0">
+           <layout class="QHBoxLayout" name="horizontalLayout_2">
+            <item>
+             <widget class="QLabel" name="label_7">
+              <property name="text">
+               <string>B</string>
+              </property>
+             </widget>
+            </item>
+            <item>
+             <widget class="QLineEdit" name="txtGuinierB">
+              <property name="readOnly">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </item>
+        <item row="0" column="1">
+         <layout class="QVBoxLayout" name="verticalLayout">
+          <item>
+           <widget class="QLabel" name="label_9">
+            <property name="text">
+             <string>Porod</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <layout class="QFormLayout" name="formLayout">
+            <item row="0" column="0">
+             <widget class="QLabel" name="label_10">
+              <property name="text">
+               <string>K</string>
+              </property>
+             </widget>
+            </item>
+            <item row="0" column="1">
+             <widget class="QLineEdit" name="txtPorodK">
+              <property name="readOnly">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="0">
+             <widget class="QLabel" name="label_11">
+              <property name="text">
+               <string> Ï </string>
+              </property>
+             </widget>
+            </item>
+            <item row="1" column="1">
+             <widget class="QLineEdit" name="txtPorodSigma">
+              <property name="readOnly">
+               <bool>true</bool>
+              </property>
+             </widget>
+            </item>
+           </layout>
+          </item>
+         </layout>
+        </item>
+       </layout>
       </widget>
      </item>
      <item>
-      <layout class="QGridLayout" name="gridLayout_2">
-       <item row="0" column="1">
-        <widget class="QLabel" name="label_14">
+      <widget class="QGroupBox" name="groupBox_5">
+       <property name="title">
+        <string>Background</string>
+       </property>
+       <layout class="QGridLayout" name="gridLayout_7">
+        <item row="0" column="0">
+         <layout class="QHBoxLayout" name="horizontalLayout_6">
+          <item>
+           <widget class="QPushButton" name="cmdCalculateBg">
+            <property name="text">
+             <string>Calculate</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QLabel" name="label">
+            <property name="text">
+             <string>background</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QLineEdit" name="txtBackground"/>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer_2">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>40</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </item>
+       </layout>
+      </widget>
+     </item>
+     <item>
+      <widget class="QGroupBox" name="groupBox_3">
+       <property name="title">
+        <string>Output parameters</string>
+       </property>
+       <layout class="QGridLayout" name="gridLayout_3">
+        <item row="0" column="0">
+         <layout class="QGridLayout" name="gridLayout_2">
+          <item row="0" column="0">
+           <widget class="QLabel" name="label_14">
+            <property name="text">
+             <string>Long Period</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="1">
+           <widget class="QLineEdit" name="txtLongPeriod"/>
+          </item>
+          <item row="0" column="2">
+           <widget class="QLabel" name="label_15">
+            <property name="text">
+             <string>Average Interface Thickness</string>
+            </property>
+           </widget>
+          </item>
+          <item row="0" column="3">
+           <widget class="QLineEdit" name="txtAvgIntThick"/>
+          </item>
+          <item row="1" column="0">
+           <widget class="QLabel" name="label_16">
+            <property name="text">
+             <string>Average Hard Block Thickness</string>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="1">
+           <widget class="QLineEdit" name="txtAvgHardBlock"/>
+          </item>
+          <item row="1" column="2">
+           <widget class="QLabel" name="label_17">
+            <property name="text">
+             <string>Average Core Thickness</string>
+            </property>
+           </widget>
+          </item>
+          <item row="1" column="3">
+           <widget class="QLineEdit" name="txtAvgCoreThick"/>
+          </item>
+          <item row="2" column="0">
+           <widget class="QLabel" name="label_18">
+            <property name="text">
+             <string>Polydispersity</string>
+            </property>
+           </widget>
+          </item>
+          <item row="2" column="1">
+           <widget class="QLineEdit" name="txtPolydisp"/>
+          </item>
+          <item row="2" column="2">
+           <widget class="QLabel" name="label_19">
+            <property name="text">
+             <string>Local Crystallinity</string>
+            </property>
+           </widget>
+          </item>
+          <item row="2" column="3">
+           <widget class="QLineEdit" name="txtLocalCrystal"/>
+          </item>
+         </layout>
+        </item>
+       </layout>
+      </widget>
+     </item>
+     <item>
+      <layout class="QHBoxLayout" name="horizontalLayout_5">
+       <item>
+        <widget class="QPushButton" name="cmdExtrapolate">
          <property name="text">
-          <string>Long Period</string>
+          <string>Extrapolate</string>
          </property>
         </widget>
        </item>
-       <item row="0" column="2">
-        <widget class="QLineEdit" name="avgIntThick"/>
-       </item>
-       <item row="0" column="3">
-        <widget class="QLabel" name="label_15">
+       <item>
+        <widget class="QPushButton" name="cmdTransform">
          <property name="text">
-          <string>Average Interface Thickness</string>
+          <string>Transform</string>
          </property>
         </widget>
        </item>
-       <item row="1" column="0">
-        <widget class="QLineEdit" name="avgHardBlock"/>
+       <item>
+        <spacer name="horizontalSpacer">
+         <property name="orientation">
+          <enum>Qt::Horizontal</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>40</width>
+           <height>20</height>
+          </size>
+         </property>
+        </spacer>
        </item>
-       <item row="1" column="1">
-        <widget class="QLabel" name="label_16">
+       <item>
+        <widget class="QPushButton" name="cmdHelp">
          <property name="text">
-          <string>Average Hard Block Thickness</string>
+          <string>Help</string>
          </property>
         </widget>
-       </item>
-       <item row="1" column="2">
-        <widget class="QLineEdit" name="avgCoreThick"/>
-       </item>
-       <item row="1" column="3">
-        <widget class="QLabel" name="label_17">
-         <property name="text">
-          <string>Average Core Thickness</string>
-         </property>
-        </widget>
-       </item>
-       <item row="2" column="0">
-        <widget class="QLineEdit" name="polydisp"/>
-       </item>
-       <item row="2" column="1">
-        <widget class="QLabel" name="label_18">
-         <property name="text">
-          <string>Polydispersity</string>
-         </property>
-        </widget>
-       </item>
-       <item row="2" column="2">
-        <widget class="QLineEdit" name="localCrystal"/>
-       </item>
-       <item row="2" column="3">
-        <widget class="QLabel" name="label_19">
-         <property name="text">
-          <string>Local Crystallinity</string>
-         </property>
-        </widget>
-       </item>
-       <item row="0" column="0">
-        <widget class="QLineEdit" name="longPeriod"/>
-       </item>
-      </layout>
-     </item>
-     <item>
-      <widget class="Line" name="line_2">
-       <property name="orientation">
-        <enum>Qt::Horizontal</enum>
-       </property>
-      </widget>
-     </item>
-     <item>
-      <layout class="QHBoxLayout" name="horizontalLayout_3">
-       <item>
-        <layout class="QVBoxLayout" name="verticalLayout" stretch="0,1">
-         <item alignment="Qt::AlignHCenter">
-          <widget class="QLabel" name="label_3">
-           <property name="text">
-            <string>Controls</string>
-           </property>
-          </widget>
-         </item>
-         <item>
-          <layout class="QGridLayout" name="gridLayout_3">
-           <property name="sizeConstraint">
-            <enum>QLayout::SetMinimumSize</enum>
-           </property>
-           <item row="1" column="3">
-            <widget class="QLabel" name="label_12">
-             <property name="text">
-              <string>Background</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="0">
-            <widget class="QLineEdit" name="qMin">
-             <property name="toolTip">
-              <string>Values with q &lt; qmin will be used for Guinier back extrapolation</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="1">
-            <widget class="QLabel" name="label">
-             <property name="text">
-              <string>Lower</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="0">
-            <widget class="QLineEdit" name="qMax1">
-             <property name="toolTip">
-              <string>Values with Uppder &lt; q &lt; Cutoff will be used for Porod forward extrapolation</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="1">
-            <widget class="QLabel" name="label_2">
-             <property name="text">
-              <string>Upper</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="3">
-            <widget class="QLabel" name="label_5">
-             <property name="text">
-              <string>Transform Type</string>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="1">
-            <widget class="QLabel" name="label_4">
-             <property name="text">
-              <string>Cutoff</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="2">
-            <widget class="QComboBox" name="transformCombo">
-             <item>
-              <property name="text">
-               <string>Fourier</string>
-              </property>
-             </item>
-            </widget>
-           </item>
-           <item row="1" column="2">
-            <widget class="QLineEdit" name="bg">
-            </widget>
-           </item>
-           <item row="2" column="0">
-            <widget class="QLineEdit" name="qMax2">
-             <property name="toolTip">
-              <string>Values with Uppder &lt; q &lt; Cutoff will be used for Porod forward extrapolation</string>
-             </property>
-            </widget>
-           </item>
-           <item row="2" column="2" colspan="2">
-            <widget class="QPushButton" name="calculateBgBtn">
-             <property name="text">
-              <string>Calculate Background</string>
-             </property>
-            </widget>
-           </item>
-           <item row="0" column="4">
-            <widget class="QPushButton" name="extrapolateBtn">
-             <property name="text">
-              <string>Extrapolate</string>
-             </property>
-            </widget>
-           </item>
-           <item row="1" column="4">
-            <widget class="QPushButton" name="transformBtn">
-             <property name="text">
-              <string>Transform</string>
-             </property>
-            </widget>
-           </item>
-          </layout>
-         </item>
-        </layout>
        </item>
       </layout>
Index: src/sas/qtgui/Plotting/Plotter.py
===================================================================
--- src/sas/qtgui/Plotting/Plotter.py	(revision f1f3e6a66c47bce134b59fe9f166fe14eac3a61d)
+++ src/sas/qtgui/Plotting/Plotter.py	(revision cb4d21923d5112d84638455162621f5823dd13c5)
@@ -49,7 +49,14 @@
         """ data setter """
         self._data = value
-        self.xLabel = "%s(%s)"%(value._xaxis, value._xunit)
-        self.yLabel = "%s(%s)"%(value._yaxis, value._yunit)
-        if value.isSesans:
+        if value._xunit:
+            self.xLabel = "%s(%s)"%(value._xaxis, value._xunit)
+        else:
+            self.xLabel = "%s"%(value._xaxis)
+        if value._yunit:
+            self.yLabel = "%s(%s)"%(value._yaxis, value._yunit)
+        else:
+            self.yLabel = "%s"%(value._yaxis)
+
+        if value.scale == 'linear' or value.isSesans:
             self.xscale = 'linear'
             self.yscale = 'linear'
@@ -83,7 +90,7 @@
             # Try name first
             try:
-                marker = PlotUtilities.SHAPES[marker]
+                marker = dict(PlotUtilities.SHAPES)[marker]
             except KeyError:
-                marker = list(PlotUtilities.SHAPES.values())[marker]
+                list(PlotUtilities.SHAPES.values())[marker]
 
         assert marker is not None
Index: src/sas/qtgui/Utilities/GuiUtils.py
===================================================================
--- src/sas/qtgui/Utilities/GuiUtils.py	(revision 0261bc13615593f5eb2e08941252c044b8bb2e3b)
+++ src/sas/qtgui/Utilities/GuiUtils.py	(revision cb4d21923d5112d84638455162621f5823dd13c5)
@@ -243,5 +243,4 @@
     """
     assert isinstance(item, QtGui.QStandardItem)
-    py_update_data = update_data
 
     # Check if data with the same ID is already present
@@ -250,10 +249,11 @@
         if plot_item.isCheckable():
             plot_data = plot_item.child(0).data()
-            if plot_data.id is not None and plot_data.id == py_update_data.id:
+            if plot_data.id is not None and plot_data.id == update_data.id:
                 # replace data section in item
                 plot_item.child(0).setData(update_data)
                 plot_item.setText(name)
-                # Plot title
-                plot_item.child(1).child(0).setText("Title: %s"%name)
+                # Plot title if any
+                if plot_item.child(1).hasChildren():
+                    plot_item.child(1).child(0).setText("Title: %s"%name)
                 # Force redisplay
                 return
@@ -884,4 +884,5 @@
         input = input.replace(",", "")
 
+
 def enum(*sequential, **named):
     """Create an enumeration object from a list of strings"""
