Index: sansguiframe/src/sans/guiframe/gui_manager.py
===================================================================
--- sansguiframe/src/sans/guiframe/gui_manager.py	(revision 37c36d94cc55386e14aa6f6ddc66e079ce2494bf)
+++ sansguiframe/src/sans/guiframe/gui_manager.py	(revision 53cf669565d119071be47e3aea06357a6e6b9fc9)
@@ -234,4 +234,6 @@
         # List of plot panels
         self.plot_panels = {}
+        # default Graph number fot the plotpanel caption
+        self.graph_num = 0
 
         # Default locations
@@ -808,9 +810,18 @@
                 count += 1
         windowname = p.window_name
-        caption = p.window_caption
+        windowcaption = 'Graph'#p.window_caption
         if count > 0:
             windowname += str(count+1)
-            caption += (' '+str(count))
+            #caption += (' '+str(count))
         p.window_name = windowname
+
+        # Append nummber
+        captions = self._get_plotpanel_captions()
+        while (1):
+            self.graph_num += 1
+            caption = windowcaption + '%s'% str(self.graph_num)
+            if caption not in captions:
+                break
+
         p.window_caption = caption
             
@@ -861,5 +872,17 @@
                     self._data_panel.cb_plotpanel.Append(str(caption), p)
         return ID
-        
+    
+    def _get_plotpanel_captions(self):
+        """
+        Get all the plotpanel cations
+        
+        : return: list of captions
+        """
+        captions = []
+        for Id in self.plot_panels.keys():
+            captions.append(self.plot_panels[Id].window_caption)
+        
+        return captions
+          
     def _setup_menus(self):
         """
@@ -2361,6 +2384,4 @@
         # wx.aui.AuiPaneInfo
         pane_info = self.get_paneinfo(name) 
-        # New Caption
-        pane_info.Caption(new_caption)
         # update the data_panel.cb_plotpanel
         if 'data_panel' in self.panels.keys():
@@ -2368,8 +2389,25 @@
             data_panel = self.panels["data_panel"]
             if data_panel.cb_plotpanel is not None:
+                # Check if any panel has the same caption
+                has_newstring = data_panel.cb_plotpanel.FindString\
+                                                            (str(new_caption)) 
+                caption = new_caption
+                if has_newstring != wx.NOT_FOUND:
+                    captions = self._get_plotpanel_captions()
+                    # Append nummber
+                    inc = 1
+                    while (1):
+                        caption = new_caption + '_%s'% str(inc)
+                        if caption not in captions:
+                            break
+                        inc += 1
+                    # notify to users
+                    msg = "Found Same Title: Added '_%s'"% str(inc)
+                    wx.PostEvent(self, StatusEvent(status=msg))
+                # update data_panel cb
                 pos = data_panel.cb_plotpanel.FindString(str(old_caption)) 
                 if pos != wx.NOT_FOUND:
-                    data_panel.cb_plotpanel.SetString(pos, new_caption)
-                    data_panel.cb_plotpanel.SetStringSelection(new_caption)
+                    data_panel.cb_plotpanel.SetString(pos, caption)
+                    data_panel.cb_plotpanel.SetStringSelection(caption)
         # update window Show menu
         if self._window_menu != None:
@@ -2377,8 +2415,11 @@
                 pos = self._window_menu.FindItem(old_caption)
                 if self._window_menu.GetLabel(pos) == str(old_caption):
-                    self._window_menu.SetLabel(pos, new_caption)
+                    self._window_menu.SetLabel(pos, caption)
                 break
+        # New Caption
+        pane_info.Caption(caption)
         # update aui manager
         self._mgr.Update()
+        return caption
         
     def get_paneinfo(self, name):
@@ -2580,5 +2621,5 @@
         self.panel_on_focus = panel  
         self.set_panel_on_focus(None)
-    
+
     def set_plot_unfocus(self): 
         """
Index: sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter1D.py
===================================================================
--- sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter1D.py	(revision 37c36d94cc55386e14aa6f6ddc66e079ce2494bf)
+++ sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter1D.py	(revision 53cf669565d119071be47e3aea06357a6e6b9fc9)
@@ -247,4 +247,10 @@
                 self.subplot.set_xlim((xlo, xhi))     
                 self.subplot.set_ylim((ylo, yhi))  
+            # Update Graph menu and help string        
+            pos = self.parent._window_menu.FindItem(self.window_caption)
+            helpString = 'Show/Hide Graph: '
+            for plot in  self.plots.itervalues():
+                helpString += (' ' + plot.label +';')
+            self.parent._window_menu.SetHelpString(pos, helpString)
         else:
             self.plots[data.id] = data
