/[ascend]/trunk/pygtk/interface/gtkbrowser.py
ViewVC logotype

Diff of /trunk/pygtk/interface/gtkbrowser.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 180 by johnpye, Thu Jan 12 03:20:58 2006 UTC revision 181 by johnpye, Thu Jan 12 05:43:41 2006 UTC
# Line 126  class Browser: Line 126  class Browser:
126          # set up the context menu for fixing/freeing vars          # set up the context menu for fixing/freeing vars
127    
128          self.treecontext = gtk.Menu();          self.treecontext = gtk.Menu();
129          self.fixmenuitem = gtk.MenuItem("Fix");          self.fixmenuitem = gtk.ImageMenuItem("_Fix",True);
130          self.freemenuitem = gtk.MenuItem("Free");          _img = gtk.Image()
131          self.plotmenuitem = gtk.MenuItem("Plot");          _img.set_from_file('icons/locked.png')
132            self.fixmenuitem.set_image(_img)
133    
134            self.freemenuitem = gtk.ImageMenuItem("F_ree",True);
135            _img = gtk.Image()
136            _img.set_from_file('icons/unlocked.png')
137            self.freemenuitem.set_image(_img)
138    
139            self.plotmenuitem = gtk.ImageMenuItem("P_lot",True);
140            _img = gtk.Image()
141            _img.set_from_file('icons/plot.png')
142            self.plotmenuitem.set_image(_img)
143    
144            self.propsmenuitem = gtk.ImageMenuItem("_Properties",True);
145            _img = gtk.Image()
146            _img.set_from_file('icons/properties.png')
147            self.propsmenuitem.set_image(_img)
148    
149          self.fixmenuitem.show()          self.fixmenuitem.show()
150          self.freemenuitem.show()          self.freemenuitem.show()
151          self.plotmenuitem.show()          self.plotmenuitem.show()
152            self.propsmenuitem.show()
153          self.treecontext.append(self.fixmenuitem);          self.treecontext.append(self.fixmenuitem);
154          self.treecontext.append(self.freemenuitem);          self.treecontext.append(self.freemenuitem);
155            _sep = gtk.SeparatorMenuItem(); _sep.show()
156            self.treecontext.append(_sep);
157          self.treecontext.append(self.plotmenuitem);          self.treecontext.append(self.plotmenuitem);
158            _sep = gtk.SeparatorMenuItem(); _sep.show()
159            self.treecontext.append(_sep);
160            self.treecontext.append(self.propsmenuitem);
161          self.fixmenuitem.connect("activate",self.fix_activate)          self.fixmenuitem.connect("activate",self.fix_activate)
162          self.freemenuitem.connect("activate",self.free_activate)          self.freemenuitem.connect("activate",self.free_activate)
163          self.plotmenuitem.connect("activate",self.plot_activate)          self.plotmenuitem.connect("activate",self.plot_activate)
164            self.propsmenuitem.connect("activate",self.props_activate)
165          if not self.treecontext:          if not self.treecontext:
166              raise RuntimeError("Couldn't create browsercontext")              raise RuntimeError("Couldn't create browsercontext")
167          #--------------------          #--------------------
# Line 728  class Browser: Line 752  class Browser:
752                  if _instance.getType().isRefinedSolverVar():                  if _instance.getType().isRefinedSolverVar():
753                      _canpop = True;                      _canpop = True;
754                      if _instance.isFixed():                      if _instance.isFixed():
755                          self.fixmenuitem.hide()                          self.fixmenuitem.set_sensitive(False)
756                          self.freemenuitem.show()                          self.freemenuitem.set_sensitive(True)
757                      else:                      else:
758                          self.fixmenuitem.show()                          self.fixmenuitem.set_sensitive(True)
759                          self.freemenuitem.hide()                          self.freemenuitem.set_sensitive(False)
760                  else:                  else:
761                      self.fixmenuitem.hide()                      self.fixmenuitem.set_sensitive(False)
762                      self.freemenuitem.hide()                      self.freemenuitem.set_sensitive(False)
763    
764                  if _instance.isPlottable():                  if _instance.isPlottable():
765                      self.reporter.reportNote("Instance IS plottable");                      self.plotmenuitem.set_sensitive(True)
                     self.plotmenuitem.show()  
766                      _canpop = True;                      _canpop = True;
767                  else:                  else:
768                      self.reporter.reportNote("Instance is not plottable");                      self.plotmenuitem.set_sensitive(False)
                     try:  
                         self.library.findType('plt_plot_integer')  
                         self.reporter.reportNote("Located plt_plot_integer via Library::findType")  
                     except RuntimeError, e:  
                         self.reporter.reportNote("In right-click... "+str(e))  
                         print "Library contains %d modules." % len(self.library.getModules())  
                         for _m in self.library.getModules():  
                             print "Module %s:", _m.getName()  
                             for _t in self.library.getModuleTypes(_m):  
                                 print "   %s", _t.getName()  
                           
                     self.plotmenuitem.hide()  
769    
770                  if _canpop:                  if _canpop:
771                      self.treeview.grab_focus()                      self.treeview.grab_focus()
772                      self.treeview.set_cursor( _path, _col, 0)                      self.treeview.set_cursor( _path, _col, 0)
773                      self.treecontext.popup( None, None, None, event.button, _time)                      self.treecontext.popup( None, None, None, event.button, _time)
774                      return 1                      return 1
                 else:  
                     self.reporter.reportNote("No right-click options available here");  
775              else:              else:
776                  self.reporter.reportError("Invalid selection for right-click")                  self.reporter.reportError("Invalid selection for right-click")
777    
# Line 809  class Browser: Line 818  class Browser:
818    
819          return 1          return 1
820    
821        def props_activate(self,widget):
822            self.reporter.reportWarning("props_activate not implemented")
823    
824                    
825  #   ---------------------------------  #   ---------------------------------

Legend:
Removed from v.180  
changed lines
  Added in v.181

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22