Index: guiframe/data_manager.py
===================================================================
--- guiframe/data_manager.py	(revision 5080cda9aad87f2f3b25439dcece6186e1e84226)
+++ guiframe/data_manager.py	(revision a3c96f7a3c905ccffd93fca3a57eac7a30c17e35)
@@ -120,7 +120,6 @@
         return name
     
-    def add_data(self, data_list):
-        """
-        receive a list of 
+    def add_theory_data(self, data_list):
+        """
         """
         for id, data in data_list.iteritems():
@@ -130,7 +129,24 @@
                 logging.info(msg)
                 data_state = self.stored_data[id]
+                data_state.theory_data = data
+            else:
+                data_state = DataState(theory_data=data)
+                data_state.id = data.id
+                self.stored_data[id] = data_state
+                
+    def add_data(self, data_list):
+        """
+        receive a list of 
+        """
+        for id, data in data_list.iteritems():
+            if id  in self.stored_data:
+                msg = "Data manager already stores %s" % str(data.name)
+                msg += ""
+                logging.info(msg)
+                data_state = self.stored_data[id]
+                data_state.data = data
             else:
                 data_state = DataState(data)
-                data_state.id = time.time()
+                data_state.id = id
                 self.stored_data[id] = data_state
     
Index: guiframe/data_panel.py
===================================================================
--- guiframe/data_panel.py	(revision b5e79f7292ca09bf167f2a44f334f454af997886)
+++ guiframe/data_panel.py	(revision a3c96f7a3c905ccffd93fca3a57eac7a30c17e35)
@@ -287,28 +287,5 @@
         self.tree_ctrl = DataTreeCtrl(parent=self)
         self.tree_ctrl.Bind(CT.EVT_TREE_ITEM_CHECKING, self.on_check_item)
-        self.tree_ctrl.Bind(CT.EVT_TREE_ITEM_RIGHT_CLICK, self.on_right_click)
-        label = wx.StaticText(self, -1, "LOADED DATA")
-        label.SetForegroundColour('blue')
-        self.sizer1.Add(label, 0, wx.LEFT, 10)
         self.sizer1.Add(self.tree_ctrl,1, wx.EXPAND|wx.ALL, 10)
-        
-
-    def on_right_click(self, event):
-        """
-        """
-        ## Create context menu for data 
-        self.popUpMenu = wx.Menu()
-        msg = "Edit %s"%str(self.tree_ctrl.GetItemText(event.GetItem()))
-        id = wx.NewId()
-        self.edit_data_mitem = wx.MenuItem(self.popUpMenu,id,msg,
-                                 "Edit meta data")
-        wx.EVT_MENU(self, id, self.on_edit_data)
-        self.popUpMenu.AppendItem(self.edit_data_mitem)
-        self.Bind(wx.EVT_CONTEXT_MENU, self.onContextMenu)
-        
-    def on_edit_data(self, event):
-        """
-        """
-        print "editing data"
         
     def onContextMenu(self, event): 
Index: guiframe/data_state.py
===================================================================
--- guiframe/data_state.py	(revision 5080cda9aad87f2f3b25439dcece6186e1e84226)
+++ guiframe/data_state.py	(revision a3c96f7a3c905ccffd93fca3a57eac7a30c17e35)
@@ -17,8 +17,10 @@
      Store information about data
     """
-    def __init__(self, data, parent=None):
+    def __init__(self, data, theory_data=None, model=None, parent=None):
         """
         
         """
+        self.model = model
+        self.theory_data = theory_data
         self.parent = parent
         self.data = data
@@ -36,5 +38,10 @@
             _str += "Data ID : %s \n" % str(self.data.id)
         else:
-            _str += "Data: %s \n" % str(self.data)
+            _str += "Theory Data: %s \n" % str(self.theory_data)
+        if self.theory_data is not None:
+            _str += "Data name : %s \n" % str(self.theory_data.name)
+            _str += "Theory Data ID : %s \n" % str(self.theory_data.id)
+        else:
+            _str += "Theory Data: %s \n" % str(self.theory_data)
             
         _str += "Theories available: %s \n" % len(self.theory_list)
@@ -74,4 +81,24 @@
         self.data = data
         
+    def set_theory_data(self, theory_data):
+        """
+        """
+        self.theory_data = theory_data
+        
+    def get_theory_data(self):
+        """
+        """
+        return self.theory_data
+        
+    def set_model(self, model):
+        """
+        """
+        self.model = model
+        
+    def get_model(self):
+        """
+        """
+        return self.model
+        
     def get_data(self):
         return self.data
Index: guiframe/local_perspectives/plotting/Plotter1D.py
===================================================================
--- guiframe/local_perspectives/plotting/Plotter1D.py	(revision d7f727dc401106872dcac9cdf018b2b50a43b765)
+++ guiframe/local_perspectives/plotting/Plotter1D.py	(revision a3c96f7a3c905ccffd93fca3a57eac7a30c17e35)
@@ -242,13 +242,5 @@
         wx.EVT_MENU(self, id, self.onPrinterPreview)
         
-        symbol_menu = wx.Menu()
-        for label in self._symbol_labels:
-            id = wx.NewId()
-            symbol_menu.Append(id, str(label), str(label))
-            wx.EVT_MENU(self, id, self.onChangeSymbol)
-        id = wx.NewId()
-        self._slicerpop.AppendMenu(id,'&Modify Symbol',  symbol_menu)
-        self._slicerpop.AppendSeparator()
-        
+       
         #add menu of other plugins
         item_list = self.parent.get_context_menu(self)
@@ -274,4 +266,12 @@
                 self._slicerpop.Append(id, '&Freeze', 'Freeze')
                 wx.EVT_MENU(self, id, self.onFreeze)
+            symbol_menu = wx.Menu()
+            for label in self._symbol_labels:
+                id = wx.NewId()
+                symbol_menu.Append(id, str(label), str(label))
+                wx.EVT_MENU(self, id, self.onChangeSymbol)
+            id = wx.NewId()
+            self._slicerpop.AppendMenu(id,'&Modify Symbol',  symbol_menu)
+            self._slicerpop.AppendSeparator()
             #else:
             id = wx.NewId()
