Merge branch 'maintenance/gramps42' of github.com:gramps-project/gramps into gramps42
This commit is contained in:
commit
a5074e9478
@ -147,7 +147,7 @@ class AddMediaObject(ManagedWindow):
|
||||
if self.file_text.get_filename() is None:
|
||||
msgstr = _("Import failed")
|
||||
msgstr2 = _("The filename supplied could not be found.")
|
||||
ErrorDialog(msgstr, msgstr2)
|
||||
ErrorDialog(msgstr, msgstr2, parent=self.window)
|
||||
return
|
||||
|
||||
filename = conv_to_unicode(self.file_text.get_filename())
|
||||
@ -158,7 +158,7 @@ class AddMediaObject(ManagedWindow):
|
||||
if not os.path.exists(pname):
|
||||
msgstr = _("Cannot import %s")
|
||||
msgstr2 = _("Directory specified in preferences: Base path for relative media paths: %s does not exist. Change preferences or do not use relative path when importing")
|
||||
ErrorDialog(msgstr % filename, msgstr2 % pname)
|
||||
ErrorDialog(msgstr % filename, msgstr2 % pname, parent=self.window)
|
||||
return
|
||||
filename = relative_path(filename, pname)
|
||||
|
||||
|
@ -137,7 +137,8 @@ class EditAttributeRoot(EditSecondary):
|
||||
from ..dialog import ErrorDialog
|
||||
ErrorDialog(
|
||||
_("Cannot save attribute"),
|
||||
_("The attribute type cannot be empty"))
|
||||
_("The attribute type cannot be empty"),
|
||||
parent=self.window)
|
||||
return
|
||||
if self.callback:
|
||||
self.callback(self.obj)
|
||||
|
@ -280,7 +280,8 @@ class EditCitation(EditPrimary):
|
||||
"derived. To create a citation, first select the "
|
||||
"required source, and then record the location of "
|
||||
"the information referenced within the source in the "
|
||||
"'Volume/Page' field."))
|
||||
"'Volume/Page' field."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -294,7 +295,7 @@ class EditCitation(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : gramps_id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -236,7 +236,8 @@ class EditEvent(EditPrimary):
|
||||
if self.object_is_empty():
|
||||
ErrorDialog(_("Cannot save event"),
|
||||
_("No data exists for this event. Please "
|
||||
"enter data or cancel the edit."))
|
||||
"enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -250,7 +251,7 @@ class EditEvent(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -258,7 +259,7 @@ class EditEvent(EditPrimary):
|
||||
if t.is_custom() and str(t) == '':
|
||||
ErrorDialog(
|
||||
_("Cannot save event"),
|
||||
_("The event type cannot be empty"))
|
||||
_("The event type cannot be empty"), parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -362,7 +362,8 @@ class EditFamily(EditPrimary):
|
||||
"are available when you create a new family. The "
|
||||
"remaining fields will become available after you "
|
||||
"attempt to select a parent."),
|
||||
'preferences.family-warn')
|
||||
'preferences.family-warn',
|
||||
parent=self.window)
|
||||
else:
|
||||
self.add_parent = False
|
||||
|
||||
@ -1049,8 +1050,9 @@ class EditFamily(EditPrimary):
|
||||
name = "%s [%s]" % (name_displayer.display(father),
|
||||
father.gramps_id)
|
||||
ErrorDialog(_("A father cannot be his own child"),
|
||||
_("%s is listed as both the father and child "
|
||||
"of the family.") % name)
|
||||
_("%s is listed as both the father and child "
|
||||
"of the family.") % name,
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
elif self.obj.get_mother_handle() in child_list:
|
||||
@ -1059,8 +1061,9 @@ class EditFamily(EditPrimary):
|
||||
name = "%s [%s]" % (name_displayer.display(mother),
|
||||
mother.gramps_id)
|
||||
ErrorDialog(_("A mother cannot be her own child"),
|
||||
_("%s is listed as both the mother and child "
|
||||
"of the family.") % name)
|
||||
_("%s is listed as both the mother and child "
|
||||
"of the family.") % name,
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -1068,7 +1071,8 @@ class EditFamily(EditPrimary):
|
||||
ErrorDialog(
|
||||
_("Cannot save family"),
|
||||
_("No data exists for this family. "
|
||||
"Please enter data or cancel the edit."))
|
||||
"Please enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -1080,7 +1084,7 @@ class EditFamily(EditPrimary):
|
||||
"enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id}
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -290,7 +290,7 @@ class EditMedia(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -304,7 +304,7 @@ class EditMedia(EditPrimary):
|
||||
"value '%(path)s'. This path does not exist!"
|
||||
" Please enter a different path") % {
|
||||
'path' : path }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -382,7 +382,8 @@ class EditName(EditSecondary):
|
||||
) % { 'surname' : surname,
|
||||
'group_name':group_as},
|
||||
_("Continue"),
|
||||
_("Return to Name Editor"))
|
||||
_("Return to Name Editor"),
|
||||
parent=self.window)
|
||||
val = q.run()
|
||||
if val:
|
||||
#delete the grouping link on database
|
||||
@ -414,7 +415,8 @@ class EditName(EditSecondary):
|
||||
) % { 'surname' : surname,
|
||||
'group_name':group_as},
|
||||
_("Group all"),
|
||||
_("Group this name only"))
|
||||
_("Group this name only"),
|
||||
parent=self.window)
|
||||
val = q.run()
|
||||
if val:
|
||||
if group_as == surname :
|
||||
|
@ -301,7 +301,8 @@ class EditNote(EditPrimary):
|
||||
if self.object_is_empty():
|
||||
ErrorDialog(_("Cannot save note"),
|
||||
_("No data exists for this note. Please "
|
||||
"enter data or cancel the edit."))
|
||||
"enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -313,7 +314,7 @@ class EditNote(EditPrimary):
|
||||
"enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -811,7 +811,7 @@ class EditPerson(EditPrimary):
|
||||
msg = _("Changing the gender caused problems "
|
||||
"with marriage information.\nPlease check "
|
||||
"the person's marriages.")
|
||||
ErrorDialog(msg2, msg)
|
||||
ErrorDialog(msg2, msg, parent=self.window)
|
||||
|
||||
def save(self, *obj):
|
||||
"""
|
||||
@ -821,7 +821,8 @@ class EditPerson(EditPrimary):
|
||||
if self.object_is_empty():
|
||||
ErrorDialog(_("Cannot save person"),
|
||||
_("No data exists for this person. Please "
|
||||
"enter data or cancel the edit."))
|
||||
"enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
# fix surname problems
|
||||
@ -849,7 +850,7 @@ class EditPerson(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -229,4 +229,5 @@ class EditPersonRef(EditSecondary):
|
||||
ErrorDialog(
|
||||
_('No person selected'),
|
||||
_('You must either select a person or Cancel '
|
||||
'the edit'))
|
||||
'the edit'),
|
||||
parent=self.window)
|
||||
|
@ -272,7 +272,7 @@ class EditPlace(EditPrimary):
|
||||
if self.obj.get_name().get_value().strip() == '':
|
||||
msg1 = _("Cannot save place. Name not entered.")
|
||||
msg2 = _("You must enter a name before saving.")
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -286,7 +286,7 @@ class EditPlace(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -87,7 +87,8 @@ class EditPlaceName(EditSecondary):
|
||||
def save(self, *obj):
|
||||
if not self.obj.get_value():
|
||||
ErrorDialog(_("Cannot save place name"),
|
||||
_("The place name cannot be empty"))
|
||||
_("The place name cannot be empty"),
|
||||
parent=self.window)
|
||||
return
|
||||
|
||||
if self.callback:
|
||||
|
@ -274,7 +274,7 @@ class EditPlaceRef(EditReference):
|
||||
if self.source.get_name().get_value().strip() == '':
|
||||
msg1 = _("Cannot save place. Name not entered.")
|
||||
msg2 = _("You must enter a name before saving.")
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -297,6 +297,6 @@ class EditReference(ManagedWindow, DbGUIElement):
|
||||
"different ID or leave blank to get the next "
|
||||
"available ID value.") % {
|
||||
'id' : new_id}
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
return True
|
||||
return False
|
||||
|
@ -167,7 +167,8 @@ class EditRepository(EditPrimary):
|
||||
if self.object_is_empty():
|
||||
ErrorDialog(_("Cannot save repository"),
|
||||
_("No data exists for this repository. Please "
|
||||
"enter data or cancel the edit."))
|
||||
"enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -181,7 +182,7 @@ class EditRepository(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -187,7 +187,8 @@ class EditSource(EditPrimary):
|
||||
if self.object_is_empty():
|
||||
ErrorDialog(_("Cannot save source"),
|
||||
_("No data exists for this source. Please "
|
||||
"enter data or cancel the edit."))
|
||||
"enter data or cancel the edit."),
|
||||
parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
@ -201,7 +202,7 @@ class EditSource(EditPrimary):
|
||||
"%(prim_object)s'. Please enter a different ID or leave "
|
||||
"blank to get the next available ID value.") % {
|
||||
'id' : id, 'prim_object' : name }
|
||||
ErrorDialog(msg1, msg2)
|
||||
ErrorDialog(msg1, msg2, parent=self.window)
|
||||
self.ok_button.set_sensitive(True)
|
||||
return
|
||||
|
||||
|
@ -136,7 +136,8 @@ class StyleListDisplay(object):
|
||||
self.sheetlist.save()
|
||||
except IOError as msg:
|
||||
from ...dialog import ErrorDialog
|
||||
ErrorDialog(_("Error saving stylesheet"), str(msg))
|
||||
ErrorDialog(_("Error saving stylesheet"),
|
||||
str(msg), parent=self.window)
|
||||
except:
|
||||
log.error("Failed to save stylesheet", exc_info=True)
|
||||
|
||||
|
@ -663,7 +663,7 @@ class ViewManager(CLIManager):
|
||||
"""
|
||||
Initialize the interface.
|
||||
"""
|
||||
self.views = get_available_views()
|
||||
self.views = get_available_views(self.uistate)
|
||||
defaults = views_to_show(self.views,
|
||||
config.get('preferences.use-last-view'))
|
||||
self.current_views = defaults[2]
|
||||
@ -764,7 +764,7 @@ class ViewManager(CLIManager):
|
||||
try:
|
||||
backup(self.dbstate.db)
|
||||
except DbException as msg:
|
||||
ErrorDialog(_("Error saving backup data"), msg)
|
||||
ErrorDialog(_("Error saving backup data"), msg, parent=self.uistate.window)
|
||||
self.uistate.set_busy_cursor(False)
|
||||
self.uistate.progress.hide()
|
||||
|
||||
@ -779,7 +779,8 @@ class ViewManager(CLIManager):
|
||||
_("Aborting changes will return the database to the state "
|
||||
"it was before you started this editing session."),
|
||||
_("Abort changes"),
|
||||
_("Cancel"))
|
||||
_("Cancel"),
|
||||
parent=self.uistate.window)
|
||||
|
||||
if dialog.run():
|
||||
self.dbstate.db.disable_signals()
|
||||
@ -791,7 +792,8 @@ class ViewManager(CLIManager):
|
||||
_("Cannot abandon session's changes"),
|
||||
_('Changes cannot be completely abandoned because the '
|
||||
'number of changes made in the session exceeded the '
|
||||
'limit.'))
|
||||
'limit.'),
|
||||
parent=self.uistate.window)
|
||||
|
||||
def __init_action_group(self, name, actions, sensitive=True, toggles=None):
|
||||
"""
|
||||
@ -1608,7 +1610,8 @@ def run_plugin(pdata, dbstate, uistate):
|
||||
'gramps_bugtracker_url' : URL_BUGHOME,
|
||||
'firstauthoremail': pdata.authors_email[0] if
|
||||
pdata.authors_email else '...',
|
||||
'error_msg': pmgr.get_fail_list()[-1][1][1]})
|
||||
'error_msg': pmgr.get_fail_list()[-1][1][1]},
|
||||
parent=uistate.window)
|
||||
return
|
||||
|
||||
if pdata.ptype == REPORT:
|
||||
@ -1633,7 +1636,7 @@ def make_plugin_callback(pdata, dbstate, uistate):
|
||||
"""
|
||||
return lambda x: run_plugin(pdata, dbstate, uistate)
|
||||
|
||||
def get_available_views():
|
||||
def get_available_views(uistate):
|
||||
"""
|
||||
Query the views and determine what views to show and in which order
|
||||
|
||||
@ -1664,7 +1667,8 @@ def get_available_views():
|
||||
'gramps_bugtracker_url' : URL_BUGHOME,
|
||||
'firstauthoremail': pdata.authors_email[0] if
|
||||
pdata.authors_email else '...',
|
||||
'error_msg': lasterror})
|
||||
'error_msg': lasterror},
|
||||
parent=uistate.window)
|
||||
continue
|
||||
viewclass = getattr(mod, pdata.viewclass)
|
||||
|
||||
|
@ -409,7 +409,8 @@ class CitationBookmarks(ListBookmarks) :
|
||||
"You are probably trying to bookmark a Source in the "
|
||||
"Citation Tree View. In this view, only Citations "
|
||||
"can be bookmarked. To bookmark a Source, switch to "
|
||||
"the Source View")
|
||||
"the Source View",
|
||||
parent=self.uistate.window)
|
||||
|
||||
def connect_signals(self):
|
||||
self.dbstate.db.connect('citation-delete', self.remove_handles)
|
||||
|
@ -447,7 +447,8 @@ class ListView(NavigationView):
|
||||
WarningDialog(
|
||||
_("Could Not Set a Bookmark"),
|
||||
_("A bookmark could not be set because "
|
||||
"nothing was selected."))
|
||||
"nothing was selected."),
|
||||
parent=self.uistate.window)
|
||||
|
||||
####################################################################
|
||||
#
|
||||
@ -541,7 +542,8 @@ class ListView(NavigationView):
|
||||
_("More than one item has been selected for deletion. "
|
||||
"Select the option indicating how to delete the items:"),
|
||||
_("Delete All"),
|
||||
_("Confirm Each Delete"))
|
||||
_("Confirm Each Delete"),
|
||||
parent=self.uistate.window)
|
||||
prompt = not q.run()
|
||||
|
||||
if not prompt:
|
||||
@ -563,7 +565,8 @@ class ListView(NavigationView):
|
||||
descr = object.get_gramps_id()
|
||||
self.uistate.set_busy_cursor(True)
|
||||
QuestionDialog(_('Delete %s?') % descr, msg,
|
||||
_('_Delete Item'), query.query_response)
|
||||
_('_Delete Item'), query.query_response,
|
||||
parent=self.uistate.window)
|
||||
self.uistate.set_busy_cursor(False)
|
||||
else:
|
||||
query.query_response()
|
||||
|
@ -254,7 +254,8 @@ class NavigationView(PageView):
|
||||
WarningDialog(
|
||||
_("Could Not Set a Bookmark"),
|
||||
_("A bookmark could not be set because "
|
||||
"no one was selected."))
|
||||
"no one was selected."),
|
||||
parent=self.uistate.window)
|
||||
|
||||
def edit_bookmarks(self, obj):
|
||||
"""
|
||||
@ -343,7 +344,7 @@ class NavigationView(PageView):
|
||||
"""
|
||||
A dialog to move to a Gramps ID entered by the user.
|
||||
"""
|
||||
dialog = Gtk.Dialog(_('Jump to by Gramps ID'))
|
||||
dialog = Gtk.Dialog(_('Jump to by Gramps ID'), parent=self.uistate.window)
|
||||
dialog.set_border_width(12)
|
||||
label = Gtk.Label(label='<span weight="bold" size="larger">%s</span>' %
|
||||
_('Jump to by Gramps ID'))
|
||||
|
@ -485,7 +485,9 @@ class OrganizeTagsDialog(object):
|
||||
_("The tag definition will be removed. "
|
||||
"The tag will be also removed from all objects in the database."),
|
||||
_("Yes"),
|
||||
_("No"))
|
||||
_("No"),
|
||||
parent=top)
|
||||
|
||||
prompt = yes_no.run()
|
||||
if prompt:
|
||||
|
||||
@ -571,7 +573,8 @@ class EditTag(object):
|
||||
if not self.tag.get_name():
|
||||
ErrorDialog(
|
||||
_("Cannot save tag"),
|
||||
_("The tag name cannot be empty"))
|
||||
_("The tag name cannot be empty"),
|
||||
parent=self.top)
|
||||
return
|
||||
|
||||
if not self.tag.get_handle():
|
||||
|
@ -296,7 +296,8 @@ class BasePersonView(ListView):
|
||||
QuestionDialog(msg1,
|
||||
msg2,
|
||||
_('_Delete Person'),
|
||||
self.delete_person_response)
|
||||
self.delete_person_response,
|
||||
parent=self.uistate.window)
|
||||
else:
|
||||
# Ask to delete; option to cancel, delete rest
|
||||
# This gets person to delete from parameter
|
||||
@ -304,7 +305,8 @@ class BasePersonView(ListView):
|
||||
self._message2_format,
|
||||
handles,
|
||||
self._lookup_person,
|
||||
yes_func=self.delete_person_response) # Yes
|
||||
yes_func=self.delete_person_response,
|
||||
parent=self.uistate.window) # Yes
|
||||
|
||||
def _message1_format(self, person):
|
||||
return _('Delete %s?') % (name_displayer.display(person) +
|
||||
@ -417,7 +419,8 @@ class BasePersonView(ListView):
|
||||
_("Cannot merge people"),
|
||||
_("Exactly two people must be selected to perform a merge. "
|
||||
"A second person can be selected by holding down the "
|
||||
"control key while clicking on the desired person."))
|
||||
"control key while clicking on the desired person."),
|
||||
parent=self.uistate.window)
|
||||
else:
|
||||
MergePerson(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -258,7 +258,7 @@ class PlaceBaseView(ListView):
|
||||
if not len(self.mapservicedata):
|
||||
msg = _("No map service is available.")
|
||||
msg2 = _("Check your installation.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
return
|
||||
|
||||
place_handles = self.selected_handles()
|
||||
@ -269,7 +269,7 @@ class PlaceBaseView(ListView):
|
||||
msg2 = _("You need to select a place to be able to view it"
|
||||
" on a map. Some Map Services might support multiple"
|
||||
" selections.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
return
|
||||
|
||||
#TODO: support for descriptions in some cases. For now, pass None
|
||||
@ -363,7 +363,7 @@ class PlaceBaseView(ListView):
|
||||
msg = _("Cannot delete place.")
|
||||
msg2 = _("This place is currently referenced by another place. "
|
||||
"First remove the places it contains.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
return
|
||||
self.remove_selected_objects()
|
||||
|
||||
@ -406,14 +406,14 @@ class PlaceBaseView(ListView):
|
||||
msg2 = _("Exactly two places must be selected to perform a merge. "
|
||||
"A second place can be selected by holding down the "
|
||||
"control key while clicking on the desired place.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
if (located_in(self.dbstate.db, mlist[0], mlist[1]) or
|
||||
located_in(self.dbstate.db, mlist[1], mlist[0])):
|
||||
msg = _("Cannot merge places.")
|
||||
msg2 = _("Merging these places would create a cycle in the "
|
||||
"place hierarchy.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergePlace(self.dbstate, self.uistate, mlist[0], mlist[1],
|
||||
self.merged)
|
||||
|
@ -313,7 +313,7 @@ class CitationListView(ListView):
|
||||
"merge. A second citation can be selected by holding "
|
||||
"down the control key while clicking on the desired "
|
||||
"citation.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
citation1 = self.dbstate.db.get_citation_from_handle(mlist[0])
|
||||
citation2 = self.dbstate.db.get_citation_from_handle(mlist[1])
|
||||
@ -324,7 +324,7 @@ class CitationListView(ListView):
|
||||
"source to perform a merge. If you want to merge "
|
||||
"these two citations, then you must merge the "
|
||||
"sources first.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeCitation(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -427,12 +427,13 @@ class CitationTreeView(ListView):
|
||||
except WindowActiveError:
|
||||
from gramps.gui.dialog import WarningDialog
|
||||
WarningDialog(_("Cannot share this reference"),
|
||||
self.__blocked_text())
|
||||
self.__blocked_text(),
|
||||
parent=self.uistate.window)
|
||||
else:
|
||||
msg = _("Cannot add citation.")
|
||||
msg2 = _("In order to add a citation to an existing source, "
|
||||
" you must select a source.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
#
|
||||
def remove(self, obj):
|
||||
self.remove_selected_objects()
|
||||
@ -482,7 +483,8 @@ class CitationTreeView(ListView):
|
||||
except WindowActiveError:
|
||||
from gramps.gui.dialog import WarningDialog
|
||||
WarningDialog(_("Cannot share this reference"),
|
||||
self.__blocked_text2())
|
||||
self.__blocked_text2(),
|
||||
parent=self.uistate.window)
|
||||
|
||||
def __blocked_text(self):
|
||||
"""
|
||||
@ -516,7 +518,7 @@ class CitationTreeView(ListView):
|
||||
"merge. A second citation can be selected by holding "
|
||||
"down the control key while clicking on the desired "
|
||||
"citation.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
source1 = self.dbstate.db.get_source_from_handle(mlist[0])
|
||||
citation1 = self.dbstate.db.get_citation_from_handle(mlist[0])
|
||||
@ -536,7 +538,7 @@ class CitationTreeView(ListView):
|
||||
"source to perform a merge. If you want to merge "
|
||||
"these two citations, then you must merge the "
|
||||
"sources first.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeCitation(self.dbstate, self.uistate, mlist[0],
|
||||
mlist[1])
|
||||
@ -547,7 +549,7 @@ class CitationTreeView(ListView):
|
||||
msg2 = _("Both objects must be of the same type, either "
|
||||
"both must be sources, or both must be "
|
||||
"citations.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
|
||||
def get_handle_from_gramps_id(self, gid):
|
||||
obj = self.dbstate.db.get_citation_from_gramps_id(gid)
|
||||
|
@ -264,7 +264,7 @@ class EventView(ListView):
|
||||
msg2 = _("Exactly two events must be selected to perform a merge. "
|
||||
"A second object can be selected by holding down the "
|
||||
"control key while clicking on the desired event.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeEvent(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -219,7 +219,8 @@ class FamilyView(ListView):
|
||||
WarningDialog(
|
||||
_("Could Not Set a Bookmark"),
|
||||
_("A bookmark could not be set because "
|
||||
"no one was selected."))
|
||||
"no one was selected."),
|
||||
parent=self.uistate.window)
|
||||
|
||||
def add(self, obj):
|
||||
family = Family()
|
||||
@ -243,13 +244,15 @@ class FamilyView(ListView):
|
||||
QuestionDialog(msg1,
|
||||
msg2,
|
||||
_('_Delete Family'),
|
||||
lambda: self.delete_family_response(family))
|
||||
lambda: self.delete_family_response(family),
|
||||
parent=self.uistate.window)
|
||||
else:
|
||||
MultiSelectDialog(self._message1_format,
|
||||
self._message2_format,
|
||||
handles,
|
||||
self.dbstate.db.get_family_from_handle,
|
||||
yes_func=self.delete_family_response)
|
||||
yes_func=self.delete_family_response,
|
||||
parent=self.uistate.window)
|
||||
|
||||
def _message1_format(self, family):
|
||||
"""
|
||||
@ -298,7 +301,7 @@ class FamilyView(ListView):
|
||||
msg2 = _("Exactly two families must be selected to perform a merge."
|
||||
" A second family can be selected by holding down the "
|
||||
"control key while clicking on the desired family.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeFamily(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -351,7 +351,7 @@ class MediaView(ListView):
|
||||
msg2 = _("Exactly two media objects must be selected to perform a "
|
||||
"merge. A second object can be selected by holding down the "
|
||||
"control key while clicking on the desired object.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeMedia(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -242,7 +242,7 @@ class NoteView(ListView):
|
||||
msg2 = _("Exactly two notes must be selected to perform a merge. "
|
||||
"A second note can be selected by holding down the "
|
||||
"control key while clicking on the desired note.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeNote(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -1494,7 +1494,8 @@ class PedigreeView(NavigationView):
|
||||
alive = probably_alive(person, self.dbstate.db)
|
||||
except RuntimeError:
|
||||
ErrorDialog(_('Relationship loop detected'),
|
||||
_('A person was found to be his/her own ancestor.'))
|
||||
_('A person was found to be his/her own ancestor.'),
|
||||
parent=self.uistate.window)
|
||||
alive = False
|
||||
lst[index] = [person, val, None, alive, None]
|
||||
|
||||
|
@ -1350,7 +1350,8 @@ class RelationshipView(NavigationView):
|
||||
from gramps.gui.dialog import WarningDialog
|
||||
WarningDialog(
|
||||
_('Broken family detected'),
|
||||
_('Please run the Check and Repair Database tool'))
|
||||
_('Please run the Check and Repair Database tool'),
|
||||
parent=self.uistate.window)
|
||||
return
|
||||
|
||||
father_handle = family.get_father_handle()
|
||||
|
@ -247,7 +247,7 @@ class RepositoryView(ListView):
|
||||
"merge. A second repository can be selected by holding "
|
||||
"down the control key while clicking on the desired "
|
||||
"repository.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeRepository(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
@ -230,7 +230,7 @@ class SourceView(ListView):
|
||||
msg2 = _("Exactly two sources must be selected to perform a merge. "
|
||||
"A second source can be selected by holding down the "
|
||||
"control key while clicking on the desired source.")
|
||||
ErrorDialog(msg, msg2)
|
||||
ErrorDialog(msg, msg2, parent=self.uistate.window)
|
||||
else:
|
||||
MergeSource(self.dbstate, self.uistate, mlist[0], mlist[1])
|
||||
|
||||
|
428
po/fr.po
428
po/fr.po
@ -1,7 +1,7 @@
|
||||
# French translation for Gramps
|
||||
# $Id$
|
||||
# This file is distributed under the same license as the Gramps package.
|
||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
|
||||
# Copyright (C) 2001-2015 Free Software Foundation, Inc.
|
||||
#
|
||||
# Quelques variables pour la cohérence:
|
||||
# ancestor : ascendant
|
||||
@ -24,10 +24,10 @@
|
||||
# Mathieu MD <mathieu.md@gmail.com>, 2012.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 4.1.0\n"
|
||||
"Project-Id-Version: 4.2.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-06-01 16:03+0200\n"
|
||||
"PO-Revision-Date: 2015-06-01 16:25+0100\n"
|
||||
"PO-Revision-Date: 2015-06-09 16:40+0100\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: French <traduc@traduc.org>\n"
|
||||
"Language: fr\n"
|
||||
@ -35,13 +35,12 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Lokalize 1.4\n"
|
||||
"X-Generator: \n"
|
||||
|
||||
#: ../data/gramps.appdata.xml.in.h:1
|
||||
msgid "Gramps is a genealogy program that is both intuitive for hobbyists and feature-complete for professional genealogists."
|
||||
msgstr "Gramps est un programme de généalogie, intuitif pour le loisir et complet pour un usage professionnel."
|
||||
|
||||
# trunk
|
||||
#: ../data/gramps.appdata.xml.in.h:2
|
||||
msgid "It gives you the ability to record the many details of the life of an individual as well as the complex relationships between various people, places and events."
|
||||
msgstr "Il vous permet d'enregistrer de nombreux détails sur la vie d'un individu ainsi que les relations complexes entre différentes personnes, différents lieux et événements."
|
||||
@ -7832,6 +7831,9 @@ msgid ""
|
||||
"This might indicate a damage to your files.\n"
|
||||
"If you're sure there is no problem with other files, delete it, and restart Gramps."
|
||||
msgstr ""
|
||||
"Erreur à l'analyse des fichiers de la base de données {fname}: {error}.\n"
|
||||
"Ceci pourrait indiquer des fichiers endommagés.\n"
|
||||
"Si vous êtes certain(e) qu'il n'y a aucun problème avec d'autres fichiers, supprimez et redémarrez Gramps."
|
||||
|
||||
#: ../gramps/gen/relationship.py:827
|
||||
#: ../gramps/plugins/view/pedigreeview.py:1496
|
||||
@ -9600,15 +9602,13 @@ msgstr "Suppression de la virgule après le numéro de l'adresse"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/configure.py:1116
|
||||
#, fuzzy
|
||||
msgid "Reverse display order"
|
||||
msgstr "Utiliser le format d'affichage de la mère"
|
||||
msgstr "Inverser l'ordre d'affichage"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/configure.py:1122
|
||||
#, fuzzy
|
||||
msgid "Full place name"
|
||||
msgstr "Nom de famille complet :"
|
||||
msgstr "Nom de lieu complet"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/configure.py:1123
|
||||
@ -9622,9 +9622,8 @@ msgstr "Hameau/Village/Ville ->"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/configure.py:1129
|
||||
#, fuzzy
|
||||
msgid "Restrict"
|
||||
msgstr "District (Arrondissement)"
|
||||
msgstr "Restreindre"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/configure.py:1134
|
||||
@ -15034,7 +15033,7 @@ msgstr "Ligne :"
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1495
|
||||
msgid "Fill:"
|
||||
msgstr ""
|
||||
msgstr "Remplir :"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1510
|
||||
@ -15044,7 +15043,7 @@ msgstr "Ombre"
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1586
|
||||
msgid "pt"
|
||||
msgstr ""
|
||||
msgstr "point"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1609
|
||||
@ -15054,13 +15053,12 @@ msgstr "Espace :"
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1631
|
||||
msgid "Draw shadow"
|
||||
msgstr ""
|
||||
msgstr "Dessiner l'ombre"
|
||||
|
||||
# master
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1673
|
||||
#, fuzzy
|
||||
msgid "Draw options"
|
||||
msgstr "Options de la table"
|
||||
msgstr "Options de dessin"
|
||||
|
||||
# trunk
|
||||
#: ../gramps/gui/glade/styleeditor.glade:1828
|
||||
@ -17939,7 +17937,7 @@ msgstr "Inclure les frères et sœurs de la souche"
|
||||
# master
|
||||
#: ../gramps/plugins/drawreport/ancestortree.py:775
|
||||
msgid "Whether to only display the center person or all of his/her siblings too"
|
||||
msgstr ""
|
||||
msgstr "Afficher ou non uniquement l'individu central ou ses frères et sœurs également "
|
||||
|
||||
#: ../gramps/plugins/drawreport/ancestortree.py:779
|
||||
#: ../gramps/plugins/drawreport/descendtree.py:1518
|
||||
@ -19599,7 +19597,7 @@ msgstr "Exclure les _notes"
|
||||
# master
|
||||
#: ../gramps/plugins/export/exportgeneweb.glade:217
|
||||
msgid "Use _Living as first name"
|
||||
msgstr ""
|
||||
msgstr "Utiliser _Vivant comme prénom"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/export/exportgeneweb.glade:260
|
||||
@ -19852,19 +19850,19 @@ msgstr "Édition des conjoints"
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:71
|
||||
#, python-format
|
||||
msgid " 1. %(gramps_FAQ_html_start)s%(faq_section)sHow do I change the order of spouses?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 1. %(gramps_FAQ_html_start)s%(faq_section)sComment changer l'ordre des conjoints ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:77
|
||||
#, python-format
|
||||
msgid " 2. %(gramps_FAQ_html_start)s%(faq_section)sHow do I add an additional spouse?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 2. %(gramps_FAQ_html_start)s%(faq_section)sComment ajouter un conjoint supplémentaire ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:83
|
||||
#, python-format
|
||||
msgid " 3. %(gramps_FAQ_html_start)s%(faq_section)sHow do I remove a spouse?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 3. %(gramps_FAQ_html_start)s%(faq_section)sComment enlever un conjoint ?%(html_end)s\n"
|
||||
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:87
|
||||
msgid "Backups and Updates"
|
||||
@ -19874,7 +19872,7 @@ msgstr "Sauvegardes et mises à jour"
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:92
|
||||
#, python-format
|
||||
msgid " 4. %(gramps_FAQ_html_start)s%(faq_section)sHow do I make backups safely?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 4. %(gramps_FAQ_html_start)s%(faq_section)sComment faire des sauvegardes ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:98
|
||||
@ -19890,7 +19888,7 @@ msgstr "Saisie des données"
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:109
|
||||
#, python-format
|
||||
msgid " 6. %(gramps_manual_html_start)s%(section)sHow should information about marriages be entered?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 6. %(gramps_manual_html_start)s%(section)sComment saisir les informations sur le mariage ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:116
|
||||
@ -19912,31 +19910,31 @@ msgstr " 8. %(gramps_FAQ_html_start)s%(faq_section)sComment ajouter une photo
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:131
|
||||
#, python-format
|
||||
msgid " 9. %(gramps_FAQ_html_start)s%(faq_section)sHow do you find unused media objects?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 9. %(gramps_FAQ_html_start)s%(faq_section)sComment retrouver les objets media non-utilisés ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:141
|
||||
#, python-format
|
||||
msgid " 10. %(gramps_FAQ_html_start)s%(faq_section)sHow can I make a website with Gramps and my tree?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 10. %(gramps_FAQ_html_start)s%(faq_section)sComment générer un site internet avec mes données ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:148
|
||||
#, python-format
|
||||
msgid " 11. %(web_html_start)sHow do I record one's occupation?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 11. %(web_html_start)sComment saisir une profession ? [en]%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:154
|
||||
#, python-format
|
||||
msgid " 12. %(gramps_FAQ_html_start)s%(faq_section)sWhat do I do if I have found a bug?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 12. %(gramps_FAQ_html_start)s%(faq_section)sQue faire si je trouve une erreur ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:159
|
||||
#, python-format
|
||||
msgid " 13. %(gramps_wiki_html_start)s%(section)sIs there a manual for Gramps?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 13. %(gramps_wiki_html_start)s%(section)sExiste-t-il un manuel d'utilisation de Gramps ?%(html_end)s\n"
|
||||
|
||||
# /!\ à tester ...
|
||||
# 'Category:Fr:Tutorials'
|
||||
@ -19950,13 +19948,13 @@ msgstr " 14. %(gramps_wiki_html_start)s%(section)sExiste-t-il des tutoriels ?%(
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:169
|
||||
#, python-format
|
||||
msgid " 15. %(gramps_wiki_html_start)s%(section)sHow do I ...?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 15. %(gramps_wiki_html_start)s%(section)sComment je fais pour... ?%(html_end)s\n"
|
||||
|
||||
# master
|
||||
#: ../gramps/plugins/gramplet/faqgramplet.py:174
|
||||
#, python-format
|
||||
msgid " 16. %(gramps_wiki_html_start)s%(section)sHow can I help with Gramps?%(html_end)s\n"
|
||||
msgstr ""
|
||||
msgstr " 16. %(gramps_wiki_html_start)s%(section)sComment je peux aider Gramps ?%(html_end)s\n"
|
||||
|
||||
#: ../gramps/plugins/gramplet/givennamegramplet.py:42
|
||||
msgid "Double-click given name for details"
|
||||
@ -34159,373 +34157,3 @@ msgstr "Une seule règle doit correspondre"
|
||||
|
||||
#~ msgid "Place format"
|
||||
#~ msgstr "Format de lieu"
|
||||
|
||||
# Substantif (GNOME fr)
|
||||
#~ msgid ""
|
||||
#~ "Changing the place format will not take effect until the next time Gramps "
|
||||
#~ "is started."
|
||||
#~ msgstr ""
|
||||
#~ "Le changement du format de lieu ne prendra effet que la prochaine fois "
|
||||
#~ "que Gramps sera démarré."
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "phpGedView import"
|
||||
#~ msgstr "Importation GeneWeb"
|
||||
|
||||
# master
|
||||
#~ msgid "http://"
|
||||
#~ msgstr "http://"
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Username:"
|
||||
#~ msgstr "Nom de famille"
|
||||
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Password:"
|
||||
#~ msgstr "Pâque juive"
|
||||
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Fetching records..."
|
||||
#~ msgstr "Enregistrement manquant "
|
||||
|
||||
# Substantif (GNOME fr)
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Logging in..."
|
||||
#~ msgstr "Chargement des greffons..."
|
||||
|
||||
# Substantif (GNOME fr)
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Importing GEDCOM..."
|
||||
#~ msgstr "Importation des données..."
|
||||
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Error: login failed"
|
||||
#~ msgstr "Erreur à l'ouverture du fichier."
|
||||
|
||||
# master
|
||||
#~ msgid "done."
|
||||
#~ msgstr "fait."
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Connecting..."
|
||||
#~ msgstr "Sélection en cours..."
|
||||
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Get version..."
|
||||
#~ msgstr "Version du schéma"
|
||||
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Version %s"
|
||||
#~ msgstr "Version"
|
||||
|
||||
# Substantif (GNOME fr)
|
||||
# master
|
||||
#, fuzzy
|
||||
#~ msgid "Reading file list..."
|
||||
#~ msgstr "Lecture des données..."
|
||||
|
||||
#~ msgid "Cannot save place"
|
||||
#~ msgstr "Impossible d'enregistrer le lieu"
|
||||
|
||||
#~ msgid "No data exists for this place. Please enter data or cancel the edit."
|
||||
#~ msgstr ""
|
||||
#~ "Aucune donnée n'existe pour ce lieu. Veuillez entrer une donnée ou "
|
||||
#~ "annuler l'édition."
|
||||
|
||||
# trunk
|
||||
#~ msgid "Place Name:"
|
||||
#~ msgstr "Nom du lieu :"
|
||||
#~ msgid "New"
|
||||
#~ msgstr "Nouveau"
|
||||
#~ msgid "_Add bookmark"
|
||||
#~ msgstr "_Ajouter un signet"
|
||||
#~ msgid "Configure"
|
||||
#~ msgstr "Configuration"
|
||||
#~ msgid "Edit Date"
|
||||
#~ msgstr "Éditer la date"
|
||||
#~ msgid "Font"
|
||||
#~ msgstr "Police"
|
||||
#~ msgid "Font Background Color"
|
||||
#~ msgstr "Couleur d'arrière-plan de la police"
|
||||
#~ msgid "Gramplets"
|
||||
#~ msgstr "Gramplets"
|
||||
#~ msgid "Public"
|
||||
#~ msgstr "Public"
|
||||
#~ msgid "Merge"
|
||||
#~ msgstr "Fusion"
|
||||
#~ msgid "Add Parents"
|
||||
#~ msgstr "Ajouter des parents"
|
||||
#~ msgid "Select Parents"
|
||||
#~ msgstr "Sélectionner les parents"
|
||||
#~ msgid "Reports"
|
||||
#~ msgstr "Rapports"
|
||||
#~ msgid "Add Spouse"
|
||||
#~ msgstr "Ajouter un conjoint"
|
||||
#~ msgid "Tools"
|
||||
#~ msgstr "Outils"
|
||||
#~ msgid "Grouped List"
|
||||
#~ msgstr "Liste groupée"
|
||||
#~ msgid "List"
|
||||
#~ msgstr "Liste"
|
||||
#~ msgid "Zoom In"
|
||||
#~ msgstr "Agrandir"
|
||||
#~ msgid "Zoom Out"
|
||||
#~ msgstr "Réduire"
|
||||
#~ msgid "Fit Width"
|
||||
#~ msgstr "Largeur idéale"
|
||||
#~ msgid ""
|
||||
#~ "Include the dates that the individual was born, got married and/or died "
|
||||
#~ "in the graph labels."
|
||||
#~ msgstr ""
|
||||
#~ "Inclure les dates de naissance, mariage et/ou décès sur le graphique."
|
||||
#~ msgid "Use place when no date"
|
||||
#~ msgstr "Utiliser le lieu en l'absence de date"
|
||||
#~ msgid ""
|
||||
#~ "When no birth, marriage, or death date is available, the correspondent "
|
||||
#~ "place field will be used."
|
||||
#~ msgstr ""
|
||||
#~ "Lorsque ni les dates de naissance, ni les dates de mariage, ni les dates "
|
||||
#~ "de décès ne sont disponibles, le lieu correspondant sera utilisé."
|
||||
# trunk
|
||||
#~ msgid "SUBM (Submitter): @%s@"
|
||||
#~ msgstr "SUBM (Soumetteur) : @%s@"
|
||||
#~ msgid "%(name)s [%(gid)s]"
|
||||
#~ msgstr "%(name)s [%(gid)s]"
|
||||
#~ msgid "Invalid line %d in GEDCOM file."
|
||||
#~ msgstr "Ligne %d invalide dans le fichier GEDCOM."
|
||||
#~ msgid " %s: %s"
|
||||
#~ msgstr " %s : %s"
|
||||
# trunk
|
||||
#~ msgid "%s (copy, %s)"
|
||||
#~ msgstr "%s (copie, %s)"
|
||||
#~ msgid "First add a source using the buttons"
|
||||
#~ msgstr "Ajoutez d'abord une source avec les boutons"
|
||||
#~ msgid "Paragraph"
|
||||
#~ msgstr "Paragraphe"
|
||||
#~ msgid ""
|
||||
#~ " 1. <a wiki='%s_-_FAQ#How_do_I_change_the_order_of_spouses.3F'>How do I "
|
||||
#~ "change the order of spouses?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 1. <a wiki='%s_-_FAQ'>Comment changer l'ordre des conjoints ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 2. <a wiki='%s_-_FAQ#How_do_I_add_an_additional_spouse.3F'>How do I add "
|
||||
#~ "an additional spouse?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 2. <a wiki='%s_-_FAQ'>Comment ajouter un conjoint supplémentaire ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 3. <a wiki='%s_-_FAQ#How_do_I_remove_a_spouse.3F'>How do I remove a "
|
||||
#~ "spouse?</a>\n"
|
||||
#~ msgstr " 3. <a wiki='%s_-_FAQ'>Comment enlever un conjoint ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 4. <a wiki='%s_-_FAQ#How_do_I_keep_backups.3F'>How do I make backups "
|
||||
#~ "safely?</a>\n"
|
||||
#~ msgstr " 4. <a wiki='%s_-_FAQ'>Comment faire des sauvegardes ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 6. <a wiki='%s_-_Entering_and_Editing_Data:_Detailed_-"
|
||||
#~ "_part_1#Editing_Information_About_Relationships'>How should information "
|
||||
#~ "about marriages be entered?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 6. <a wiki='%s_-_Entering_and_Editing_Data:_Detailed_-_part_1#."
|
||||
#~ "C3.89dition_de_l.27information_sur_les_relations'>Comment saisir les "
|
||||
#~ "informations sur le mariage ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 9. <a wiki='%s_-_FAQ#How_do_you_find_unused_media_objects.3F'>How do "
|
||||
#~ "you find unused media objects?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 9. <a wiki='%s_-_FAQ'>Comment retrouver les objets media non-utilisés ?"
|
||||
#~ "</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 10. <a wiki='%s_-"
|
||||
#~ "_FAQ#How_can_I_publish_web_sites_generated_by_GRAMPS.3F'>How can I make a "
|
||||
#~ "website with Gramps and my tree?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 10. <a wiki='%s_-_FAQ'>Comment générer un site internet avec mes "
|
||||
#~ "données ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 11. <a href='http://sourceforge.net/mailarchive/message.php?"
|
||||
#~ "msg_id=21487967'>How do I record one's occupation?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 11. <a href='http://sourceforge.net/mailarchive/message.php?"
|
||||
#~ "msg_id=21487967'>Comment saisir une profession ? [en]</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 12. <a wiki='%s_-_FAQ#What_do_I_do_if_I_have_found_a_bug.3F'>What do I "
|
||||
#~ "do if I have found a bug?</a>\n"
|
||||
#~ msgstr " 12. <a wiki='%s_-_FAQ'>Que faire si je trouve une erreur ?</a>\n"
|
||||
#~ msgid ""
|
||||
#~ " 13. <a wiki='Portal:Using_GRAMPS'>Is there a manual for Gramps?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 13. <a wiki='Portal:Using_GRAMPS'>Existe-t-il un manuel d'utilisation de "
|
||||
#~ "Gramps?</a>\n"
|
||||
#~ msgid " 15. <a wiki='Category:How_do_I...'>How do I ...?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 15. <a wiki='Category:Fr:Comment_je...'>Comment je fais pour... ?</a>\n"
|
||||
#~ msgid " 16. <a wiki='How_you_can_help'>How can I help with Gramps?</a>\n"
|
||||
#~ msgstr ""
|
||||
#~ " 16. <a wiki='How_you_can_help'>Comment je peux aider Gramps ?</a>\n"
|
||||
#~ msgid "http://gramps-project.org/"
|
||||
#~ msgstr "http://www.gramps-project.org/wiki/index.php?title=Main_Page/fr"
|
||||
#~ msgid ""
|
||||
#~ "http://www.gramps-project.org/wiki/index.php?title=Start_with_Genealogy"
|
||||
#~ msgstr ""
|
||||
#~ "http://www.gramps-project.org/wiki/index.php?title=Start_with_Genealogy/fr"
|
||||
#~ msgid ""
|
||||
#~ "http://www.gramps-project.org/wiki/index.php?title=Gramps_4.0_Wiki_Manual"
|
||||
#~ msgstr ""
|
||||
#~ "http://www.gramps-project.org/wiki/index.php?title=Gramps_4.1_Wiki_Manual/"
|
||||
#~ "fr"
|
||||
#~ msgid "http://gramps-project.org/contact/"
|
||||
#~ msgstr "http://www.gramps-project.org/wiki/index.php?title=Contact/fr"
|
||||
#~ msgid "Include private records"
|
||||
#~ msgstr "Inclure les données privées"
|
||||
#~ msgid ""
|
||||
#~ "Whether to include names, dates, and families that are marked as private."
|
||||
#~ msgstr ""
|
||||
#~ "Inclure ou non les noms, dates, et familles marqués comme étant privés."
|
||||
#~ msgid "Include IDs"
|
||||
#~ msgstr "Inclure les identifiants"
|
||||
#~ msgid "Include individual and family IDs."
|
||||
#~ msgstr "Inclure les identifiants individuels et familiaux."
|
||||
#~ msgid "Include private data"
|
||||
#~ msgstr "Inclure les données privées"
|
||||
#~ msgid "Webkit module not loaded."
|
||||
#~ msgstr "Module Webkit non-chargé."
|
||||
#~ msgid ""
|
||||
#~ "Webkit module not loaded. Embedded web page viewing will not be "
|
||||
#~ "available. Use your package manager to install gir1.2-webkit-3.0"
|
||||
#~ msgstr ""
|
||||
#~ "Le module Webkit n'est pas chargé. Le navigateur de page internet n'est "
|
||||
#~ "pas disponible. Utilisez votre gestionnaire de paquets pour installer "
|
||||
#~ "gir1.2-webkit-3.0."
|
||||
#~ msgid "Html View"
|
||||
#~ msgstr "Vue HTML"
|
||||
#~ msgid "A view showing html pages embedded in Gramps"
|
||||
#~ msgstr "Une vue permettant de voir des pages internet dans Gramps."
|
||||
#~ msgid "Web"
|
||||
#~ msgstr "Internet"
|
||||
#~ msgid "HtmlView"
|
||||
#~ msgstr "Vue HTML"
|
||||
#~ msgid "Go to the previous page in the history"
|
||||
#~ msgstr "Aller à la page précédente de l'historique"
|
||||
#~ msgid "Go to the next page in the history"
|
||||
#~ msgstr "Aller à la page suivante de l'historique"
|
||||
#~ msgid "_Refresh"
|
||||
#~ msgstr "_Actualiser"
|
||||
#~ msgid "Stop and reload the page."
|
||||
#~ msgstr "Arrêt et réouverture de la page."
|
||||
#~ msgid "Start page for the Html View"
|
||||
#~ msgstr "Première page pour la vue HTML"
|
||||
#~ msgid ""
|
||||
#~ "Type a webpage address at the top, and hit the execute button to load a "
|
||||
#~ "webpage in this page\n"
|
||||
#~ "<br>\n"
|
||||
#~ "For example: <b>http://gramps-project.org</p>"
|
||||
#~ msgstr ""
|
||||
#~ "Saisissez une adresse internet en haut, et appuyez sur le bouton "
|
||||
#~ "Appliquer pour charger la page internet\n"
|
||||
#~ "<br>\n"
|
||||
#~ "Par exemple: <b>http://gramps-project.org</p>"
|
||||
#~ msgid "<br />Created for <a href = \"%(url)s\">%(name)s</a>"
|
||||
#~ msgstr "<br />Créé pour <a href = \"%(url)s\">%(name)s</a>"
|
||||
#~ msgid "Whether to include private objects"
|
||||
#~ msgstr "Inclure ou non les objets privés"
|
||||
#~ msgid ""
|
||||
#~ "Created for <a href=\"mailto:%(email)s?subject=WebCal\">%(author)s</a>"
|
||||
#~ msgstr ""
|
||||
#~ "Créé pour <a href=\"mailto:%(email)s?subject=WebCal\">%(author)s</a>"
|
||||
#~ msgid ""
|
||||
#~ "Generated by <a href=\"http://gramps-project.org\">Gramps</a> on %(date)s"
|
||||
#~ msgstr ""
|
||||
#~ "Généré par <a href=\"http://gramps-project.org\">Gramps</a> le %(date)s"
|
||||
#~ msgid "TRANSLATORS: Translate this to your name in your native language"
|
||||
#~ msgstr ""
|
||||
#~ "Michel Guitel\n"
|
||||
#~ "Laurent Protois\n"
|
||||
#~ "Matthieu Pupat\n"
|
||||
#~ "Guillaume Pratte\n"
|
||||
#~ "Frédéric Chateaux\n"
|
||||
#~ "Jérôme Rapinat\n"
|
||||
#~ "Mathieu MD"
|
||||
#~ msgid "==== Authors ====\n"
|
||||
#~ msgstr "==== Auteurs ====\n"
|
||||
#~ msgid ""
|
||||
#~ "\n"
|
||||
#~ "==== Contributors ====\n"
|
||||
#~ msgstr ""
|
||||
#~ "\n"
|
||||
#~ "==== Collaborateurs ====\n"
|
||||
# trunk
|
||||
#~ msgid "Cannot save location. Title not entered."
|
||||
#~ msgstr "Impossible d'enregistrer l'emplacement. Le titre est absent."
|
||||
# trunk
|
||||
#~ msgid "You must enter a title before saving."
|
||||
#~ msgstr "Vous devez d'abord créer un titre avant d'enregistrer."
|
||||
#~ msgid "Cannot save place reference"
|
||||
#~ msgstr "Impossible d'enregistrer la référence du lieu"
|
||||
#~ msgid "No place selected. Please select a place or cancel the edit."
|
||||
#~ msgstr ""
|
||||
#~ "Aucun lieu sélectionné. Veuillez sélectionner un lieu ou annuler "
|
||||
#~ "l'édition."
|
||||
# INSEE, postal, Belgique, Canada ...
|
||||
# Utilisation d'un terme général (Code lieu) car le code postal ne sert à rien en généalogie.
|
||||
#~ msgid "ZIP/Postal code"
|
||||
#~ msgstr "Code lieu"
|
||||
#~ msgid "Church parish"
|
||||
#~ msgstr "Paroisse"
|
||||
# trunk
|
||||
#~ msgid "Source: Publication"
|
||||
#~ msgstr "Source : Publication"
|
||||
#~ msgid "Source: Note"
|
||||
#~ msgstr "Source : Note"
|
||||
# L'espace finale est pour précéder le « : » codé en dur dans certains contextes.
|
||||
# /!\ vérifier double espace avec search bar "%(titre colonne)s contient"
|
||||
#~ msgid "Citation: ID"
|
||||
#~ msgstr "Citation : Id"
|
||||
# trunk
|
||||
#~ msgid "Citation: Volume/Page"
|
||||
#~ msgstr "Citation : Volume/Page"
|
||||
# trunk
|
||||
#~ msgid "Citation: Date"
|
||||
#~ msgstr "Citation : Date"
|
||||
# trunk
|
||||
#~ msgid "Citation: Note"
|
||||
#~ msgstr "Citation : Note"
|
||||
# trunk
|
||||
#~ msgid "Top level place"
|
||||
#~ msgstr "Niveau supérieur du lieu"
|
||||
#~ msgid "..."
|
||||
#~ msgstr "..."
|
||||
#~ msgid "Sweden - Holidays"
|
||||
#~ msgstr "Suède - jours fériés"
|
||||
# trunk
|
||||
#~ msgid ""
|
||||
#~ "You have attempted to use the existing Gramps ID with value %(gramps_id)"
|
||||
#~ "s. This value is already used by '%(prim_object)s'. Please enter a "
|
||||
#~ "different ID or leave blank to get the next available ID value."
|
||||
#~ msgstr ""
|
||||
#~ "Vous avez essayé d'utiliser l'identifiant Gramps existant %(gramps_id)s. "
|
||||
#~ "Cette valeur est déjà utilisée par « %(prim_object)s ». Veuillez entrer "
|
||||
#~ "un identifiant différent ou laissez vide pour obtenir la valeur du "
|
||||
#~ "prochain identifiant disponible."
|
||||
#~ msgid "Python Evaluation"
|
||||
#~ msgstr "Terminal d'évaluation Python"
|
||||
# trunk
|
||||
#~ msgid "Gramplet allowing the evaluation of python code"
|
||||
#~ msgstr "Gramplet affichant les citations du lieu."
|
||||
#~ msgid "Uncollected Objects"
|
||||
#~ msgstr "Objets non-collectés"
|
||||
# trunk
|
||||
#, fuzzy
|
||||
#~ msgid "window2"
|
||||
#~ msgstr "Fenêtre principale"
|
||||
|
||||
# trunk
|
||||
#, fuzzy
|
||||
#~ msgid "window1"
|
||||
#~ msgstr "Fenêtre principale"
|
||||
|
Loading…
Reference in New Issue
Block a user