Index: fittingview/src/sans/perspectives/fitting/basepage.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/basepage.py	(revision 8df5faa4fec00c491e0aaa2ce0b7a76b2e05e59f)
+++ fittingview/src/sans/perspectives/fitting/basepage.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -2893,5 +2893,6 @@
             name = self.formfactorbox.GetValue()
         frame = HelpWindow(None, -1, pageToOpen=model_path)
-        if frame.rhelp.HasAnchor(name):
+        # If model name exists and model is not a custom model
+        if frame.rhelp.HasAnchor(name) and not self.plugin_rbutton.GetValue():
             frame.Show(True)
             frame.rhelp.ScrollToAnchor(name)
Index: fittingview/src/sans/perspectives/fitting/fitting.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/fitting.py	(revision f32d144d174cb53c8dbffe9c43bb830e97f32b7b)
+++ fittingview/src/sans/perspectives/fitting/fitting.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -262,12 +262,26 @@
                 os.remove(p_path)
             self.update_custom_combo()
-            self.delete_menu.Delete(id)
-            for item in self.edit_menu.GetMenuItems():
-                if item.GetLabel() == label:
-                    self.edit_menu.DeleteItem(item)
-                    break
+            if os.path.isfile(p_path):
+                msg = "Sorry! Could not be able to delete the default "
+                msg += "custom model... \n"
+                msg += "Please manually remove the files (.py, .pyc) "
+                msg += "in the 'plugin_models' folder \n"
+                msg += "inside of the SansView application, "
+                msg += "and try it again."
+                wx.MessageBox(msg, 'Info')
+                #wx.PostEvent(self.parent, StatusEvent(status=msg, type='stop',
+                #                                      info='warning'))
+            else:
+                self.delete_menu.Delete(id)
+                for item in self.edit_menu.GetMenuItems():
+                    if item.GetLabel() == label:
+                        self.edit_menu.DeleteItem(item)
+                        msg = "The custom model, %s, has been deleted."% label
+                        wx.PostEvent(self.parent, StatusEvent(status=msg, 
+                                                type='stop', info='info'))
+                        break
         except:
             msg ='Delete Error: \nCould not delete the file; Check if in use.'
-            wx.MessageBox(msg)
+            wx.MessageBox(msg, 'Error')
     
     def make_sum_model(self, event):
@@ -314,12 +328,12 @@
                     if hasattr(page, "formfactorbox"):
                         page.model_list_box = temp
-                        current_val = page.formfactorbox.GetValue()
-                        pos = page.formfactorbox.GetSelection()
+                        current_val = page.formfactorbox.GetLabel()
+                        #pos = page.formfactorbox.GetSelection()
                         page._show_combox_helper()
-                        new_val = page.formfactorbox.GetValue()
+                        new_val = page.formfactorbox.GetLabel()
                         if current_val != new_val and new_val != '':
-                            page.formfactorbox.SetValue(new_val)
+                            page.formfactorbox.SetLabel(new_val)
                         else:
-                            page.formfactorbox.SetValue(current_val)
+                            page.formfactorbox.SetLabel(current_val)
         except:
             pass
Index: fittingview/src/sans/perspectives/fitting/models.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/models.py	(revision f32d144d174cb53c8dbffe9c43bb830e97f32b7b)
+++ fittingview/src/sans/perspectives/fitting/models.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -107,13 +107,14 @@
         if not p_dir:
             raise
-
     # Place example user models as needed
-    for file in os.listdir(p_dir):
-        file_path = os.path.join(p_dir, file)
-        if os.path.isfile(file_path):
-            if file.split(".")[-1] == 'py' and\
-                file.split(".")[0] != '__init__':
-                if not os.path.isfile(os.path.join(dir, file)):
-                    shutil.copy(file_path, dir)
+    if os.path.isdir(p_dir):
+        for file in os.listdir(p_dir):
+            file_path = os.path.join(p_dir, file)
+            if os.path.isfile(file_path):
+                if file.split(".")[-1] == 'py' and\
+                    file.split(".")[0] != '__init__':
+                    if not os.path.isfile(os.path.join(dir, file)):
+                        shutil.copy(file_path, dir)
+
     return dir
 
@@ -572,7 +573,9 @@
         
         from sans.models.ReflectivityModel import ReflectivityModel
