* src/SourceView.py: Enable popup menu on right-click.
* src/PlaceView.py: Likewise. * src/MediaView.py: Likewise. svn: r2269
This commit is contained in:
parent
7bec3e9e1a
commit
f5933f9366
@ -1,3 +1,8 @@
|
||||
2003-10-18 Alex Roitman <shura@alex.neuro.umn.edu>
|
||||
* src/SourceView.py: Enable popup menu on right-click.
|
||||
* src/PlaceView.py: Likewise.
|
||||
* src/MediaView.py: Likewise.
|
||||
|
||||
2003-10-17 Don Allingham <dallingham@users.sourceforge.net>
|
||||
* src/RelLib.py: Add a "sortbynames" to presort keys before adding to
|
||||
the tables
|
||||
|
@ -18,6 +18,8 @@
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# standard python modules
|
||||
@ -168,28 +170,51 @@ class MediaView:
|
||||
self.mdetails.set_text(Utils.get_detail_text(mobj,0))
|
||||
|
||||
def on_button_press_event(self,obj,event):
|
||||
store,iter = self.selection.get_selected()
|
||||
if not iter:
|
||||
return
|
||||
id = store.get_value(iter,1)
|
||||
|
||||
object = self.db.findObjectNoMap(id)
|
||||
if event.type == gtk.gdk._2BUTTON_PRESS and event.button == 1:
|
||||
ImageSelect.GlobalMediaProperties(self.db,object,self.load_media)
|
||||
self.on_edit_clicked(obj)
|
||||
return 1
|
||||
elif event.button == 3:
|
||||
menu = gtk.Menu()
|
||||
menu.set_title(_("Media Object"))
|
||||
self.build_context_menu()
|
||||
return 1
|
||||
return 0
|
||||
|
||||
def build_context_menu(self):
|
||||
menu = gtk.Menu()
|
||||
menu.set_title(_("Media Object"))
|
||||
|
||||
store,iter = self.selection.get_selected()
|
||||
if iter:
|
||||
id = store.get_value(iter,1)
|
||||
object = self.db.findObjectNoMap(id)
|
||||
self.obj = object
|
||||
Utils.add_menuitem(menu,_("View in the default viewer"),None,self.popup_view_photo)
|
||||
if object.getMimeType()[0:5] == "image":
|
||||
Utils.add_menuitem(menu,_("Edit with the GIMP"),\
|
||||
None,self.popup_edit_photo)
|
||||
Utils.add_menuitem(menu,_("Edit Object Properties"),None,
|
||||
self.popup_change_description)
|
||||
if object.getLocal() == 0:
|
||||
Utils.add_menuitem(menu,_("Convert to local copy"),None,
|
||||
self.popup_convert_to_private)
|
||||
menu.popup(None,None,None,0,0)
|
||||
item = gtk.MenuItem()
|
||||
item.show()
|
||||
menu.append(item)
|
||||
sel_sensitivity = 1
|
||||
else:
|
||||
sel_sensitivity = 0
|
||||
|
||||
entries = [
|
||||
(gtk.STOCK_ADD, self.on_add_clicked,1),
|
||||
(gtk.STOCK_REMOVE, self.on_delete_clicked,sel_sensitivity),
|
||||
(_("Edit properties"), self.on_edit_clicked,sel_sensitivity),
|
||||
]
|
||||
|
||||
for stock_id,callback,sensitivity in entries:
|
||||
item = gtk.ImageMenuItem(stock_id)
|
||||
if callback:
|
||||
item.connect("activate",callback)
|
||||
item.set_sensitive(sensitivity)
|
||||
item.show()
|
||||
menu.append(item)
|
||||
menu.popup(None,None,None,0,0)
|
||||
|
||||
def popup_view_photo(self, obj):
|
||||
Utils.view_photo(self.obj)
|
||||
|
@ -18,6 +18,8 @@
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
"""
|
||||
Handles the place view for GRAMPS.
|
||||
"""
|
||||
@ -96,15 +98,6 @@ class PlaceView:
|
||||
self.selection = self.list.get_selection()
|
||||
self.list.connect('button-press-event',self.button_press)
|
||||
|
||||
def button_press(self,obj,event):
|
||||
if event.type == gtk.gdk._2BUTTON_PRESS and event.button == 1:
|
||||
store,iter = self.selection.get_selected()
|
||||
id = store.get_value(iter,1)
|
||||
source = self.db.getPlace(id)
|
||||
EditPlace.EditPlace(self, place, self.update_display)
|
||||
return 1
|
||||
return 0
|
||||
|
||||
def change_db(self,db):
|
||||
self.db = db
|
||||
|
||||
@ -162,8 +155,37 @@ class PlaceView:
|
||||
if mlist:
|
||||
EditPlace.EditPlace(self,mlist[0],self.update_display)
|
||||
return 1
|
||||
elif event.type == gtk.gdk.BUTTON_PRESS and event.button == 3:
|
||||
self.build_context_menu()
|
||||
return 1
|
||||
return 0
|
||||
|
||||
def build_context_menu(self):
|
||||
"""Builds the menu with editing operations on the place's list"""
|
||||
|
||||
mlist = []
|
||||
self.selection.selected_foreach(self.blist,mlist)
|
||||
if mlist:
|
||||
sel_sensitivity = 1
|
||||
else:
|
||||
sel_sensitivity = 0
|
||||
entries = [
|
||||
(gtk.STOCK_ADD, self.on_add_place_clicked,1),
|
||||
(gtk.STOCK_REMOVE, self.on_delete_clicked,sel_sensitivity),
|
||||
(_("Edit"), self.on_edit_clicked,sel_sensitivity),
|
||||
]
|
||||
|
||||
menu = gtk.Menu()
|
||||
menu.set_title(_('Source Menu'))
|
||||
for stock_id,callback,sensitivity in entries:
|
||||
item = gtk.ImageMenuItem(stock_id)
|
||||
if callback:
|
||||
item.connect("activate",callback)
|
||||
item.set_sensitive(sensitivity)
|
||||
item.show()
|
||||
menu.append(item)
|
||||
menu.popup(None,None,None,0,0)
|
||||
|
||||
def new_place_after_edit(self,place):
|
||||
#self.db.addPlace(place)
|
||||
self.update(0)
|
||||
|
@ -18,6 +18,8 @@
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
|
||||
# $Id$
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
# standard python modules
|
||||
@ -120,8 +122,36 @@ class SourceView:
|
||||
source = self.db.getSource(id)
|
||||
EditSource.EditSource(source,self.db,self.topWindow,self.update_display)
|
||||
return 1
|
||||
elif event.type == gtk.gdk.BUTTON_PRESS and event.button == 3:
|
||||
self.build_context_menu()
|
||||
return 1
|
||||
return 0
|
||||
|
||||
def build_context_menu(self):
|
||||
"""Builds the menu with editing operations on the source's list"""
|
||||
|
||||
store,iter = self.selection.get_selected()
|
||||
if iter:
|
||||
sel_sensitivity = 1
|
||||
else:
|
||||
sel_sensitivity = 0
|
||||
entries = [
|
||||
(gtk.STOCK_ADD, self.on_add_clicked,1),
|
||||
(gtk.STOCK_REMOVE, self.on_delete_clicked,sel_sensitivity),
|
||||
(_("Edit"), self.on_edit_clicked,sel_sensitivity),
|
||||
]
|
||||
|
||||
menu = gtk.Menu()
|
||||
menu.set_title(_('Source Menu'))
|
||||
for stock_id,callback,sensitivity in entries:
|
||||
item = gtk.ImageMenuItem(stock_id)
|
||||
if callback:
|
||||
item.connect("activate",callback)
|
||||
item.set_sensitive(sensitivity)
|
||||
item.show()
|
||||
menu.append(item)
|
||||
menu.popup(None,None,None,0,0)
|
||||
|
||||
def on_add_clicked(self,obj):
|
||||
EditSource.EditSource(RelLib.Source(),self.db,self.topWindow,self.new_after_edit)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user