/[ascend]/branches/adrian/pygtk/canvas/contextmenutool.py
ViewVC logotype

Diff of /branches/adrian/pygtk/canvas/contextmenutool.py

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

revision 2890 by adrian, Wed Apr 1 10:57:31 2015 UTC revision 2891 by adrian, Fri Apr 10 19:32:37 2015 UTC
# Line 1  Line 1 
1  import gaphas  import gaphas
2  from gaphas.tool import Tool  from gaphas.tool import Tool
3  import pygtk  import gi
4  import math  import math
5    
6  pygtk.require('2.0')  gi.require_version('Gtk', '3.0')
7  import gtk  from gi.repository import Gtk
8  import blockinstance  import blockinstance
9  import blockproperties  import blockproperties
10  import canvasproperties  import canvasproperties
# Line 30  class ContextMenuTool(Tool): Line 30  class ContextMenuTool(Tool):
30              context.ungrab(self.view.tool)              context.ungrab(self.view.tool)
31              return False              return False
32    
33          menu = gtk.Menu()          menu = Gtk.Menu()
34          menu.connect("deactivate",self.deactivate,context)          menu.connect("deactivate",self.deactivate,context)
35          '''          '''
36          menublockstreams = gtk.MenuItem("_Streams")          menublockstreams = Gtk.MenuItem("_Streams")
37          menublockstreams.connect("activate",self.setstream, window, context, context.view.hovered_item)          menublockstreams.connect("activate",self.setstream, window, context, context.view.hovered_item)
38          menu.add(menublockstreams)          menu.add(menublockstreams)
39          '''          '''
40          menurename = gtk.MenuItem("Re_name",True)          menurename = Gtk.MenuItem("Re_name",True)
41          window = context.view.parent.parent.parent.parent.parent          window = context.view.parent.parent.parent.parent.parent
42          menurename.connect("activate",self.rename,context.view.hovered_item,window)          menurename.connect("activate",self.rename,context.view.hovered_item,window)
43          menu.add(menurename)          menu.add(menurename)
44          menudefault.set_sensitive(False)          menudefault.set_sensitive(False)
45          '''menublockstreams.set_sensitive(False)'''          '''menublockstreams.set_sensitive(False)'''
46    
47          menudelete = gtk.MenuItem("_Delete",True)          menudelete = Gtk.MenuItem("_Delete",True)
48          menudelete.connect("activate",self.delete,context.view.hovered_item,context.view)          menudelete.connect("activate",self.delete,context.view.hovered_item,context.view)
49          menu.add(menudelete)          menu.add(menudelete)
50    
51          menu.add(gtk.SeparatorMenuItem())          menu.add(Gtk.SeparatorMenuItem())
52    
53          menurotate_clock = gtk.MenuItem("_Rotate_clockwise",True)          menurotate_clock = Gtk.MenuItem("_Rotate_clockwise",True)
54          window = context.view.parent.parent.parent.parent.parent          window = context.view.parent.parent.parent.parent.parent
55          menurotate_clock.connect("activate",self.blockrotate_clock,context.view.hovered_item,window)          menurotate_clock.connect("activate",self.blockrotate_clock,context.view.hovered_item,window)
56          menu.add(menurotate_clock)          menu.add(menurotate_clock)
57    
58          menurotate_anti = gtk.MenuItem("_Rotate_anti_clockwise",True)          menurotate_anti = Gtk.MenuItem("_Rotate_anti_clockwise",True)
59          window = context.view.parent.parent.parent.parent.parent          window = context.view.parent.parent.parent.parent.parent
60          menurotate_anti.connect("activate",self.blockrotate_anti,context.view.hovered_item,window)          menurotate_anti.connect("activate",self.blockrotate_anti,context.view.hovered_item,window)
61          menu.add(menurotate_anti)          menu.add(menurotate_anti)
62    
63          menuflip = gtk.MenuItem("Flip",True)          menuflip = Gtk.MenuItem("Flip",True)
64          window = context.view.parent.parent.parent.parent.parent          window = context.view.parent.parent.parent.parent.parent
65          menuflip.connect("activate",self.blockflip,context.view.hovered_item,window)          menuflip.connect("activate",self.blockflip,context.view.hovered_item,window)
66          menu.add(menuflip)          menu.add(menuflip)
67    
68          menu.add(gtk.SeparatorMenuItem())          menu.add(Gtk.SeparatorMenuItem())
69    
70          menublockproperties = gtk.MenuItem("_Properties")          menublockproperties = Gtk.MenuItem("_Properties")
71          menublockproperties.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 0)          menublockproperties.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 0)
72          menu.add(menublockproperties)          menu.add(menublockproperties)
73    
74          menublockparams = gtk.MenuItem("_Parameters")          menublockparams = Gtk.MenuItem("_Parameters")
75          menublockparams.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 1)          menublockparams.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 1)
76          menu.add(menublockparams)          menu.add(menublockparams)
77    
78          menudefault = gtk.MenuItem("_Set Default Values")          menudefault = Gtk.MenuItem("_Set Default Values")
79          menudefault.connect("activate",self.defaultvalues,window ,context,context.view.hovered_item)          menudefault.connect("activate",self.defaultvalues,window ,context,context.view.hovered_item)
80          menu.add(menudefault)          menu.add(menudefault)
81    
82          #menublockmethod = gtk.MenuItem("_Custom Method(s)")          #menublockmethod = Gtk.MenuItem("_Custom Method(s)")
83          #menublockmethod.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 2)          #menublockmethod.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 2)
84          #menu.add(menublockmethod)          #menu.add(menublockmethod)
85    
86          menublockinstance = gtk.MenuItem("_Instance")          menublockinstance = Gtk.MenuItem("_Instance")
87          menublockinstance.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 3)          menublockinstance.connect("activate",self.blockproperties, window, context, context.view.hovered_item, 3)
88          menu.add(menublockinstance)          menu.add(menublockinstance)
89          '''          '''
90          menublockstreams = gtk.MenuItem("_Streams")          menublockstreams = Gtk.MenuItem("_Streams")
91          menublockstreams.connect("activate",self.setstream, window, context, context.view.hovered_item)          menublockstreams.connect("activate",self.setstream, window, context, context.view.hovered_item)
92          menu.add(menublockstreams)          menu.add(menublockstreams)
93              '''              '''
94          #menuinfo = gtk.MenuItem("_Info",True)          #menuinfo = Gtk.MenuItem("_Info",True)
95          #menuinfo.connect("activate",self.info,window,context,context.view.hovered_item)          #menuinfo.connect("activate",self.info,window,context,context.view.hovered_item)
96          #menu.add(menuinfo)          #menu.add(menuinfo)
97    
98          menu.add(gtk.SeparatorMenuItem())          menu.add(Gtk.SeparatorMenuItem())
99    
100          menucanvas = gtk.MenuItem("_Canvas Properties",True)          menucanvas = Gtk.MenuItem("_Canvas Properties",True)
101          menucanvas.connect("activate",self.canvasproperties,window ,context)          menucanvas.connect("activate",self.canvasproperties,window ,context)
102          menu.add(menucanvas)          menu.add(menucanvas)
103    
# Line 150  class ContextMenuTool(Tool): Line 150  class ContextMenuTool(Tool):
150      def rename(self,widget,item,window):      def rename(self,widget,item,window):
151          if hasattr(item,'blockinstance'):          if hasattr(item,'blockinstance'):
152              bi = item.blockinstance              bi = item.blockinstance
153              dia = gtk.Dialog("Rename %s '%s'" % (bi.blocktype.type.getName(),bi.name), window,gtk.DIALOG_MODAL | gtk.DIALOG_DESTROY_WITH_PARENT,(gtk.STOCK_CANCEL, 0, gtk.STOCK_OK, gtk.RESPONSE_OK))              dia = Gtk.Dialog("Rename %s '%s'" % (bi.blocktype.type.getName(),bi.name), window,Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT,(Gtk.STOCK_CANCEL, 0, Gtk.STOCK_OK, Gtk.ResponseType.OK))
154              dia.set_default_response(gtk.RESPONSE_OK)              dia.set_default_response(Gtk.ResponseType.OK)
155              ent = gtk.Entry()              ent = Gtk.Entry()
156              ent.set_text(bi.name)              ent.set_text(bi.name)
157              def key_press(ent,event):              def key_press(ent,event):
158                  key = gtk.gdk.keyval_name(event.keyval)                  key = Gdk.keyval_name(event.keyval)
159                  if key == 'Return':                  if key == 'Return':
160                      dia.response(gtk.RESPONSE_OK)                      dia.response(Gtk.ResponseType.OK)
161                      return True                      return True
162                  return False                  return False
163              ent.connect("key-press-event",key_press)              ent.connect("key-press-event",key_press)
164              dia.vbox.add(ent)              dia.vbox.add(ent)
165              dia.show_all()              dia.show_all()
166              res = dia.run()              res = dia.run()
167              if res == gtk.RESPONSE_OK:              if res == Gtk.ResponseType.OK:
168                  bi.name = ent.get_text()                  bi.name = ent.get_text()
169              dia.destroy()              dia.destroy()
170    

Legend:
Removed from v.2890  
changed lines
  Added in v.2891

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