@@ -270,12 +276,5 @@
         Display the position of the mouse on the statusbar
         """
-        PlotPanel.onLeftDown(self, event)
-        ax = event.inaxes
-        if ax != None:
-            # data coordinate position
-            pos_x = "%8.3g"% event.xdata
-            pos_y = "%8.3g"% event.ydata
-            position = "x: %s    y: %s" % (pos_x, pos_y)
-            wx.PostEvent(self.parent, StatusEvent(status=position))
+        PlotPanel.onLeftDown(self, event)                      
         # unfocus all
         self.parent.set_plot_unfocus()  
@@ -458,5 +457,5 @@
         self._slicerpop.AppendSeparator()
         id = wx.NewId()
-        self._slicerpop.Append(id, '&Reset Range')
+        self._slicerpop.Append(id, '&Reset Axis Ranges')
         wx.EVT_MENU(self, id, self.onResetGraph)  
         try:
@@ -490,5 +489,13 @@
             newLabel = dial.getText() 
             selected_plot.label = newLabel
+            # Updata Graph menu help string
+            pos = self.parent._window_menu.FindItem(self.window_caption)
+            helpString = 'Show/Hide Graph: '
+            for plot in  self.plots.itervalues():
+                helpString += (' ' + plot.label +';')
+            self.parent._window_menu.SetHelpString(pos, helpString)
+            #break
         dial.Destroy()
+        
         ## render the graph
         self._onEVT_FUNC_PROPERTY() 
Index: sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter2D.py
===================================================================
--- sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter2D.py	(revision 37c36d94cc55386e14aa6f6ddc66e079ce2494bf)
+++ sansguiframe/src/sans/guiframe/local_perspectives/plotting/Plotter2D.py	(revision 53cf669565d119071be47e3aea06357a6e6b9fc9)
@@ -143,11 +143,7 @@
         """
         # Check that the LEFT button was pressed
-        if event.button == 1:
-            self.leftdown = True
-            ax = event.inaxes
-            if ax != None:
-                self.xInit, self.yInit = event.xdata, event.ydata
+        PlotPanel.onLeftDown(self, event)    
+          
         self.plottable_selected(self.data2D.id)
-       
         self._manager.set_panel_on_focus(self)
         wx.PostEvent(self.parent, PanelOnFocusEvent(panel=self))
@@ -251,5 +247,11 @@
                 self.toolbar.update()
                 self._is_zoomed = False
-
+                
+        # Update Graph menu and help string        
+        pos = self.parent._window_menu.FindItem(self.window_caption)
+        helpString = 'Show/Hide Graph: '
+        helpString += (' ' + data.label +';')
+        self.parent._window_menu.SetHelpString(pos, helpString)
+        
     def _set_axis_labels(self):
         """
@@ -383,4 +385,11 @@
         slicerpop.Append(id, '&Toggle Linear/Log Scale')
         wx.EVT_MENU(self, id, self._onToggleScale) 
+        
+        
+        slicerpop.AppendSeparator()
+        id = wx.NewId()
+        slicerpop.Append(id, '&Window Title')
+        wx.EVT_MENU(self, id, self.onChangeCaption)
+        
         try:
             pos_evt = event.GetPosition()
@@ -391,10 +400,4 @@
         self.PopupMenu(slicerpop, pos)
         
-        slicerpop.AppendSeparator()
-        id = wx.NewId()
-        slicerpop.Append(id, '&Window Title')
-        wx.EVT_MENU(self, id, self.onChangeCaption)
-        
-        self.PopupMenu(self._slicerpop, pos)
             
     def onEditLabels(self, event):
@@ -416,5 +419,7 @@
                 colour = dial.getColor()
                 if len(newlabel) > 0:
+                    # update Label
                     selected_plot.label = newlabel
+                    self.graph.title(newlabel)
                     self.title_label = selected_plot.label
                     self.title_font = font
@@ -433,4 +438,11 @@
                     raise
         dial.Destroy()
+        
+        # Update Graph menu and help string 
+        if self.title_label != None:     
+            pos = self.parent._window_menu.FindItem(self.window_caption)
+            helpString = 'Show/Hide Graph: '
+            helpString += (' ' + self.title_label +';')
+            self.parent._window_menu.SetHelpString(pos, helpString)
 
         
Index: sansguiframe/src/sans/guiframe/local_perspectives/plotting/plotting.py
===================================================================
--- sansguiframe/src/sans/guiframe/local_perspectives/plotting/plotting.py	(revision 846c72473aa0c00f2adf4a9fdfb3886cc51b0506)
+++ sansguiframe/src/sans/guiframe/local_perspectives/plotting/plotting.py	(revision 53cf669565d119071be47e3aea06357a6e6b9fc9)
@@ -158,12 +158,4 @@
             if pos != -1:
                 self.menu.Delete(DEFAULT_MENU_ITEM_ID)
-           
-        self.menu.AppendCheckItem(event_id, new_panel.window_caption, 
-                         "Show %s plot panel" % new_panel.window_caption)
-        self.menu.Check(event_id, IS_WIN)
-        wx.EVT_MENU(self.parent, event_id, self._on_check_menu)
-
-        wx.EVT_SHOW(new_panel, self._on_close_panel)
-        
         # Set UID to allow us to reference the panel later
         new_panel.uid = event_id
@@ -172,4 +164,15 @@
         self.plot_panels[new_panel.group_id] = new_panel
         
+        # Set Graph menu and help string        
+        helpString = 'Show/Hide Graph: '
+        for plot in  new_panel.plots.itervalues():
+            helpString += (' ' + plot.label + ';')
+        self.menu.AppendCheckItem(event_id, new_panel.window_caption, 
+                                  helpString)
+        self.menu.Check(event_id, IS_WIN)
+        wx.EVT_MENU(self.parent, event_id, self._on_check_menu)
+
+        wx.EVT_SHOW(new_panel, self._on_close_panel)
+         
         
     def create_1d_panel(self, data, group_id):
@@ -282,5 +285,5 @@
         title = None
         if hasattr(event, 'title'):
-            title = event.title
+            title = 'Graph'#event.title
                 
         data = event.plot