+        self.shape_indep_list.append(ReflectivityModel)
         self.multi_func_list.append(ReflectivityModel)
         
         from sans.models.ReflectivityIIModel import ReflectivityIIModel
+        self.shape_indep_list.append(ReflectivityIIModel)
         self.multi_func_list.append(ReflectivityIIModel)
     
@@ -580,6 +583,5 @@
         self.stored_plugins = self.findModels()
         self.plugins = self.stored_plugins.values()
-        self.plugins.append(ReflectivityModel)
-        self.plugins.append(ReflectivityIIModel)
+
         self._get_multifunc_models()
        
@@ -630,8 +632,5 @@
             self.stored_plugins[name] = plug
             self.plugins.append(plug)
-        from sans.models.ReflectivityModel import ReflectivityModel
-        from sans.models.ReflectivityIIModel import ReflectivityIIModel
-        self.plugins.append(ReflectivityModel)
-        self.plugins.append(ReflectivityIIModel)
+
         self.model_combobox.reset_list("Customized Models", self.plugins)
         return self.model_combobox.get_list()
Index: fittingview/src/sans/perspectives/fitting/plugin_models/polynominal5.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/polynominal5.py	(revision e9bd127913a8ceb9ec7480a739688e320a4a8239)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/polynominal5.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -32,5 +32,5 @@
     ## YOU CAN MODIFY THE LINE BELLOW. CHANGE ONLY WORDS BETWEEN " " 
     ## TO RENAME YOUR MODEL: THIS NAME IS WHAT YOU SEE ON GUI.
-    name = "polynomial5"        ## <----- NAME OF THE MODEL   
+    name = "polynomial5"        ## <----- FILE NAME (NAME OF THE MODEL)   
                                 
     def __init__(self):      ##DO NOT CHANGE THIS LINE!!!
@@ -48,5 +48,9 @@
         self.params['E'] = 0.0       ## <-----                  
         self.params['F'] = 0.0       ## <-----   
-        
+        ## YOU CAN MODIFY THE LINE BELLOW.MODIFY WORDS BETWEEN """   """  ONLY!!!!
+        self.description = """
+            a + b * x + c * math.pow(x,2) + d * math.pow(x,3) \n
+             + e * math.pow(x,4) + f * math.pow(x,5)  
+        """                        ## <-----   
         ## DEFINE DEFAULT DETAILS
         self.set_details()      ##DO NOT DELETE OR CHANGE THIS LINE!!!
Index: fittingview/src/sans/perspectives/fitting/plugin_models/sph_bessel_jn.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/sph_bessel_jn.py	(revision e9bd127913a8ceb9ec7480a739688e320a4a8239)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/sph_bessel_jn.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -36,5 +36,5 @@
     ## YOU CAN MODIFY THE LINE BELLOW. CHANGE ONLY WORDS BETWEEN " " 
     ## TO RENAME YOUR MODEL
-    name = "C*sph_jn(Ax+B)+D" ## <----- NAME OF THE MODEL   
+    name = "sph_bessel_jn" ## <----- FILE NAME (NAME OF THE MODEL)   
                                 
     def __init__(self):      ##DO NOT CHANGE THIS LINE!!!
Index: fittingview/src/sans/perspectives/fitting/plugin_models/sum_Ap1_1_Ap2.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/sum_Ap1_1_Ap2.py	(revision 2b4c8ca8d14062a3528984337b902960a80ab763)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/sum_Ap1_1_Ap2.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -43,7 +43,7 @@
     Note: P(Q) refers to 'form factor' model.
     """
-    name = ""
+    name = "sum_Ap1_1_Ap2" ## <----- FILE NAME (NAME OF THE MODEL) 
     def __init__(self):
-        Model1DPlugin.__init__(self, name='')
+        Model1DPlugin.__init__(self, name=self.name)
         """
         :param p_model1: a form factor, P(Q)
@@ -53,8 +53,5 @@
         p_model2 = P2()
         ## Setting  model name model description
-        self.description=""
-        self.name = self._get_name(p_model1.name, p_model2.name)
-        self.description = p_model1.name+"\n"
-        self.description += p_model2.name+"\n"
+        self.description = ""
         self.fill_description(p_model1, p_model2)
 
