* src/plugins/SimpleBookTitle.py: Add functionality to "From file".
* src/AddMedia.py: Make it a modal dialog. * src/MediaView.py: Call AddMedia as modal dialog. * src/imagesel.glade: Change responses for dialog buttons. svn: r2112
This commit is contained in:
parent
791dc35a50
commit
9132d47c5c
@ -1,3 +1,9 @@
|
|||||||
|
2003-09-10 Alex Roitman <shura@alex.neuro.umn.edu>
|
||||||
|
* src/plugins/SimpleBookTitle.py: Add functionality to "From file".
|
||||||
|
* src/AddMedia.py: Make it a modal dialog.
|
||||||
|
* src/MediaView.py: Call AddMedia as modal dialog.
|
||||||
|
* src/imagesel.glade: Change responses for dialog buttons.
|
||||||
|
|
||||||
2003-09-09 Alex Roitman <shura@alex.neuro.umn.edu>
|
2003-09-09 Alex Roitman <shura@alex.neuro.umn.edu>
|
||||||
* src/plugins/SimpleBookTitle.py
|
* src/plugins/SimpleBookTitle.py
|
||||||
(SimpleBookTitleDialog.add_user_options): Add a tab for an image,
|
(SimpleBookTitleDialog.add_user_options): Add a tab for an image,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# Gramps - a GTK+/GNOME based genealogy program
|
# Gramps - a GTK+/GNOME based genealogy program
|
||||||
#
|
#
|
||||||
# Copyright (C) 2000 Donald N. Allingham
|
# Copyright (C) 2000-2003 Donald N. Allingham
|
||||||
#
|
#
|
||||||
# This program is free software; you can redistribute it and/or modify
|
# This program is free software; you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU General Public License as published by
|
# it under the terms of the GNU General Public License as published by
|
||||||
@ -66,7 +66,7 @@ class AddMediaObject:
|
|||||||
a media object from the file system, while providing a description.
|
a media object from the file system, while providing a description.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self,db,update):
|
def __init__(self,db,update=None):
|
||||||
"""
|
"""
|
||||||
Creates and displays the dialog box
|
Creates and displays the dialog box
|
||||||
|
|
||||||
@ -81,19 +81,18 @@ class AddMediaObject:
|
|||||||
self.file_text = self.glade.get_widget("fname")
|
self.file_text = self.glade.get_widget("fname")
|
||||||
self.update = update
|
self.update = update
|
||||||
self.temp_name = ""
|
self.temp_name = ""
|
||||||
|
self.object = None
|
||||||
|
|
||||||
Utils.set_titles(self.window,self.glade.get_widget('title'),
|
Utils.set_titles(self.window,self.glade.get_widget('title'),
|
||||||
_('Select a media object'))
|
_('Select a media object'))
|
||||||
|
|
||||||
self.glade.signal_autoconnect({
|
self.glade.signal_autoconnect({
|
||||||
"on_savephoto_clicked" : self.on_savephoto_clicked,
|
|
||||||
"on_name_changed" : self.on_name_changed,
|
"on_name_changed" : self.on_name_changed,
|
||||||
"destroy_passed_object" : Utils.destroy_passed_object
|
|
||||||
})
|
})
|
||||||
|
|
||||||
self.window.show()
|
self.window.show()
|
||||||
|
|
||||||
def on_savephoto_clicked(self,obj):
|
def on_savephoto_clicked(self):
|
||||||
"""
|
"""
|
||||||
Callback function called with the save button is pressed.
|
Callback function called with the save button is pressed.
|
||||||
A new media object is created, and added to the database.
|
A new media object is created, and added to the database.
|
||||||
@ -126,8 +125,9 @@ class AddMediaObject:
|
|||||||
mobj.setPath(name)
|
mobj.setPath(name)
|
||||||
|
|
||||||
Utils.modified()
|
Utils.modified()
|
||||||
self.update()
|
if self.update:
|
||||||
Utils.destroy_passed_object(obj)
|
self.update()
|
||||||
|
self.object = mobj
|
||||||
|
|
||||||
def on_name_changed(self,obj):
|
def on_name_changed(self,obj):
|
||||||
"""
|
"""
|
||||||
@ -152,3 +152,14 @@ class AddMediaObject:
|
|||||||
else:
|
else:
|
||||||
image = gtk.gdk.pixbuf_new_from_file(Utils.find_icon(type))
|
image = gtk.gdk.pixbuf_new_from_file(Utils.find_icon(type))
|
||||||
self.image.set_from_pixbuf(image)
|
self.image.set_from_pixbuf(image)
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
val = self.window.run()
|
||||||
|
|
||||||
|
if val == gtk.RESPONSE_OK:
|
||||||
|
self.on_savephoto_clicked()
|
||||||
|
self.window.destroy()
|
||||||
|
return self.object
|
||||||
|
else:
|
||||||
|
self.window.destroy()
|
||||||
|
return None
|
||||||
|
@ -233,7 +233,8 @@ class MediaView:
|
|||||||
def on_add_clicked(self,obj):
|
def on_add_clicked(self,obj):
|
||||||
"""Add a new media object to the media list"""
|
"""Add a new media object to the media list"""
|
||||||
import AddMedia
|
import AddMedia
|
||||||
AddMedia.AddMediaObject(self.db,self.load_media)
|
am = AddMedia.AddMediaObject(self.db,self.load_media)
|
||||||
|
am.run()
|
||||||
|
|
||||||
def on_edit_clicked(self,obj):
|
def on_edit_clicked(self,obj):
|
||||||
"""Edit the properties of an existing media object in the media list"""
|
"""Edit the properties of an existing media object in the media list"""
|
||||||
|
@ -35,7 +35,7 @@
|
|||||||
<property name="label">gtk-cancel</property>
|
<property name="label">gtk-cancel</property>
|
||||||
<property name="use_stock">True</property>
|
<property name="use_stock">True</property>
|
||||||
<property name="relief">GTK_RELIEF_NORMAL</property>
|
<property name="relief">GTK_RELIEF_NORMAL</property>
|
||||||
<property name="response_id">0</property>
|
<property name="response_id">-6</property>
|
||||||
<signal name="clicked" handler="destroy_passed_object" object="imageSelect"/>
|
<signal name="clicked" handler="destroy_passed_object" object="imageSelect"/>
|
||||||
</widget>
|
</widget>
|
||||||
</child>
|
</child>
|
||||||
@ -49,7 +49,7 @@
|
|||||||
<property name="label">gtk-ok</property>
|
<property name="label">gtk-ok</property>
|
||||||
<property name="use_stock">True</property>
|
<property name="use_stock">True</property>
|
||||||
<property name="relief">GTK_RELIEF_NORMAL</property>
|
<property name="relief">GTK_RELIEF_NORMAL</property>
|
||||||
<property name="response_id">0</property>
|
<property name="response_id">-5</property>
|
||||||
<signal name="clicked" handler="on_savephoto_clicked" object="imageSelect"/>
|
<signal name="clicked" handler="on_savephoto_clicked" object="imageSelect"/>
|
||||||
</widget>
|
</widget>
|
||||||
</child>
|
</child>
|
||||||
|
@ -38,6 +38,7 @@ from QuestionDialog import ErrorDialog
|
|||||||
from gettext import gettext as _
|
from gettext import gettext as _
|
||||||
import SelectObject
|
import SelectObject
|
||||||
import Utils
|
import Utils
|
||||||
|
import AddMedia
|
||||||
|
|
||||||
import gtk
|
import gtk
|
||||||
import gnome
|
import gnome
|
||||||
@ -289,7 +290,23 @@ class SimpleBookTitleDialog(Report.BareReportDialog):
|
|||||||
self.remove_obj_button.set_sensitive(gtk.TRUE)
|
self.remove_obj_button.set_sensitive(gtk.TRUE)
|
||||||
|
|
||||||
def select_file(self, obj):
|
def select_file(self, obj):
|
||||||
pass
|
a_o = AddMedia.AddMediaObject(self.db)
|
||||||
|
object = a_o.run()
|
||||||
|
if object:
|
||||||
|
self.object_id = object.getId()
|
||||||
|
else:
|
||||||
|
return
|
||||||
|
self.obj_title.set_text(object.getDescription())
|
||||||
|
the_type = Utils.get_mime_description(object.getMimeType())
|
||||||
|
path = object.getPath()
|
||||||
|
thumb_path = Utils.thumb_path(self.db.getSavePath(),object)
|
||||||
|
pexists = os.path.exists(path)
|
||||||
|
if pexists and os.path.exists(thumb_path):
|
||||||
|
self.preview.set_from_pixbuf(gtk.gdk.pixbuf_new_from_file(thumb_path))
|
||||||
|
else:
|
||||||
|
icon_image = gtk.gdk.pixbuf_new_from_file(Utils.find_icon(the_type))
|
||||||
|
self.preview.set_from_pixbuf(icon_image)
|
||||||
|
self.remove_obj_button.set_sensitive(gtk.TRUE)
|
||||||
|
|
||||||
def on_ok_clicked(self, obj):
|
def on_ok_clicked(self, obj):
|
||||||
"""The user is satisfied with the dialog choices. Parse all options
|
"""The user is satisfied with the dialog choices. Parse all options
|
||||||
|
Loading…
Reference in New Issue
Block a user