16 |
|
|
17 |
class ModelView: |
class ModelView: |
18 |
def __init__(self,browser,glade): |
def __init__(self,browser,glade): |
19 |
self.browser = browser # the parent object: the entire ASCEND browser |
self.browser = browser # the parent object: the entire ASCEND browser |
20 |
|
|
21 |
|
self.notes = browser.library.getAnnotationDatabase() |
22 |
|
|
23 |
self.modelview = glade.get_widget("browserview") |
self.modelview = glade.get_widget("browserview") |
24 |
|
|
311 |
# CONTEXT MENU |
# CONTEXT MENU |
312 |
|
|
313 |
def on_treeview_event(self,widget,event): |
def on_treeview_event(self,widget,event): |
314 |
_contextmenu = False; |
|
315 |
|
_path = None |
316 |
|
_contextmenu = False |
317 |
if event.type==gtk.gdk.KEY_PRESS: |
if event.type==gtk.gdk.KEY_PRESS: |
318 |
_keyval = gtk.gdk.keyval_name(event.keyval) |
_keyval = gtk.gdk.keyval_name(event.keyval) |
319 |
_path, _col = self.modelview.get_cursor() |
_path, _col = self.modelview.get_cursor() |
320 |
if _keyval=='Menu': |
if _keyval=='Menu': |
321 |
_contextmenu = True |
_contextmenu = True |
322 |
_button = 3; |
_button = 3 |
323 |
elif _keyval == 'F2': |
elif _keyval == 'F2': |
324 |
print "F2 pressed" |
print "F2 pressed" |
325 |
self.modelview.set_cursor(_path,self.tvcolumns[2],1) |
self.modelview.set_cursor(_path,self.tvcolumns[2],1) |
326 |
|
|
327 |
return |
return |
328 |
elif event.type==gtk.gdk.BUTTON_PRESS: |
elif event.type==gtk.gdk.BUTTON_PRESS: |
329 |
if event.button == 3: |
_x = int(event.x) |
330 |
_contextmenu = True |
_y = int(event.y) |
331 |
_x = int(event.x) |
_button = event.button |
332 |
_y = int(event.y) |
_pthinfo = self.modelview.get_path_at_pos(_x, _y) |
333 |
_button = event.button |
if _pthinfo is not None: |
|
_pthinfo = self.modelview.get_path_at_pos(_x, _y) |
|
|
if _pthinfo == None: |
|
|
return |
|
334 |
_path, _col, _cellx, _celly = _pthinfo |
_path, _col, _cellx, _celly = _pthinfo |
335 |
|
if event.button == 3: |
336 |
|
_contextmenu = True |
337 |
|
|
338 |
|
if _path: |
339 |
|
_name,_instance = self.otank[_path] |
340 |
|
# set the statusbar |
341 |
|
nn = self.notes.getNotes(self.sim.getModel().getType(),ascpy.SymChar("inline"),_name) |
342 |
|
for n in nn: |
343 |
|
print "%s: (%s) %s" % (n.getId(),str(n.getLanguage()),n.getText()) |
344 |
|
|
345 |
if not _contextmenu: |
if not _contextmenu: |
346 |
#print "NOT DOING ANYTHING ABOUT %s" % gtk.gdk.keyval_name(event.keyval) |
#print "NOT DOING ANYTHING ABOUT %s" % gtk.gdk.keyval_name(event.keyval) |
348 |
|
|
349 |
_canpop = False; |
_canpop = False; |
350 |
# self.browser.reporter.reportError("Right click on %s" % self.otank[_path][0]) |
# self.browser.reporter.reportError("Right click on %s" % self.otank[_path][0]) |
|
_instance = self.otank[_path][1] |
|
351 |
|
|
352 |
self.unitsmenuitem.set_sensitive(False) |
self.unitsmenuitem.set_sensitive(False) |
353 |
self.fixmenuitem.set_sensitive(False) |
self.fixmenuitem.set_sensitive(False) |