@@ -391,5 +388,5 @@
         """
         description = ""
-        description +="This model gives the summation of  %s and %s.\n"% \
+        description +="This model gives the summation of (A*%s) and ((1-A)*%s).\n"% \
                                         ( p_model1.name, p_model2.name )
         self.description += description
Index: fittingview/src/sans/perspectives/fitting/plugin_models/sum_p1_p2.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/sum_p1_p2.py	(revision 0e62f0faec5fad956192e66c523d4a3166511811)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/sum_p1_p2.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -48,7 +48,7 @@
     Note: P(Q) refers to 'form factor' model.
     """
-    name = ""
+    name = "sum_p1_p2" ## <----- FILE NAME (NAME OF THE MODEL) 
     def __init__(self):
-        Model1DPlugin.__init__(self, name='')
+        Model1DPlugin.__init__(self, name=self.name)
         """
         :param p_model1: a form factor, P(Q)
@@ -59,5 +59,5 @@
         ## Setting  model name model description
         self.description=""
-        self.name = self._get_name(p_model1.name, p_model2.name)
+        
         self.description = p_model1.name+"\n"
         self.description += p_model2.name+"\n"
Index: fittingview/src/sans/perspectives/fitting/plugin_models/testmodel.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/testmodel.py	(revision e9bd127913a8ceb9ec7480a739688e320a4a8239)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/testmodel.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -36,5 +36,5 @@
     ## YOU CAN MODIFY THE LINE BELLOW. CHANGE ONLY WORDS BETWEEN " " 
     ## TO RENAME YOUR MODEL
-    name = "A+Bcos(2x)+Csin(2x)"      ## <----- NAME OF THE MODEL   
+    name = "testmodel"      ## <----- FILE NAME (NAME OF THE MODEL)   
     
     def __init__(self):
Index: fittingview/src/sans/perspectives/fitting/plugin_models/testmodel_2.py
===================================================================
--- fittingview/src/sans/perspectives/fitting/plugin_models/testmodel_2.py	(revision 6f140f2b7ee93e52dce795ce3d1b3010a48f3268)
+++ fittingview/src/sans/perspectives/fitting/plugin_models/testmodel_2.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -35,5 +35,5 @@
     ## YOU CAN MODIFY THE LINE BELLOW. CHANGE ONLY WORDS BETWEEN " " 
     ## TO RENAME YOUR MODEL
-    name = "sin(poly)/(poly)" ## <----- NAME OF THE MODEL   
+    name = "testmodel_2" ## <----- FILE NAME (NAME OF THE MODEL)  
                                 
     def __init__(self):      ##DO NOT CHANGE THIS LINE!!!
Index: sansguiframe/src/sans/guiframe/gui_manager.py
===================================================================
--- sansguiframe/src/sans/guiframe/gui_manager.py	(revision 3184d9645ba278db389b7aa20dafb0a4d3ee13a7)
+++ sansguiframe/src/sans/guiframe/gui_manager.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -3396,5 +3396,23 @@
             self.frame.set_input_file(input_file=input_file)
          
-            
+    def clean_plugin_models(self, path): 
+        """
+        Delete plugin models  in app folder
+        
+        :param path: path of the plugin_models folder in app
+        """
+        # do it only the first time app loaded
+        # delete unused model folder    
+        model_folder = os.path.join(PATH_APP, path)
+        if os.path.exists(model_folder) and os.path.isdir(model_folder):
+            if len(os.listdir(model_folder)) > 0:
+                try:
+                    for file in os.listdir(model_folder):
+                        file_path = os.path.join(model_folder, file)
+                        if os.path.isfile(file_path):
+                            os.remove(file_path)
+                except:
+                    pass
+              
     def set_manager(self, manager):
         """
Index: sansview/sansview.py
===================================================================
--- sansview/sansview.py	(revision 55591714fb692347059ba167fcb5d7384be5898f)
+++ sansview/sansview.py	(revision 19e614a88b2cede7e0b229c9b1a8813b1d5a6490)
@@ -32,4 +32,5 @@
 # For py2exe, import config here
 import local_config
+PLUGIN_MODEL_DIR = 'plugin_models'
 
 def run():
@@ -104,5 +105,6 @@
         # Build the GUI
         self.gui.build_gui()
-        
+        # delete unused model folder    
+        self.gui.clean_plugin_models(PLUGIN_MODEL_DIR)
         # Start the main loop
         self.gui.MainLoop()  
