diff --git a/gramps/gen/config.py b/gramps/gen/config.py
index 64d61e274..df5276c68 100644
--- a/gramps/gen/config.py
+++ b/gramps/gen/config.py
@@ -271,6 +271,8 @@ register('preferences.use-last-view', False)
register('preferences.last-view', '')
register('preferences.last-views', [])
register('preferences.family-relation-type', 3) # UNKNOWN
+register('preferences.father-label', "%s" % _("Father"))
+register('preferences.mother-label', "%s" % _("Mother"))
register('preferences.age-display-precision', 1)
register('preferences.color-gender-male-alive', '#b8cee6')
register('preferences.color-gender-male-death', '#b8cee6')
diff --git a/gramps/gen/plug/report/utils.py b/gramps/gen/plug/report/utils.py
index 796c0b058..656bc6ed0 100644
--- a/gramps/gen/plug/report/utils.py
+++ b/gramps/gen/plug/report/utils.py
@@ -40,10 +40,12 @@ import os
#------------------------------------------------------------------------
from ...const import GRAMPS_LOCALE as glocale
_ = glocale.translation.gettext
+from gramps.gen.config import config
from ...datehandler import get_date
from ...display.place import displayer as _pd
from ...utils.file import media_path_full
from ..docgen import IndexMark, INDEX_TYPE_ALP
+from ...relationship import get_relationship_calculator
# _T_ is a gramps-defined keyword -- see po/update_po.py and po/genpot.sh
def _T_(value):
@@ -392,3 +394,27 @@ def get_family_filters(database, family,
the_filters = [all_families, d_fams, ans]
the_filters.extend(CustomFilters.get_filters('Family'))
return the_filters
+
+def parents_labels(db, family, glocale):
+ """
+ Get the label for parent
+ """
+ father = db.get_person_from_handle(family.get_father_handle())
+ mother = db.get_person_from_handle(family.get_mother_handle())
+
+ rel_father = config.get("preferences.father-label")
+ rel_mother = config.get("preferences.mother-label")
+
+ if len(family.get_child_ref_list()) > 0:
+ rel_father = _('Father')
+ rel_mother = _('Mother')
+ if father.gender == 0:
+ rel_father = rel_mother
+ if mother.gender == 1:
+ rel_mother = _('Father')
+ else:
+ rc = get_relationship_calculator(True, glocale)
+ rel_father = rc.get_one_relationship(db, mother, father)
+ rel_mother = rc.get_one_relationship(db, father, mother)
+
+ return [rel_father[0].upper()+rel_father[1:].lower(), rel_mother[0].upper()+rel_mother[1:].lower()]
diff --git a/gramps/grampsapp.py b/gramps/grampsapp.py
index 3e7feb5df..8244e5c02 100644
--- a/gramps/grampsapp.py
+++ b/gramps/grampsapp.py
@@ -399,10 +399,11 @@ def show_settings():
print(' version : %s' % bsddb_str)
print(' db version : %s' % bsddb_db_str)
print(' location : %s' % bsddb_location_str)
- print(' sqlite3 :')
- print(' version : %s' % sqlite3_version_str)
- print(' py version : %s' % sqlite3_py_version_str)
- print(' location : %s' % sqlite3_location_str)
+ if __debug__:
+ print(' sqlite3 :')
+ print(' version : %s' % sqlite3_version_str)
+ print(' py version : %s' % sqlite3_py_version_str)
+ print(' location : %s' % sqlite3_location_str)
print('')
def run():
diff --git a/gramps/gui/aboutdialog.py b/gramps/gui/aboutdialog.py
index 246d34bb7..c650087cf 100644
--- a/gramps/gui/aboutdialog.py
+++ b/gramps/gui/aboutdialog.py
@@ -132,19 +132,22 @@ class GrampsAboutDialog(Gtk.AboutDialog):
operatingsystem = sys.platform
distribution = " "
+ sqlite = ''
+ if __debug__:
+ sqlite = "sqlite: %s (%s)\n" % (sqlite3_version_str,
+ sqlite3_py_version_str)
+
return (("\n\n" +
"GRAMPS: %s \n" +
"Python: %s \n" +
"BSDDB: %s \n" +
- "sqlite: %s (%s)\n" +
+ sqlite +
"LANG: %s\n" +
"OS: %s\n" +
"Distribution: %s")
% (ellipses(str(VERSION)),
ellipses(str(sys.version).replace('\n','')),
BSDDB_STR,
- sqlite3_version_str,
- sqlite3_py_version_str,
ellipses(get_env_var('LANG','')),
ellipses(operatingsystem),
ellipses(distribution)))
diff --git a/gramps/gui/configure.py b/gramps/gui/configure.py
index 963eac55e..2cb7866ae 100644
--- a/gramps/gui/configure.py
+++ b/gramps/gui/configure.py
@@ -1072,6 +1072,14 @@ class GrampsPreferences(ConfigureDialog):
grid.attach(obox, 1, row, 2, 1)
row += 1
+ father_entry = self.add_entry(grid, _("Label for parent male"),
+ row, 'preferences.father-label')
+ row += 1
+
+ mother_entry = self.add_entry(grid, _("Label for parent female"),
+ row, 'preferences.mother-label')
+ row += 1
+
#height multiple surname table
self.add_pos_int_entry(grid,
_('Height multiple surname box (pixels)'),
diff --git a/gramps/gui/editors/addmedia.py b/gramps/gui/editors/addmedia.py
index 33ac8646d..d1885f478 100644
--- a/gramps/gui/editors/addmedia.py
+++ b/gramps/gui/editors/addmedia.py
@@ -88,7 +88,7 @@ class AddMedia(ManagedWindow):
The media is updated with the information, and on save, the
callback function is called
"""
- ManagedWindow.__init__(self, uistate, track, self)
+ ManagedWindow.__init__(self, uistate, track, self, modal=True)
self.dbase = dbstate.db
self.obj = media
@@ -140,7 +140,6 @@ class AddMedia(ManagedWindow):
section=WIKI_HELP_SEC))
self.cancel_button.connect('clicked', self.close)
self.show()
- self.modal_call()
def build_menu_names(self, obj):
"""
@@ -192,6 +191,7 @@ class AddMedia(ManagedWindow):
self._cleanup_on_exit()
if self.callback:
self.callback(self.obj)
+ self.close()
def on_name_changed(self, *obj):
"""
diff --git a/gramps/gui/editors/displaytabs/eventembedlist.py b/gramps/gui/editors/displaytabs/eventembedlist.py
index 30e7bcb62..c819fb5c0 100644
--- a/gramps/gui/editors/displaytabs/eventembedlist.py
+++ b/gramps/gui/editors/displaytabs/eventembedlist.py
@@ -35,6 +35,7 @@ from gi.repository import GLib
#-------------------------------------------------------------------------
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.gettext
+from gramps.gen.config import config
from gramps.gen.lib import Event, EventRef, EventRoleType, EventType
from gramps.gen.errors import WindowActiveError
from ...ddtargets import DdTargets
@@ -57,8 +58,8 @@ class EventEmbedList(DbGUIElement, GroupEmbeddedList):
_WORKGROUP = EventRefModel._ROOTINDEX
_WORKNAME = _("Family")
- _FATHNAME = _("Father")
- _MOTHNAME = _("Mother")
+ _FATHNAME = config.get("preferences.father-label")
+ _MOTHNAME = config.get("preferences.mother-label")
_MSG = {
'add' : _('Add a new family event'),
diff --git a/gramps/gui/editors/editfamily.py b/gramps/gui/editors/editfamily.py
index 5d8d5e702..8e97a72a3 100644
--- a/gramps/gui/editors/editfamily.py
+++ b/gramps/gui/editors/editfamily.py
@@ -79,6 +79,7 @@ from gramps.gen.utils.db import (get_birth_or_fallback, get_death_or_fallback,
get_marriage_or_fallback, preset_name, family_name)
from ..selectors import SelectorFactory
from gramps.gen.utils.id import create_id
+from ..utils import parents_labels
from gramps.gen.const import URL_MANUAL_SECT1
#-------------------------------------------------------------------------
@@ -515,6 +516,9 @@ class EditFamily(EditPrimary):
# FIXME: remove if we can use show()
self.window.show_all = self.window.show
+ self.father_label = self.top.get_object('label589')
+ self.mother_label = self.top.get_object('label574')
+
self.fbirth = self.top.get_object('fbirth')
self.fdeath = self.top.get_object('fdeath')
self.fbirth_label = self.top.get_object('label578')
@@ -533,9 +537,9 @@ class EditFamily(EditPrimary):
self.mbutton_del = self.top.get_object('mbutton_del')
self.mbutton_edit = self.top.get_object('mbutton_edit')
- self.mbutton_index.set_tooltip_text(_("Select a person as the mother"))
- self.mbutton_add.set_tooltip_text(_("Add a new person as the mother"))
- self.mbutton_del.set_tooltip_text(_("Remove the person as the mother"))
+ self.mbutton_index.set_tooltip_text(_("Select a woman"))
+ self.mbutton_add.set_tooltip_text(_("Add a woman"))
+ self.mbutton_del.set_tooltip_text(_("Remove the person as woman"))
self.mbutton_edit.connect('button-press-event', self.edit_mother)
self.mbutton_edit.connect('key-press-event', self.edit_mother)
@@ -548,9 +552,9 @@ class EditFamily(EditPrimary):
self.fbutton_del = self.top.get_object('fbutton_del')
self.fbutton_edit = self.top.get_object('fbutton_edit')
- self.fbutton_index.set_tooltip_text(_("Select a person as the father"))
- self.fbutton_add.set_tooltip_text(_("Add a new person as the father"))
- self.fbutton_del.set_tooltip_text(_("Remove the person as the father"))
+ self.fbutton_index.set_tooltip_text(_("Select a man"))
+ self.fbutton_add.set_tooltip_text(_("Add a man"))
+ self.fbutton_del.set_tooltip_text(_("Remove the person as man"))
self.fbutton_edit.connect('button-press-event', self.edit_father)
self.fbutton_edit.connect('key-press-event', self.edit_father)
@@ -679,6 +683,12 @@ class EditFamily(EditPrimary):
self.phandles = [_f for _f in self.phandles if _f]
+ parents = parents_labels(self.db, self.obj)
+ self.father_label.set_label(parents[0][0].upper()+parents[0][1:].lower())
+ self.fbutton_del.set_tooltip_text(_("Remove %s") % parents[0].lower())
+ self.mother_label.set_label(parents[1][0].upper()+parents[1][1:].lower())
+ self.mbutton_del.set_tooltip_text(_("Remove %s") % parents[1].lower())
+
def get_start_date(self):
"""
Get the start date for a family, usually a marriage date, or
diff --git a/gramps/gui/filters/sidebar/_familysidebarfilter.py b/gramps/gui/filters/sidebar/_familysidebarfilter.py
index 6a82ca3a6..9e2932942 100644
--- a/gramps/gui/filters/sidebar/_familysidebarfilter.py
+++ b/gramps/gui/filters/sidebar/_familysidebarfilter.py
@@ -40,6 +40,7 @@ from gi.repository import Gtk
#
#-------------------------------------------------------------------------
from ... import widgets
+from gramps.gen.config import config
from gramps.gen.lib import Event, EventType, Family, FamilyRelType
from .. import build_filter_model
from . import SidebarFilter
@@ -109,8 +110,8 @@ class FamilySidebarFilter(SidebarFilter):
self.rtype.get_child().set_width_chars(5)
self.add_text_entry(_('ID'), self.filter_id)
- self.add_text_entry(_('Father'), self.filter_father)
- self.add_text_entry(_('Mother'), self.filter_mother)
+ self.add_text_entry(config.get("preferences.father-label"), self.filter_father)
+ self.add_text_entry(config.get("preferences.mother-label"), self.filter_mother)
self.add_text_entry(_('Child'), self.filter_child)
self.add_entry(_('Relationship'), self.rtype)
self.add_entry(_('Family Event'), self.etype)
diff --git a/gramps/gui/glade/editfamily.glade b/gramps/gui/glade/editfamily.glade
index a634982e5..1f5f507e7 100644
--- a/gramps/gui/glade/editfamily.glade
+++ b/gramps/gui/glade/editfamily.glade
@@ -157,7 +157,6 @@
TrueFalsestart
- Father/partner1
@@ -189,7 +188,7 @@
@@ -435,7 +434,6 @@
TrueFalsestart
- Mother/partner2
@@ -467,7 +465,7 @@
diff --git a/gramps/gui/managedwindow.py b/gramps/gui/managedwindow.py
index 1f784b4aa..d5ad05e6f 100644
--- a/gramps/gui/managedwindow.py
+++ b/gramps/gui/managedwindow.py
@@ -533,39 +533,6 @@ class ManagedWindow:
self.opened = True
self.window.show_all()
- def modal_call(self, after_ok_func=None):
- """
- This is deprecated; use the 'modal=True' on the ManagedWindow
- initialization for new work.
-
- Method to do modal run of the ManagedWindow.
- Connect the OK button to a method that checks if all is ok,
- Do not call close, close is called here.
- (if not ok, do self.window.run() to obtain new response )
- TODO: remove close here and do close in ReportDialog,
- this can only be done, once all methods use modal_call()
- instead of their own implementation
- Connect Cancel to do close, delete event is connected to close
- here in ManagedWindow.
- Do not generete RESPONSE_OK/CANCEL/DELETE_EVENT on button clicks
- of other buttons
- after_ok_func is called on ok click in this method
- """
- #self.show()
- while True:
- response = self.window.run()
- if response == Gtk.ResponseType.OK:
- # dialog will be closed by connect, now continue work while
- # rest of dialog is unresponsive, release when finished
- self.close()
- if after_ok_func is not None:
- after_ok_func()
- break
- elif (response == Gtk.ResponseType.DELETE_EVENT or
- response == Gtk.ResponseType.CANCEL):
- # connect buttons generating this to a close call
- break
-
def close(self, *obj):
"""
Close itself.
diff --git a/gramps/gui/merge/mergefamily.py b/gramps/gui/merge/mergefamily.py
index a97690449..57d675d2d 100644
--- a/gramps/gui/merge/mergefamily.py
+++ b/gramps/gui/merge/mergefamily.py
@@ -225,6 +225,6 @@ class MergeFamily(ManagedWindow):
query.execute()
except MergeError as err:
ErrorDialog(_("Cannot merge people"), str(err),
- parent=self.uistate.window)
+ parent=self.window)
self.uistate.set_busy_cursor(False)
self.close()
diff --git a/gramps/gui/merge/mergeperson.py b/gramps/gui/merge/mergeperson.py
index f54e51527..ce1b2a4f7 100644
--- a/gramps/gui/merge/mergeperson.py
+++ b/gramps/gui/merge/mergeperson.py
@@ -38,6 +38,7 @@ from gi.repository import Pango
#-------------------------------------------------------------------------
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.sgettext
+from gramps.gen.config import config
from gramps.gen.plug.report import utils
from gramps.gen.display.name import displayer as name_displayer
from gramps.gen.display.place import displayer as place_displayer
@@ -228,10 +229,10 @@ class MergePerson(ManagedWindow):
KEYVAL % {'key': _('Family ID'), 'value': gid})
if fname:
self.add(tobj, indent,
- KEYVAL % {'key': _('Father'), 'value': fname})
+ KEYVAL % {'key': config.get("preferences.father-label"), 'value': fname})
if mname:
self.add(tobj, indent,
- KEYVAL % {'key': _('Mother'), 'value': mname})
+ KEYVAL % {'key': config.get("preferences.mother-label"), 'value': mname})
else:
self.add(tobj, normal, _("No parents found"))
diff --git a/gramps/gui/selectors/selectfamily.py b/gramps/gui/selectors/selectfamily.py
index f5c7c4969..caa378a11 100644
--- a/gramps/gui/selectors/selectfamily.py
+++ b/gramps/gui/selectors/selectfamily.py
@@ -32,6 +32,7 @@
#-------------------------------------------------------------------------
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.sgettext
+from gramps.gen.config import config
from ..views.treemodels import FamilyModel
from .baseselector import BaseSelector
from gramps.gui.display import display_help
@@ -67,8 +68,8 @@ class SelectFamily(BaseSelector):
def get_column_titles(self):
return [
(_('ID'), 75, BaseSelector.TEXT, 0),
- (_('Father'), 200, BaseSelector.TEXT, 1),
- (_('Mother'), 200, BaseSelector.TEXT, 2),
+ (config.get("preferences.father-label"), 200, BaseSelector.TEXT, 1),
+ (config.get("preferences.mother-label"), 200, BaseSelector.TEXT, 2),
(_('Last Change'), 150, BaseSelector.TEXT, 7),
]
diff --git a/gramps/gui/utils.py b/gramps/gui/utils.py
index e56b028e7..929756c0f 100644
--- a/gramps/gui/utils.py
+++ b/gramps/gui/utils.py
@@ -57,6 +57,7 @@ from gramps.gen.constfunc import has_display, is_quartz, mac, win
from gramps.gen.config import config
from gramps.gen.plug.utils import available_updates
from gramps.gen.errors import WindowActiveError
+from gramps.gen.relationship import RelationshipCalculator
#-------------------------------------------------------------------------
#
@@ -152,6 +153,12 @@ class ProgressMeter:
self.__dialog.vbox.set_spacing(10)
self.__dialog.vbox.set_border_width(24)
self.__dialog.set_size_request(400, 125)
+ if not parent: # if we don't have an explicit parent, try to find one
+ for win in Gtk.Window.list_toplevels():
+ if win.is_active():
+ parent = win
+ break
+ # if we still don't have a parent, give up
if parent:
self.__dialog.set_transient_for(parent)
self.__dialog.set_modal(True)
@@ -679,3 +686,27 @@ def text_to_clipboard(text):
clipboard = Gtk.Clipboard.get_for_display(Gdk.Display.get_default(),
Gdk.SELECTION_CLIPBOARD)
clipboard.set_text(text, -1)
+
+def parents_labels(db, family):
+ """
+ Get the label for parent
+ """
+ father = db.get_person_from_handle(family.get_father_handle())
+ mother = db.get_person_from_handle(family.get_mother_handle())
+
+ rel_father = config.get("preferences.father-label")
+ rel_mother = config.get("preferences.mother-label")
+
+ if len(family.get_child_ref_list()) > 0:
+ rel_father = _('Father')
+ rel_mother = _('Mother')
+ if father.gender == Person.FEMALE:
+ rel_father = rel_mother
+ if mother.gender == Person.MALE:
+ rel_mother = _('Father')
+ else:
+ rc = RelationshipCalculator()
+ rel_father = rc.get_one_relationship(db, mother, father)
+ rel_mother = rc.get_one_relationship(db, father, mother)
+
+ return [rel_father.split()[-1], rel_mother.split()[-1]]
diff --git a/gramps/gui/views/tags.py b/gramps/gui/views/tags.py
index 1c87b36c6..8808d46d0 100644
--- a/gramps/gui/views/tags.py
+++ b/gramps/gui/views/tags.py
@@ -51,6 +51,7 @@ from ..display import display_help
from ..dialog import ErrorDialog, QuestionDialog2
import gramps.gui.widgets.progressdialog as progressdlg
from ..actiongroup import ActionGroup
+from ..managedwindow import ManagedWindow
#-------------------------------------------------------------------------
#
@@ -245,9 +246,7 @@ class Tags(DbGUIElement):
"""
Display the Organize Tags dialog.
"""
- organize_dialog = OrganizeTagsDialog(self.db,
- self.uistate.window)
- organize_dialog.run()
+ OrganizeTagsDialog(self.db, self.uistate, [])
def cb_new_tag(self, action):
"""
@@ -255,8 +254,7 @@ class Tags(DbGUIElement):
"""
tag = Tag()
tag.set_priority(self.db.get_number_of_tags())
- new_dialog = EditTag(self.db, self.uistate.window, tag)
- new_dialog.run()
+ EditTag(self.db, self.uistate, [], tag)
if tag.get_handle():
self.tag_selected_rows(tag.get_handle())
@@ -313,16 +311,28 @@ def make_callback(func, tag_handle):
# Organize Tags Dialog
#
#-------------------------------------------------------------------------
-class OrganizeTagsDialog:
+class OrganizeTagsDialog(ManagedWindow):
"""
A dialog to enable the user to organize tags.
"""
- def __init__(self, db, parent_window):
+ def __init__(self, db, uistate, track):
+ ManagedWindow.__init__(self, uistate, track, self.__class__, modal=True)
+ # the self.top.run() below makes Gtk make it modal, so any change to
+ # the previous line's "modal" would require that line to be changed
self.db = db
- self.parent_window = parent_window
self.namelist = None
self.namemodel = None
self.top = self._create_dialog()
+ self.set_window(self.top, None, _('Organize Tags'))
+ self.setup_configs('interface.organizetagsdialog', 400, 350)
+ self.show()
+ self.run()
+ self.close()
+
+ # this is meaningless while it's modal, but since this ManagedWindow can
+ # have an EditTag ManagedWindow child it needs a non-None second argument
+ def build_menu_names(self, obj):
+ return (_('Organize Tags'), ' ')
def run(self):
"""
@@ -330,6 +340,8 @@ class OrganizeTagsDialog:
"""
self._populate_model()
while True:
+ # the self.top.run() makes Gtk make it modal, so any change to that
+ # line would require the ManagedWindow.__init__ to be changed also
response = self.top.run()
if response == Gtk.ResponseType.HELP:
display_help(webpage=WIKI_HELP_PAGE,
@@ -342,8 +354,6 @@ class OrganizeTagsDialog:
with DbTxn(_('Change Tag Priority'), self.db) as trans:
self.__change_tag_priority(trans)
- self.top.destroy()
-
def __priorities_changed(self):
"""
Return True if the tag priorities have changed else return False.
@@ -384,11 +394,7 @@ class OrganizeTagsDialog:
Create a dialog box to organize tags.
"""
# pylint: disable-msg=E1101
- title = _("%(title)s - Gramps") % {'title': _("Organize Tags")}
- top = Gtk.Dialog(title)
- top.set_default_size(400, 350)
- top.set_modal(True)
- top.set_transient_for(self.parent_window)
+ top = Gtk.Dialog(parent=self.parent_window)
top.vbox.set_spacing(5)
label = Gtk.Label(label='%s'
% _("Organize Tags"))
@@ -429,7 +435,6 @@ class OrganizeTagsDialog:
bbox.add(edit)
bbox.add(remove)
box.pack_start(bbox, 0, 0, 5)
- top.show_all()
return top
def cb_up_clicked(self, obj):
@@ -452,8 +457,7 @@ class OrganizeTagsDialog:
"""
tag = Tag()
tag.set_priority(self.db.get_number_of_tags())
- edit_dialog = EditTag(self.db, top, tag)
- edit_dialog.run()
+ EditTag(self.db, self.uistate, self.track, tag)
if tag.get_handle():
self.namemodel.add((tag.get_priority(),
@@ -470,8 +474,7 @@ class OrganizeTagsDialog:
return
tag = self.db.get_tag_from_handle(store.get_value(iter_, 1))
- edit_dialog = EditTag(self.db, top, tag)
- edit_dialog.run()
+ EditTag(self.db, self.uistate, self.track, tag)
store.set_value(iter_, 2, tag.get_name())
store.set_value(iter_, 3, tag.get_color())
@@ -492,7 +495,7 @@ class OrganizeTagsDialog:
"removed from all objects in the database."),
_("Yes"),
_("No"),
- parent=self.parent_window)
+ parent=self.window)
prompt = yes_no.run()
if prompt:
@@ -543,23 +546,39 @@ class OrganizeTagsDialog:
# Tag editor
#
#-------------------------------------------------------------------------
-class EditTag:
+class EditTag(ManagedWindow):
"""
A dialog to enable the user to create a new tag.
"""
- def __init__(self, db, parent_window, tag):
- self.parent_window = parent_window
- self.db = db
+ def __init__(self, db, uistate, track, tag):
self.tag = tag
+ if self.tag.get_handle():
+ self.title = _('Tag: %s') % self.tag.get_name()
+ else:
+ self.title = _('New Tag')
+ ManagedWindow.__init__(self, uistate, track, self.__class__, modal=True)
+ # the self.top.run() below makes Gtk make it modal, so any change to
+ # the previous line's "modal" would require that line to be changed
+ self.db = db
self.entry = None
self.color = None
self.top = self._create_dialog()
+ self.set_window(self.top, None, self.title)
+ self.setup_configs('interface.edittag', 320, 100)
+ self.show()
+ self.run()
+ self.close()
+
+ def build_menu_names(self, obj): # this is meaningless while it's modal
+ return (self.title, None)
def run(self):
"""
Run the dialog and return the result.
"""
while True:
+ # the self.top.run() makes Gtk make it modal, so any change to that
+ # line would require the ManagedWindow.__init__ to be changed also
response = self.top.run()
if response == Gtk.ResponseType.HELP:
display_help(webpage=WIKI_HELP_PAGE,
@@ -569,7 +588,6 @@ class EditTag:
if response == Gtk.ResponseType.OK:
self._save()
- self.top.destroy()
def _save(self):
"""
@@ -585,7 +603,7 @@ class EditTag:
if not self.tag.get_name():
ErrorDialog(_("Cannot save tag"),
_("The tag name cannot be empty"),
- parent=self.parent_window)
+ parent=self.window)
return
if not self.tag.get_handle():
@@ -604,14 +622,7 @@ class EditTag:
Create a dialog box to enter a new tag.
"""
# pylint: disable-msg=E1101
- if self.tag.get_handle():
- title = _('Tag: %s') % self.tag.get_name()
- else:
- title = _('New Tag')
- top = Gtk.Dialog(_("%(title)s - Gramps") % {'title': title})
- top.set_default_size(300, 100)
- top.set_modal(True)
- top.set_transient_for(self.parent_window)
+ top = Gtk.Dialog(parent=self.parent_window)
top.vbox.set_spacing(5)
hbox = Gtk.Box()
@@ -633,5 +644,4 @@ class EditTag:
top.add_button(_('_Help'), Gtk.ResponseType.HELP)
top.add_button(_('_Cancel'), Gtk.ResponseType.CANCEL)
top.add_button(_('_OK'), Gtk.ResponseType.OK)
- top.show_all()
return top
diff --git a/gramps/gui/widgets/progressdialog.py b/gramps/gui/widgets/progressdialog.py
index f9fd0c4e3..f522a002d 100644
--- a/gramps/gui/widgets/progressdialog.py
+++ b/gramps/gui/widgets/progressdialog.py
@@ -494,13 +494,17 @@ class GtkProgressDialog(Gtk.Dialog):
:type title: string
"""
Gtk.Dialog.__init__(self)
+ parent = None
if len(window_params) >= 2:
- self.set_transient_for(window_params[1])
- else:
+ parent = window_params[1] # we got an explicit parent
+ else: # try to find an active window
for win in Gtk.Window.list_toplevels():
if win.is_active():
- self.set_transient_for(win)
+ parent = win
break
+ # if we still don't have a parent, give up
+ if parent:
+ self.set_transient_for(parent)
if len(window_params) >= 3:
flags = window_params[2]
if Gtk.DialogFlags.MODAL & flags:
diff --git a/gramps/gui/widgets/reorderfam.py b/gramps/gui/widgets/reorderfam.py
index 03e70d92e..fb7be3347 100644
--- a/gramps/gui/widgets/reorderfam.py
+++ b/gramps/gui/widgets/reorderfam.py
@@ -45,6 +45,7 @@ _LOG = logging.getLogger("gui.widgets.reorderfam")
#-------------------------------------------------------------------------
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.sgettext
+from gramps.gen.config import config
from gramps.gen.db import DbTxn
from ..listmodel import ListModel
from ..managedwindow import ManagedWindow
@@ -81,8 +82,8 @@ class Reorder(ManagedWindow):
self.ptree = xml.get_object('ptree')
self.pmodel = ListModel(self.ptree,
- [(_('Father'), -1, 200),
- (_('Mother'), -1, 200),
+ [(config.get("preferences.father-label"), -1, 200),
+ (config.get("preferences.mother-label"), -1, 200),
('', -1, 0)])
self.ftree = xml.get_object('ftree')
diff --git a/gramps/plugins/textreport/familygroup.py b/gramps/plugins/textreport/familygroup.py
index 49ffd85bd..de4cc8409 100644
--- a/gramps/plugins/textreport/familygroup.py
+++ b/gramps/plugins/textreport/familygroup.py
@@ -38,6 +38,7 @@ from functools import partial
#------------------------------------------------------------------------
from gramps.gen.const import GRAMPS_LOCALE as glocale
_ = glocale.translation.sgettext
+from gramps.gen.config import config
from gramps.gen.lib import EventRoleType, EventType, NoteType, Person
from gramps.gen.plug.menu import BooleanOption, FamilyOption, FilterOption
from gramps.gen.plug.report import Report
@@ -616,8 +617,26 @@ class FamilyGroup(Report):
self.doc.end_paragraph()
family = self.db.get_family_from_handle(family_handle)
+ parents = utils.parents_labels(self.db, family, self._locale)
- self.dump_parent(self._("Husband"), family.get_father_handle())
+ rel_father = config.get("preferences.father-label")
+ rel_mother = config.get("preferences.mother-label")
+
+ nb_children = len(family.get_child_ref_list())
+ father = self.db.get_person_from_handle(family.get_father_handle())
+ mother = self.db.get_person_from_handle(family.get_mother_handle())
+ if nb_children > 0:
+ rel_father = self._("Father")
+ rel_mother = self._("Mother")
+ if father.gender == 0:
+ rel_father = rel_mother
+ if mother.gender == 1:
+ rel_mother = rel_father
+ else:
+ rel_father = parents[0]
+ rel_mother = parents[1]
+
+ self.dump_parent(rel_father, family.get_father_handle())
self.doc.start_paragraph("FGR-blank")
self.doc.end_paragraph()
@@ -626,7 +645,7 @@ class FamilyGroup(Report):
self.doc.start_paragraph("FGR-blank")
self.doc.end_paragraph()
- self.dump_parent(self._("Wife"), family.get_mother_handle())
+ self.dump_parent(rel_mother, family.get_mother_handle())
length = len(family.get_child_ref_list())
if length > 0:
diff --git a/gramps/plugins/textreport/tagreport.py b/gramps/plugins/textreport/tagreport.py
index 4d47efe00..11c17e2dd 100644
--- a/gramps/plugins/textreport/tagreport.py
+++ b/gramps/plugins/textreport/tagreport.py
@@ -245,13 +245,13 @@ class TagReport(Report):
self.doc.start_cell('TR-TableCell')
self.doc.start_paragraph('TR-Normal-Bold')
- self.doc.write_text(self._("Father"))
+ self.doc.write_text(self._("Father, Partner, Spouse"))
self.doc.end_paragraph()
self.doc.end_cell()
self.doc.start_cell('TR-TableCell')
self.doc.start_paragraph('TR-Normal-Bold')
- self.doc.write_text(self._("Mother"))
+ self.doc.write_text(self._("Mother, Partner, Spouse"))
self.doc.end_paragraph()
self.doc.end_cell()
diff --git a/gramps/plugins/view/familyview.py b/gramps/plugins/view/familyview.py
index 24c3c203e..6503b497c 100644
--- a/gramps/plugins/view/familyview.py
+++ b/gramps/plugins/view/familyview.py
@@ -77,8 +77,8 @@ class FamilyView(ListView):
# column definitions
COLUMNS = [
(_('ID'), TEXT, None),
- (_('Father'), TEXT, None),
- (_('Mother'), TEXT, None),
+ (config.get("preferences.father-label"), TEXT, None),
+ (config.get("preferences.mother-label"), TEXT, None),
(_('Relationship'), TEXT, None),
(_('Marriage Date'), MARKUP, None),
(_('Private'), ICON, 'gramps-lock'),
@@ -202,9 +202,9 @@ class FamilyView(ListView):
self.all_action = Gtk.ActionGroup(name=self.title + "/FamilyAll")
self.all_action.add_actions([
- ('MakeFatherActive', None, _("Make Father Active Person"),
+ ('MakeFatherActive', None, _("Make %s Active Person") % config.get("preferences.father-label"),
None, None, self._make_father_active),
- ('MakeMotherActive', None, _("Make Mother Active Person"),
+ ('MakeMotherActive', None, _("Make %s Active Person") % config.get("preferences.mother-label"),
None, None, self._make_mother_active),
('QuickReport', None, _("Quick View"), None, None, None),
])
diff --git a/gramps/plugins/view/geofamclose.py b/gramps/plugins/view/geofamclose.py
index d0c81ea4e..b5a9fb5a3 100644
--- a/gramps/plugins/view/geofamclose.py
+++ b/gramps/plugins/view/geofamclose.py
@@ -605,7 +605,8 @@ class GeoFamClose(GeoGraphyView):
if handle:
father = dbstate.db.get_person_from_handle(handle)
if father:
- comment = _("Father : %(id)s : %(name)s") % {
+ comment = _("%(father)s : %(id)s : %(name)s") % {
+ 'father': config.get("preferences.father-label"),
'id': father.gramps_id,
'name': _nd.display(father)}
self._createmap_for_one_person(father, color,
@@ -614,7 +615,8 @@ class GeoFamClose(GeoGraphyView):
if handle:
mother = dbstate.db.get_person_from_handle(handle)
if mother:
- comment = _("Mother : %(id)s : %(name)s") % {
+ comment = _("%(mother)s : %(id)s : %(name)s") % {
+ 'mother': config.get("preferences.mother-label"),
'id': mother.gramps_id,
'name': _nd.display(mother)}
self._createmap_for_one_person(mother, color,
diff --git a/gramps/plugins/view/geofamily.py b/gramps/plugins/view/geofamily.py
index 78825118b..0dd72c90a 100644
--- a/gramps/plugins/view/geofamily.py
+++ b/gramps/plugins/view/geofamily.py
@@ -342,7 +342,8 @@ class GeoFamily(GeoGraphyView):
if handle:
father = dbstate.db.get_person_from_handle(handle)
if father:
- comment = _("Father : %(id)s : %(name)s") % {
+ comment = _("%(father)s : %(id)s : %(name)s") % {
+ 'father': config.get("preferences.father-label"),
'id': father.gramps_id,
'name': _nd.display(father)}
self._createpersonmarkers(dbstate, father,
@@ -351,7 +352,8 @@ class GeoFamily(GeoGraphyView):
if handle:
mother = dbstate.db.get_person_from_handle(handle)
if mother:
- comment = _("Mother : %(id)s : %(name)s") % {
+ comment = _("%(mother)s : %(id)s : %(name)s") % {
+ 'mother': config.get("preferences.mother-label"),
'id': mother.gramps_id,
'name': _nd.display(mother)}
self._createpersonmarkers(dbstate, mother,
diff --git a/gramps/plugins/view/relview.py b/gramps/plugins/view/relview.py
index 9caf7970b..28e3d19db 100644
--- a/gramps/plugins/view/relview.py
+++ b/gramps/plugins/view/relview.py
@@ -67,7 +67,7 @@ from gramps.gen.display.name import displayer as name_displayer
from gramps.gen.display.place import displayer as place_displayer
from gramps.gen.utils.file import media_path_full
from gramps.gen.utils.alive import probably_alive
-from gramps.gui.utils import open_file_with_default_application
+from gramps.gui.utils import open_file_with_default_application, parents_labels
from gramps.gen.datehandler import displayer, get_date
from gramps.gen.utils.thumbnails import get_thumbnail_image
from gramps.gen.config import config
@@ -896,8 +896,9 @@ class RelationshipView(NavigationView):
self.row += 1 # now advance it
else:
self.write_label(_("%s:") % _('Parents'), family, True, person)
- self.write_person(_('Father'), family.get_father_handle())
- self.write_person(_('Mother'), family.get_mother_handle())
+ parents = parents_labels(self.dbstate.db, family)
+ self.write_person(parents[0][0].upper()+parents[0][1:].lower(), family.get_father_handle())
+ self.write_person(parents[1][0].upper()+parents[1][1:].lower(), family.get_mother_handle())
if self.show_siblings:
active = self.get_active()
diff --git a/gramps/plugins/webreport/narrativeweb.py b/gramps/plugins/webreport/narrativeweb.py
index 855edea19..82a01dc44 100644
--- a/gramps/plugins/webreport/narrativeweb.py
+++ b/gramps/plugins/webreport/narrativeweb.py
@@ -7436,7 +7436,7 @@ class PersonPages(BasePage):
# The parent may not be birth father in ths family, because it
# may be a step family. However, it will be odd to display the
# parent as anything other than "Father"
- reln = self._("Father")
+ reln = self._("Father, Partner, Spouse")
else:
# Stepfather may not always be quite right (for example, it may
# actually be StepFather-in-law), but it is too expensive to
@@ -7450,7 +7450,7 @@ class PersonPages(BasePage):
mother_handle = family.get_mother_handle()
if mother_handle:
if mother_handle == birthmother:
- reln = self._("Mother")
+ reln = self._("Mother, Partner, Spouse"")
else:
reln = self._("Stepmother")
trow = Html("tr") + (self.display_parent(mother_handle, reln, None))
diff --git a/po/it.po b/po/it.po
index 142eef1f8..586e31f3f 100644
--- a/po/it.po
+++ b/po/it.po
@@ -57,20 +57,20 @@
#
# Marco Molteni , 2001-2002;.
# Lorenzo Cappelletti , 2003.
-# Luigi Toscano , 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016.
+# Luigi Toscano , 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017.
msgid ""
msgstr ""
"Project-Id-Version: gramps\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-01-05 09:16+0100\n"
-"PO-Revision-Date: 2016-01-11 01:40+0100\n"
+"PO-Revision-Date: 2017-01-11 01:55+0100\n"
"Last-Translator: Luigi Toscano \n"
"Language-Team: Italian \n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: Lokalize 1.5\n"
+"X-Generator: Lokalize 2.0\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: ../data/gramps.appdata.xml.in.h:1
@@ -1832,6 +1832,7 @@ msgid ""
"Use the --force-unlock option if you are sure that the database is not in "
"use."
msgstr ""
+"Usare l'opzione --force-unlock se si è certi che il database non sia in uso."
#. already errors encountered. Show first one on terminal and exit
#: ../gramps/cli/grampscli.py:350
@@ -1863,7 +1864,7 @@ msgstr "=nomefile"
#: ../gramps/cli/plug/__init__.py:284
msgid "Output file name. MANDATORY"
-msgstr ""
+msgstr "Nome del file di output. RICHIESTO."
#: ../gramps/cli/plug/__init__.py:285
msgid "=format"
@@ -1948,7 +1949,7 @@ msgstr ""
"accettabili"
#: ../gramps/cli/plug/__init__.py:504
-#, fuzzy, python-format
+#, python-format
msgid ""
"Ignoring '%(notranslate1)s=%(notranslate2)s' and using '%(notranslate1)s="
"%(notranslate3)s'."
@@ -1959,7 +1960,7 @@ msgstr ""
#: ../gramps/cli/plug/__init__.py:510
#, python-format
msgid "Use '%(notranslate)s' to see valid values."
-msgstr "Usare «%(notranslate)s» per vedere i valori validi."
+msgstr "Usare «%(notranslate)s» per vedere valori validi."
#: ../gramps/cli/plug/__init__.py:528
#, python-format
@@ -3774,18 +3775,16 @@ msgid "Matches a citation with a source with a specified Gramps ID"
msgstr "Estrae le citazioni con fonte avente un ID Gramps specifico"
#: ../gramps/gen/filters/rules/citation/_hassourcenoteregexp.py:52
-#, fuzzy
msgid "Citations having source notes containing "
-msgstr "Citazioni con note fonte contenenti "
+msgstr "Citazioni con note fonte contenenti "
#: ../gramps/gen/filters/rules/citation/_hassourcenoteregexp.py:53
-#, fuzzy
msgid ""
"Matches citations whose source notes contain a substring or match a regular "
"expression"
msgstr ""
-"Estrae le citazioni le cui note contengono testo corrispondente ad "
-"un'espressione regolare"
+"Estrae le citazioni le cui note fonte contengono una sotto-stringa o "
+"corrispondono ad un'espressione regolare"
#: ../gramps/gen/filters/rules/citation/_hastag.py:48
#: ../gramps/gen/filters/rules/event/_hastag.py:48
@@ -3823,7 +3822,7 @@ msgstr "Citazioni con volume/pagina contenenti "
#: ../gramps/gen/filters/rules/citation/_matchespagesubstringof.py:44
msgid "Matches citations whose Volume/Page contains a certain substring"
msgstr ""
-"Estrae le citazioni il cui volume/pagina contiene una certa sottostringa"
+"Estrae le citazioni il cui volume/pagina contiene una certa sotto-stringa"
#: ../gramps/gen/filters/rules/citation/_matchesrepositoryfilter.py:45
#: ../gramps/gen/filters/rules/source/_matchesrepositoryfilter.py:43
@@ -5342,17 +5341,17 @@ msgstr ""
"persona specificata"
#: ../gramps/gen/filters/rules/person/_isdescendantfamilyoffiltermatch.py:47
-#, fuzzy
msgid "Descendant family members of match"
-msgstr "Membri della famiglia discendenti da "
+msgstr ""
+"Membri della famiglia discendenti dalle persone corrispondenti a "
#: ../gramps/gen/filters/rules/person/_isdescendantfamilyoffiltermatch.py:49
-#, fuzzy
msgid ""
"Matches people that are descendants or the spouse of anybody matched by a "
"filter"
msgstr ""
-"Estrae le persone che discendono da qualcuno corrispondente ad un filtro"
+"Estrae le persone che discendono da o sono coniugi di qualcuno "
+"corrispondente ad un filtro"
#: ../gramps/gen/filters/rules/person/_isdescendantof.py:46
msgid "Descendants of "
@@ -5732,9 +5731,8 @@ msgstr "Nome:"
#: ../gramps/gen/filters/rules/place/_hasdata.py:49
#: ../gramps/gui/editors/filtereditor.py:112
#: ../gramps/gui/editors/filtereditor.py:557
-#, fuzzy
msgid "Place type:"
-msgstr "Tipo nome"
+msgstr "Tipo luogo:"
#: ../gramps/gen/filters/rules/place/_hasdata.py:50
#: ../gramps/gui/glade/editplace.glade:213
@@ -5876,14 +5874,12 @@ msgid "Matches places with the particular tag"
msgstr "Estrae i luoghi con una particolare etichetta"
#: ../gramps/gen/filters/rules/place/_hastitle.py:49
-#, fuzzy
msgid "Places matching a title"
-msgstr "Luoghi corrispondenti al "
+msgstr "Luoghi corrispondenti ad un titolo"
#: ../gramps/gen/filters/rules/place/_hastitle.py:50
-#, fuzzy
msgid "Matches places with a particular title"
-msgstr "Estrae i luoghi con una particolare etichetta"
+msgstr "Estrae i luoghi con un titolo particolare"
#: ../gramps/gen/filters/rules/place/_inlatlonneighborhood.py:49
#: ../gramps/gui/glade/editplaceref.glade:244
@@ -6179,18 +6175,16 @@ msgid "Matches sources with a certain number of repository references"
msgstr "Estrae le fonti con un certo numero di riferimenti a depositi"
#: ../gramps/gen/filters/rules/source/_hasrepositorycallnumberref.py:44
-#, fuzzy
msgid "Sources with repository reference containing in \"Call Number\""
-msgstr "Fonti con contenenti "
+msgstr "Fonti con riferimento a deposito contente in «Segnatura»"
#: ../gramps/gen/filters/rules/source/_hasrepositorycallnumberref.py:45
-#, fuzzy
msgid ""
"Matches sources with a repository reference\n"
"containing a substring in \"Call Number\""
msgstr ""
-"Estrae le fonti le cui note contengono testo corrispondente ad una "
-"sottostringa"
+"Estrae le fonti con riferimenti a deposito contenti\n"
+"una sottostringa nella «Segnatura»"
#: ../gramps/gen/filters/rules/source/_hastag.py:49
msgid "Sources with the "
@@ -6209,17 +6203,17 @@ msgid "Matches sources matched by the specified filter name"
msgstr "Estrae le fonti che corrispondono al filtro indicato"
#: ../gramps/gen/filters/rules/source/_matchesrepositoryfilter.py:44
-#, fuzzy
msgid "Sources with repository reference matching the "
-msgstr "Eventi con fonti che corrispondono al "
+msgstr ""
+"Fonti con riferimenti a deposito che corrispondono al "
#: ../gramps/gen/filters/rules/source/_matchesrepositoryfilter.py:45
-#, fuzzy
msgid ""
"Matches sources with a repository reference that match a certain\n"
"repository filter"
msgstr ""
-"Estrae le persone che hanno eventi corrispondenti ad un certo filtro eventi"
+"Estrae le fonti con riferimenti a deposito che corrispondono\n"
+"ad un certo filtro per depositi"
#: ../gramps/gen/filters/rules/source/_matchestitlesubstringof.py:43
msgid "Sources with title containing "
@@ -7976,7 +7970,7 @@ msgstr "Distretto"
#: ../gramps/gen/lib/placetype.py:77 ../gramps/plugins/view/geoplaces.py:540
msgid "Borough"
-msgstr ""
+msgstr "Circoscrizione"
#: ../gramps/gen/lib/placetype.py:78 ../gramps/plugins/view/geoplaces.py:588
msgid "Municipality"
@@ -9177,10 +9171,10 @@ msgstr ""
"Impossibile aprire l'elenco di file di banche dati recenti {file}: {error}"
#: ../gramps/gen/recentfiles.py:265
-#, fuzzy, python-brace-format
+#, python-brace-format
msgid "Unable to open list of recent DBs file {fname}: {error}"
msgstr ""
-"Impossibile aprire l'elenco di file di banche dati recenti {file}: {error}"
+"Impossibile aprire l'elenco di file di banche dati recenti {fname}: {error}"
#: ../gramps/gen/recentfiles.py:269
#, python-brace-format
@@ -9190,6 +9184,11 @@ msgid ""
"If you're sure there is no problem with other files, delete it, and restart "
"Gramps."
msgstr ""
+"Errore analizzando l'elenco di banche dati recenti dal file {fname}: "
+"{error}.\n"
+"Questo potrebbe indicare un danno nei file.\n"
+"Se si è sicuri dell'assenza di problemi in altri file, allora lo si può "
+"eliminare e riavviare Gramps."
#: ../gramps/gen/relationship.py:1273
#: ../gramps/plugins/view/pedigreeview.py:1530
@@ -9636,22 +9635,20 @@ msgid "the filter"
msgstr "il filtro"
#: ../gramps/gen/utils/grampslocale.py:852
-#, fuzzy
msgid "the citation"
-msgstr "Ogni citazione"
+msgstr "la citazione"
#: ../gramps/gen/utils/grampslocale.py:854
msgid "See details"
msgstr "Vedere i dettagli"
#: ../gramps/gen/utils/image.py:123
-#, fuzzy
msgid ""
"WARNING: PIL module not loaded. Image cropping in report files will be "
"impaired."
msgstr ""
-"ATTENZIONE: il modulo PIL non è caricato. Le funzionalità relative al "
-"ritaglio di immagini nei resoconti non saranno funzionanti."
+"ATTENZIONE: il modulo PIL non è caricato. Il ritaglio delle immagini nei "
+"file dei resoconti non sarà funzionante."
#: ../gramps/gen/utils/keyword.py:54
msgid "Person|TITLE"
@@ -11050,7 +11047,7 @@ msgstr "_Interrompere"
#: ../gramps/gui/dbloader.py:202 ../gramps/gui/dbloader.py:217
#: ../gramps/gui/dbloader.py:247
msgid "Are you sure you want to upgrade this Family Tree?"
-msgstr "Si desidera aggiornare davvero questo albero genealogico?"
+msgstr "Si vuole davvero aggiornare questo albero genealogico?"
#: ../gramps/gui/dbloader.py:205 ../gramps/gui/dbloader.py:220
#: ../gramps/gui/dbloader.py:250
@@ -11070,16 +11067,18 @@ msgid "Cancel"
msgstr "Annulla"
#: ../gramps/gui/dbloader.py:232
-#, fuzzy
msgid "Are you sure you want to downgrade this Family Tree?"
msgstr ""
-"Si desidera tornare alla versione precedente di questo albero genealogico?"
+"Si vuole davvero tornare alla versione precedente di questo albero "
+"genealogico?"
#: ../gramps/gui/dbloader.py:235
msgid ""
"I have made a backup,\n"
"please downgrade my Family Tree"
msgstr ""
+"La copia di sicurezza è stata effettuata, ripristinare\n"
+"la versione una versione precedente dell'albero genealogico."
#: ../gramps/gui/dbloader.py:321
msgid "All files"
@@ -12218,22 +12217,18 @@ msgid "Create and add a new place name"
msgstr "Crea e aggiunge un nuovo nome di luogo"
#: ../gramps/gui/editors/displaytabs/placenameembedlist.py:54
-#, fuzzy
msgid "Remove the existing place name"
msgstr "Rimuove il nome esistente del luogo"
#: ../gramps/gui/editors/displaytabs/placenameembedlist.py:55
-#, fuzzy
msgid "Edit the selected place name"
msgstr "Modifica il nome del luogo selezionato"
#: ../gramps/gui/editors/displaytabs/placenameembedlist.py:56
-#, fuzzy
msgid "Move the selected place name upwards"
msgstr "Sposta in alto il nome del luogo selezionato"
#: ../gramps/gui/editors/displaytabs/placenameembedlist.py:57
-#, fuzzy
msgid "Move the selected place name downwards"
msgstr "Sposta in basso il nome del luogo selezionato"
@@ -12444,6 +12439,11 @@ msgid ""
"location of the information referenced within the source in the 'Volume/"
"Page' field."
msgstr ""
+"Una fonte è qualsiasi cosa (testimonianza personale, registrazione video, "
+"fotografia, rubrica di giornale, lapide,...) da cui possono essere estratte "
+"delle informazioni. Per creare una citazione, selezionare per prima cosa la "
+"fonte selezionata, e quindi registrare la posizione delle informazioni a cui "
+"fa riferimento la fonte nel campo «Volume/pagina»."
#: ../gramps/gui/editors/editcitation.py:300
msgid "Cannot save citation. ID already exists."
@@ -13360,7 +13360,6 @@ msgstr "Il nome del luogo non può essere vuoto"
#: ../gramps/gui/editors/editplaceref.py:58
#: ../gramps/gui/editors/editplaceref.py:99
-#, fuzzy
msgid "Place Reference Editor"
msgstr "Editor riferimento luogo"
@@ -13666,9 +13665,8 @@ msgstr ""
"senza fonti."
#: ../gramps/gui/editors/filtereditor.py:562
-#, fuzzy
msgid "Include selected Gramps ID"
-msgstr "Includi gli ID Gramps"
+msgstr "Includi gli ID Gramps selezionati"
#: ../gramps/gui/editors/filtereditor.py:564
msgid "Use exact case of letters"
@@ -13829,7 +13827,7 @@ msgstr "Per selezionare una fonte, trascinare oppure usare i pulsanti"
#: ../gramps/gui/editors/objectentries.py:343
msgid "First add a source using the button"
-msgstr ""
+msgstr "Per prima cosa aggiungere una fonte usando il pulsante"
#: ../gramps/gui/editors/objectentries.py:344
msgid "Edit source"
@@ -14254,6 +14252,8 @@ msgid ""
"If you check this button, your next answer will apply to the rest of the "
"selected items"
msgstr ""
+"Se il pulsante viene premuto, la risposta successiva si applicherà al resto "
+"degli elementi selezionati"
#: ../gramps/gui/glade/dialog.glade:763 ../gramps/gui/glade/dialog.glade:780
#: ../gramps/gui/glade/dialog.glade:892
@@ -14830,7 +14830,7 @@ msgstr "Con_tea:"
msgid "Third level of place division. Eg., in the USA a county."
msgstr ""
"Terzo livello della suddivisione di un luogo. Ad esempio, una contea negli "
-"USA"
+"USA."
#: ../gramps/gui/glade/editlocation.glade:192
msgid "_State:"
@@ -14957,11 +14957,10 @@ msgid "Double click image to view in an external viewer"
msgstr "Doppio clic sull'immagine per aprirla in un visualizzatore esterno"
#: ../gramps/gui/glade/editmediaref.glade:533
-#, fuzzy
msgid "Type of media object as indicated by the computer, eg Image, Video, ..."
msgstr ""
-"Tipo dell'oggetto multimediale come indicato dal computer, ad es. Immagine, "
-"Video, ..."
+"Tipo dell'oggetto multimediale come indicato dal computer, ad es. immagine, "
+"video, ..."
#: ../gramps/gui/glade/editmediaref.glade:650
msgid "Select a file"
@@ -14994,7 +14993,6 @@ msgid "Suffi_x:"
msgstr "S_uffisso:"
#: ../gramps/gui/glade/editname.glade:235
-#, fuzzy
msgid "C_all Name:"
msgstr "Ps_eudonimo:"
@@ -15040,7 +15038,7 @@ msgstr "Un nome descrittivo dato al luogo o in aggiunta al nome ufficiale."
#: ../gramps/gui/glade/editname.glade:333
#, fuzzy
msgid "Given Name(s) "
-msgstr "Nome"
+msgstr "Nome/i"
#: ../gramps/gui/glade/editname.glade:384
msgid "_Family Nick Name:"
@@ -15130,7 +15128,7 @@ msgstr ""
#: ../gramps/gui/glade/editnote.glade:101
#, fuzzy
msgid "Styled Text Editor"
-msgstr "Editor stile"
+msgstr "Editor di testo con stile"
#: ../gramps/gui/glade/editnote.glade:146
msgid "A type to classify the note."
@@ -15252,12 +15250,19 @@ msgid ""
"occasions. Events can be shared between people, each indicating their role "
"in the event."
msgstr ""
+"Descrizione dell'associazione, ad es. padrino, amica, ...\n"
+"\n"
+"Nota: usare invece gli eventi per le relazioni che collegano un intervalli "
+"temporali od occasioni specifiche. Gli eventi possono essere condivisi tra "
+"le persone, e per ognuna si può indicare il relativo role nell'evento."
#: ../gramps/gui/glade/editpersonref.glade:176
msgid ""
"Use the select button to choose a person that has an association to the "
"edited person."
msgstr ""
+"Usare il pulsante selezionato per scegliere una persona che ha "
+"un'associazione con la persona che viene modificata."
#: ../gramps/gui/glade/editpersonref.glade:193
msgid "Select a person that has an association to the edited person."
@@ -15354,6 +15359,8 @@ msgid ""
"Language in which the name is written. Valid values are two character ISO "
"codes. For example: en, fr, de, nl ..."
msgstr ""
+"Lingua in cui il nome è scritto. I valori validi sono i codici ISO a due "
+"caratteri. Ad esempio: en, fr, de, nl, it, ..."
#: ../gramps/gui/glade/editplaceref.glade:280
msgid ""
@@ -16379,6 +16386,15 @@ msgid ""
"See the Gramps README documentation for installation prerequisites,\n"
"typically located in /usr/share/doc/gramps.\n"
msgstr ""
+"Le traduzioni di GTK per la lingua attuale (%(language)s) non sono "
+"disponibili.\n"
+"%(bold_start)sGramps%(bold_end)s continuerà comunque.\n"
+"Di conseguenza l'interfaccia sarà probabilmente non perfettamente "
+"funzionante, specialmente per le lingue scritte da destra verso sinistra.\n"
+"\n"
+"Consultare la documentazione di Gramps README per i prerequisiti di "
+"installazione,\n"
+"il file si trova normalmente in /usr/share/doc/gramps.\n"
#: ../gramps/gui/grampsgui.py:297
msgid "Error parsing arguments"
@@ -17826,7 +17842,6 @@ msgstr "Seleziona fonte o citazione"
#: ../gramps/gui/selectors/selectcitation.py:74
#: ../gramps/plugins/view/citationtreeview.py:93
-#, fuzzy
msgid "Source: Title or Citation: Volume/Page"
msgstr "Fonte: titolo o citazione: volume/pagina"
@@ -17932,6 +17947,8 @@ msgid ""
"You have no installed dictionaries. Either install one or disable spell "
"checking"
msgstr ""
+"Non ci sono dizionari installati. Bisogna installarne almeno uno o "
+"disabilitare il controllo ortografico"
#: ../gramps/gui/spell.py:153
#, python-format
@@ -17960,7 +17977,7 @@ msgstr ""
#: ../gramps/gui/undohistory.py:57
msgid "11"
-msgstr ""
+msgstr "11"
#: ../gramps/gui/undohistory.py:73
msgid "Undo History"
@@ -28794,15 +28811,15 @@ msgstr ""
#: ../gramps/plugins/lib/maps/geography.py:425
#, python-format
msgid "Clear the '%(map)s' tiles cache."
-msgstr "Pulisci la cache dei taselli di «%(map)s»"
+msgstr "Pulisci la cache dei taselli di «%(map)s»."
#: ../gramps/plugins/lib/maps/geography.py:882
msgid "You can't use the print functionality"
-msgstr ""
+msgstr "Non è possibile usare la funzione di stampa"
#: ../gramps/plugins/lib/maps/geography.py:883
msgid "Your Gtk version is too old."
-msgstr ""
+msgstr "La versione di Gtk è troppo vecchia."
#: ../gramps/plugins/lib/maps/geography.py:924
#: ../gramps/plugins/view/geoclose.py:550
@@ -33800,7 +33817,7 @@ msgstr "Carattere del testo"
#: ../gramps/plugins/view/fanchartview.py:298
#, fuzzy
msgid "Gender colors"
-msgstr "Colori per il sesso"
+msgstr "Colori del sesso"
#: ../gramps/plugins/view/fanchart2wayview.py:306
#: ../gramps/plugins/view/fanchartdescview.py:303
@@ -33819,7 +33836,7 @@ msgstr "Gradiente in base all'età (0-100)"
#: ../gramps/plugins/view/fanchartview.py:302
#, fuzzy
msgid "Single main (filter) color"
-msgstr "Colore principale singolo (filtro)"
+msgstr "Colore principale (per filtro) singolo"
#: ../gramps/plugins/view/fanchart2wayview.py:310
#: ../gramps/plugins/view/fanchartdescview.py:307
@@ -33836,14 +33853,16 @@ msgstr "Bianco"
#: ../gramps/plugins/view/fanchart2wayview.py:312
#: ../gramps/plugins/view/fanchartdescview.py:309
#: ../gramps/plugins/view/fanchartview.py:305
+#, fuzzy
msgid "Color scheme classic report"
-msgstr ""
+msgstr "Schema di colore classico per resconto"
#: ../gramps/plugins/view/fanchart2wayview.py:313
#: ../gramps/plugins/view/fanchartdescview.py:310
#: ../gramps/plugins/view/fanchartview.py:306
+#, fuzzy
msgid "Color scheme classic view"
-msgstr ""
+msgstr "Schema di colore classico per la vista"
#: ../gramps/plugins/view/fanchart2wayview.py:322
#: ../gramps/plugins/view/fanchartdescview.py:319
@@ -33942,9 +33961,8 @@ msgid "Quadrant"
msgstr "Quadrante"
#: ../gramps/plugins/view/fanchartview.py:344
-#, fuzzy
msgid "Show children ring"
-msgstr "Figli mancanti"
+msgstr "Mostrare l'anello dei figli"
#: ../gramps/plugins/view/geoclose.py:143
#: ../gramps/plugins/view/geography.gpr.py:159
@@ -33953,7 +33971,7 @@ msgstr "Hanno avuto la possibilità di incontrarsi?"
#: ../gramps/plugins/view/geoclose.py:177
msgid "GeoClose"
-msgstr ""
+msgstr "GeoVicinanza"
#: ../gramps/plugins/view/geoclose.py:230
#, python-format
@@ -33974,10 +33992,13 @@ msgid "You must choose one reference person."
msgstr "Bisogna scegliere una persona di riferimento."
#: ../gramps/plugins/view/geoclose.py:249
+#, fuzzy
msgid ""
"Go to the person view and select the people you want to compare. Return to "
"this view and use the history."
msgstr ""
+"Va alla vista delle persone e seleziona le persone da confrontare. Tornando "
+"a questa vista si può usare la cronologia."
#: ../gramps/plugins/view/geoclose.py:299
msgid "reference _Person"
@@ -33989,9 +34010,8 @@ msgid "Select the person which is the reference for life ways"
msgstr "Seleziona la persona di riferimento per il modo di vita"
#: ../gramps/plugins/view/geoclose.py:315
-#, fuzzy
msgid "Select the person which will be our reference."
-msgstr "Selezionare la persona che sarà il riferimento."
+msgstr "Seleziona la persona che sarà il riferimento."
#: ../gramps/plugins/view/geoclose.py:412
#: ../gramps/plugins/view/geofamclose.py:496
@@ -34015,6 +34035,12 @@ msgid ""
"The value 1 means about 4.6 miles or 7.5 kms.\n"
"The value is in tenth of degree."
msgstr ""
+"Il raggio di probabilità della zona di incontro.\n"
+"La zona colorata è approssimativa.\n"
+"La zona di incontro è mostrata solo per la persona di riferimento.\n"
+"Il valore 9 indica circa 42 miglia o 67 km.\n"
+"Il valore 1 indica circa 4,6 miglia o 7,5 km.\n"
+"Il valore è in decimi di grado."
#: ../gramps/plugins/view/geoclose.py:602
#: ../gramps/plugins/view/geofamclose.py:792
@@ -34052,7 +34078,6 @@ msgstr "Mostra tutti gli eventi"
#: ../gramps/plugins/view/geoevents.py:408
#: ../gramps/plugins/view/geoplaces.py:484
#: ../gramps/plugins/view/geoplaces.py:489
-#, fuzzy
msgid "Centering on Place"
msgstr "Centrare su un luogo"
@@ -34062,9 +34087,8 @@ msgid "Have these two families been able to meet?"
msgstr "Hanno mai avuto la possibilità di incontrarsi, queste due famiglie?"
#: ../gramps/plugins/view/geofamclose.py:174
-#, fuzzy
msgid "GeoFamClose"
-msgstr "GeoFamiglia"
+msgstr "GeoVicinanzaFamiglia"
#: ../gramps/plugins/view/geofamclose.py:217
#: ../gramps/plugins/view/geofamily.py:291
@@ -34139,13 +34163,18 @@ msgid ""
"The value 1 means about 4.6 miles or 7.5 kms.\n"
"The value is in tenth of degree."
msgstr ""
+"Il raggio di probabilità della zona di incontro.\n"
+"La zona colorata è approssimativa.\n"
+"La zona di incontro è mostrata solo per la famiglia di riferimento.\n"
+"Il valore 9 indica circa 42 miglia o 67 km.\n"
+"Il valore 1 indica circa 4,6 miglia o 7,5 km.\n"
+"Il valore è in decimi di grado."
#: ../gramps/plugins/view/geofamily.py:115
msgid "Family places map"
msgstr "Mappa luoghi familiari"
#: ../gramps/plugins/view/geofamily.py:137
-#, fuzzy
msgid "GeoFamily"
msgstr "GeoFamiglia"
@@ -34251,7 +34280,7 @@ msgstr "Discendenza della persona attiva."
#: ../gramps/plugins/view/geomoves.py:173
msgid "GeoMoves"
-msgstr ""
+msgstr "GeoSpostamenti"
#: ../gramps/plugins/view/geomoves.py:490
#, python-format
@@ -34279,7 +34308,6 @@ msgid "Person places map"
msgstr "Mappa luoghi persona"
#: ../gramps/plugins/view/geoperson.py:170
-#, fuzzy
msgid "GeoPerson"
msgstr "GeoPersona"
@@ -34318,7 +34346,6 @@ msgid "Places map"
msgstr "Mappa dei luoghi"
#: ../gramps/plugins/view/geoplaces.py:185
-#, fuzzy
msgid "GeoPlaces"
msgstr "GeoLuoghi"
@@ -34366,7 +34393,7 @@ msgstr "È possibile cambiare questo valore nelle opzioni geografiche."
#: ../gramps/plugins/view/geoplaces.py:409
msgid "In this case, it may take time to show all markers."
msgstr ""
-"In questo caso, mostrare tutti i marcatori potrebbe richiedere del tempo"
+"In questo caso, mostrare tutti i marcatori potrebbe richiedere del tempo."
#: ../gramps/plugins/view/geoplaces.py:441
#: ../gramps/plugins/view/geoplaces.py:465
@@ -34936,11 +34963,9 @@ msgid "Postal Code"
msgstr "Codice postale"
#: ../gramps/plugins/webreport/narrativeweb.py:1675
-#, fuzzy, python-format
+#, python-format
msgid "Generated by %(gramps_home_html_start)sGramps%(html_end)s %(version)s"
-msgstr ""
-"Generato da %(gramps_home_html_start)sGramps%(html_end)s %(version)s il "
-"%(date)s"
+msgstr "Generato da %(gramps_home_html_start)sGramps%(html_end)s %(version)s"
#: ../gramps/plugins/webreport/narrativeweb.py:1685
#, python-format
@@ -34948,9 +34973,9 @@ msgid "Last change was the %(date)s"
msgstr "Ultima modifica il %(date)s"
#: ../gramps/plugins/webreport/narrativeweb.py:1688
-#, fuzzy, python-format
+#, python-format
msgid " on %(date)s"
-msgstr "%(date)s"
+msgstr " il %(date)s"
#: ../gramps/plugins/webreport/narrativeweb.py:1709
#: ../gramps/plugins/webreport/narrativeweb.py:1714
@@ -35392,7 +35417,6 @@ msgid "Relation to the center person"
msgstr "Relazione con la persona principale"
#: ../gramps/plugins/webreport/narrativeweb.py:7580
-#, fuzzy
msgid "Relation to main person"
msgstr "Relazione con la persona principale"
@@ -35750,8 +35774,9 @@ msgid "Whether to include unused or unreferenced media objects"
msgstr "Indica se includere una galleria di oggetti multimediali"
#: ../gramps/plugins/webreport/narrativeweb.py:9805
+#, fuzzy
msgid "Create and only use thumbnail- sized images"
-msgstr ""
+msgstr "Crea ed usa solo immagini di dimensione miniatura"
#: ../gramps/plugins/webreport/narrativeweb.py:9807
msgid ""
@@ -35989,6 +36014,9 @@ msgid ""
"Whether or not to add an individual page map showing all the places on this "
"page. This will allow you to see how your family traveled around the country."
msgstr ""
+"Se aggiungere o meno una singola pagina della mappa che mostri tutti i "
+"luoghi in questa pagina. Questo permette di vedere come la famiglia ha "
+"viaggiato attraverso la nazione."
#: ../gramps/plugins/webreport/narrativeweb.py:10007
#, fuzzy
@@ -36012,6 +36040,8 @@ msgid ""
"Select which option that you would like to have for the Google Maps Family "
"Map pages..."
msgstr ""
+"Selezionare quali opzioni abilitare per le pagine delle mappe familiari di "
+"Google Maps..."
#: ../gramps/plugins/webreport/narrativeweb.py:10019
#, fuzzy
@@ -36408,6 +36438,94 @@ msgstr "Nebraska"
msgid "No style sheet"
msgstr "Nessun foglio di stile"
+#~ msgid "Exiting."
+#~ msgstr "Uscita."
+
+#~ msgid ""
+#~ "\n"
+#~ "Usage: gramps.py [OPTION...]\n"
+#~ " --load-modules=MODULE1,MODULE2,... Dynamic modules to load\n"
+#~ "\n"
+#~ "Help options\n"
+#~ " -?, --help Show this help message\n"
+#~ " --usage Display brief usage message\n"
+#~ "\n"
+#~ "Application options\n"
+#~ " -O, --open=FAMILY_TREE Open Family Tree\n"
+#~ " -C, --create=FAMILY_TREE Create on open if new Family "
+#~ "Tree\n"
+#~ " -i, --import=FILENAME Import file\n"
+#~ " -e, --export=FILENAME Export file\n"
+#~ " -f, --format=FORMAT Specify Family Tree format\n"
+#~ " -a, --action=ACTION Specify action\n"
+#~ " -p, --options=OPTIONS_STRING Specify options\n"
+#~ " -d, --debug=LOGGER_NAME Enable debug logs\n"
+#~ " -l List Family Trees\n"
+#~ " -L List Family Trees in Detail\n"
+#~ " -t List Family Trees, tab "
+#~ "delimited\n"
+#~ " -u, --force-unlock Force unlock of Family Tree\n"
+#~ " -s, --show Show config settings\n"
+#~ " -c, --config=[config.setting[:value]] Set config setting(s) and start "
+#~ "Gramps\n"
+#~ " -y, --yes Don't ask to confirm dangerous "
+#~ "actions (non-GUI mode only)\n"
+#~ " -q, --quiet Suppress progress indication "
+#~ "output (non-GUI mode only)\n"
+#~ " -v, --version Show versions\n"
+#~ msgstr ""
+#~ "\n"
+#~ "Uso: gramps.py [OPZIONE...]\n"
+#~ " --load-modules=MODULO1,MODULO2,... Moduli dinamici da caricare\n"
+#~ "\n"
+#~ "Opzioni di aiuto\n"
+#~ " -?, --help Mostra questo messaggio di "
+#~ "aiuto\n"
+#~ " --usage Mostra informazioni concise "
+#~ "sull'uso\n"
+#~ "\n"
+#~ "Opzioni dell'applicazione\n"
+#~ " -O, --open=ALBERO_GENEALOGICO Apri albero genealogico\n"
+#~ " -C, --create=ALBERO_GENEALOGICO Crea all'apertura se nuovo "
+#~ "albero genealogico\n"
+#~ " -i, --import=NOMEFILE Importa file\n"
+#~ " -e, --export=NOMEFILE Esporta file\n"
+#~ " -f, --format=FORMATO Specifica il formato "
+#~ "dell'albero\n"
+#~ " -a, --action=AZIONE Specifica azione\n"
+#~ " -p, --options=STRINGA_OPZIONI Specifica opzioni\n"
+#~ " -d, --debug=NOME_LOGGER Abilita log di debug\n"
+#~ " -l Elenca alberi genealogici\n"
+#~ " -L Elenca alberi in dettaglio\n"
+#~ " -t Elenca alberi, delimitati da "
+#~ "tabulatori\n"
+#~ " -u, --force-unlock Forza sblocco degli alberi "
+#~ "genealogici\n"
+#~ " -s, --show Mostra impostazioni di "
+#~ "configurazione\n"
+#~ " -c, --config=[impost.config[:valore]] Configura le impostazioni di "
+#~ "configurazione e avvia Gramps\n"
+#~ " -y, --yes Non chiede conferma per "
+#~ "operazioni pericolose (solo modalità non grafica)\n"
+#~ " -q, --quiet Nasconde le indicazioni di "
+#~ "avanzamento in uscita (solo modalità non grafica)\n"
+#~ " -v, --version Mostra versioni\n"
+
+#~ msgid "Bsddb version"
+#~ msgstr "Versione di Bsddb"
+
+#~ msgid "Schema version"
+#~ msgstr "Versione dello schema"
+
+#~ msgid "Living"
+#~ msgstr "In vita"
+
+#~ msgid "none"
+#~ msgstr "nessuno"
+
+#~ msgid "BIC"
+#~ msgstr "BIC"
+
#~ msgid ""
#~ "A person with multiple relations with the same spouse is about to be "
#~ "merged. This is beyond the capabilities of the merge routine. The merge "
@@ -36422,82 +36540,6 @@ msgstr "Nessun foglio di stile"
#~ "Stavano per essere fuse diverse famiglie. Questo è insolito, la fusione è "
#~ "stata annullata."
-#~ msgid "Check now"
-#~ msgstr "Controllare adesso"
-
-#~ msgid "%(father)s and %(mother)s (%(id)s)"
-#~ msgstr "%(father)s e %(mother)s (%(id)s)"
-
-#~ msgid "Book Menu"
-#~ msgstr "Menu libro"
-
-#~ msgid "Available Items Menu"
-#~ msgstr "Menu elementi disponibili"
-
-#~ msgid "Loading plugins..."
-#~ msgstr "Caricamento plugin..."
-
-#~ msgid "People Menu"
-#~ msgstr "Menu persone"
-
-#~ msgid "Descendent Menu"
-#~ msgstr "Menu discendenza"
-
-#~ msgid "Person or Place|Title"
-#~ msgstr "Titolo"
-
-#~ msgid "Birth place id"
-#~ msgstr "ID luogo di nascita"
-
-#~ msgid "Baptism place id"
-#~ msgstr "ID luogo del Battesimo"
-
-#~ msgid "Burial place id"
-#~ msgstr "ID luogo di sepoltura"
-
-#~ msgid "Death place id"
-#~ msgstr "ID luogo del decesso"
-
-#~ msgid "Death cause"
-#~ msgstr "Causa del decesso"
-
-#~ msgid "Gramps id"
-#~ msgstr "id Gramps"
-
-#~ msgid "Parent2"
-#~ msgstr "Genitore2"
-
-#~ msgid "Parent1"
-#~ msgstr "Genitore1"
-
-#~ msgid "Enclosed by"
-#~ msgstr "Delimitato da"
-
-#~ msgid "Empty event note ignored"
-#~ msgstr "Ignorata nota evento vuota"
-
-#~ msgid "BLOB ignored"
-#~ msgstr "BLOB ignorato"
-
-#~ msgid "Select filter to restrict people that appear on report"
-#~ msgstr ""
-#~ "Seleziona il filtro per restringere le persone che compaiono nel resoconto"
-
-#~ msgid "Family Menu"
-#~ msgstr "Menu famiglia"
-
-#~ msgid "Gramps ID"
-#~ msgstr "ID Gramps"
-
-#~ msgid "Exiting."
-#~ msgstr "Uscita."
-
-#~ msgid "none"
-#~ msgstr "nessuno"
-
-#~ msgid "BIC"
-#~ msgstr "BIC"
-
#~ msgid ""
#~ "\n"
#~ "You don't have the python3 bsddb3 package installed. This package is "
@@ -36511,18 +36553,118 @@ msgstr "Nessun foglio di stile"
#~ "\n"
#~ "Adesso Gramps verrà chiuso."
-#~ msgid "Include original person"
-#~ msgstr "Includere persona originale"
+#~ msgid "Check for updates"
+#~ msgstr "Controllare aggiornamenti"
+
+#~ msgid "Check now"
+#~ msgstr "Controllare adesso"
+
+#~ msgid "Gramps: Import Family Tree"
+#~ msgstr "Gramps: Importa albero genealogico"
+
+#, fuzzy
+#~ msgid "manual|Select_a_media_object_selector"
+#~ msgstr "Fusione_oggetti_multimediali"
+
+#~ msgid ""
+#~ "This Gramps ('master') is a development release. This version is not "
+#~ "meant for normal usage. Use at your own risk.\n"
+#~ "\n"
+#~ "This version may:\n"
+#~ "1) Work differently than you expect.\n"
+#~ "2) Fail to run at all.\n"
+#~ "3) Crash often.\n"
+#~ "4) Corrupt your data.\n"
+#~ "5) Save data in a format that is incompatible with the official release.\n"
+#~ "\n"
+#~ "%(bold_start)sBACKUP%(bold_end)s your existing databases before opening "
+#~ "them with this version, and make sure to export your data to XML every "
+#~ "now and then."
+#~ msgstr ""
+#~ "L'attuale version di Gramps ('master') è una versione di sviluppo. Questa "
+#~ "versione non è pensata per l'uso normale; va usata a proprio rischio.\n"
+#~ "\n"
+#~ "Questa versione potrebbe:\n"
+#~ "1) funzionare in modo differente da come ci si aspetta.\n"
+#~ "2) non avviarsi completamente.\n"
+#~ "3) bloccarsi spesso.\n"
+#~ "4) rovinare i dati.\n"
+#~ "5) salvare i dati in un formato non compatibile con la versione "
+#~ "ufficiale.\n"
+#~ "\n"
+#~ "Effettuare un %(bold_start)sBACKUP%(bold_end)s dei database esistenti "
+#~ "prima di aprirli con questa versione, e assicurarsi di esportare i dati "
+#~ "in XML ogni tanto."
+
+#~ msgid ""
+#~ "This is the Bug Reporting Assistant. It will help you to make a bug "
+#~ "report to the Gramps developers that will be as detailed as possible.\n"
+#~ "\n"
+#~ "The assistant will ask you a few questions and will gather some "
+#~ "information about the error that has occured and the operating "
+#~ "environment. At the end of the assistant you will be asked to file a bug "
+#~ "report on the Gramps bug tracking system. The assistant will place the "
+#~ "bug report on the clip board so that you can paste it into the form on "
+#~ "the bug tracking website and review exactly what information you want to "
+#~ "include."
+#~ msgstr ""
+#~ "Questo è l'assistente per la segnalazione di bug, che aiuta nella "
+#~ "preparazione di segnalazioni di bug quanto più dettagliate possibile da "
+#~ "inviare agli sviluppatori di Gramps.\n"
+#~ "\n"
+#~ "L'assistente chiederà di rispondere ad alcune domande e raccoglierà "
+#~ "alcune informazioni sull'errore che si è verificato e sull'ambiente "
+#~ "operativo. Alla fine della procedura richiederà di inviare la "
+#~ "segnalazione di bug sul sistema web di gestione dei bug di Gramps; in "
+#~ "particolare l'assistente provvederà a copiare negli appunti la "
+#~ "segnalazione di bug, in modo da poterla incollare facilmente "
+#~ "nell'apposito modulo sul sistema web di gestione dei bug e rivedere "
+#~ "quindi quali informazioni includere o meno."
+
+#~ msgid ""
+#~ "Please provide as much information as you can about what you were doing "
+#~ "when the error occured."
+#~ msgstr ""
+#~ "Fornire informazioni quanto più dettagliate possibile sulle operazioni "
+#~ "eseguite quando si è verificato l'errore."
+
+#~ msgid ""
+#~ "This is your opportunity to describe what you were doing when the error "
+#~ "occured."
+#~ msgstr ""
+#~ "È possibile descrivere qui le operazioni eseguite quando si è verificato "
+#~ "l'errore."
+
+#~ msgid "You need to restart Gramps to see new views."
+#~ msgstr "È necessario riavviare GRAMPS per vedere le nuove viste."
+
+#~ msgid "%(father)s and %(mother)s (%(id)s)"
+#~ msgstr "%(father)s e %(mother)s (%(id)s)"
+
+#~ msgid "Your database is empty."
+#~ msgstr "Il database è vuoto"
+
+#~ msgid "Book Menu"
+#~ msgstr "Menu libro"
+
+#~ msgid "Available Items Menu"
+#~ msgstr "Menu elementi disponibili"
+
+#~ msgid "Loading plugins..."
+#~ msgstr "Caricamento plugin..."
+
+#~ msgid "People Menu"
+#~ msgstr "Menu persone"
#~ msgid "Add a Family Tree"
#~ msgstr "Aggiungi un albero genealogico"
+#~ msgid "Descendent Menu"
+#~ msgstr "Menu discendenza"
+
#~ msgid "Place Locations"
#~ msgstr "Posizioni luogo"
-#~ msgid "Gramplet showing the locations of a place over time"
-#~ msgstr "Gramplet che mostra le posizione di un luogo nel tempo"
-
#~ msgid "Incomplete names"
#~ msgstr "Nomi incompleti"
@@ -36535,38 +36677,63 @@ msgstr "Nessun foglio di stile"
#~ msgid "Individuals with media objects"
#~ msgstr "Persone con oggetti multimediali"
+#~ msgid "Cannot find DEF file: %(deffname)s"
+#~ msgstr "Impossibile trovare il file DEF: %(deffname)s"
+
+#~ msgid "date did not match: '%(text)s' (%(msg)s)"
+#~ msgstr "date non corrispondenti: '%(text)s' (%(msg)s)"
+
+#~ msgid "cannot find father for I%(person)s (father=%(id)d)"
+#~ msgstr "impossibile trovare il padre per I%(person)s (padre=%(id)d)"
+
+#~ msgid "cannot find mother for I%(person)s (mother=%(mother)d)"
+#~ msgstr "impossibile trovare la madre per I%(person)s (madre=%(mother)d)"
+
+#~ msgid ""
+#~ "Invalid date {date} in BDAY {vcard_snippet}, preserving date as text."
+#~ msgstr ""
+#~ "Data non valida {date} in BDAY {vcard_snippet}, la data viene preservata "
+#~ "come testo."
+
+#~ msgid "Empty event note ignored"
+#~ msgstr "Ignorata nota evento vuota"
+
+#~ msgid "Filtering_on|Inverse MediaObject"
+#~ msgstr "oggetti multimediali non presenti"
+
+#~ msgid "Select filter to restrict people that appear on report"
+#~ msgstr ""
+#~ "Seleziona il filtro per restringere le persone che compaiono nel resoconto"
+
+#~ msgid "sp. see %(reference)s : %(spouse)s"
+#~ msgstr "con. vedere %(reference)s:%(spouse)s"
+
#~ msgid "%(date)s, %(place)s"
#~ msgstr "%(date)s in quel di %(place)s"
+#~ msgid "%(date)s"
+#~ msgstr "%(date)s"
+
#~ msgid "%(place)s"
#~ msgstr "%(place)s"
+#~ msgid "%(event_name)s: %(event_text)s"
+#~ msgstr "%(event_name)s: %(event_text)s"
+
+#~ msgid "The center family for the report"
+#~ msgstr "La famiglia centrale del resoconto"
+
+#~ msgid "Recursive"
+#~ msgstr "Ricorsivo"
+
#~ msgid "Marriages/Children"
#~ msgstr "Matrimoni/figli"
#~ msgid "Summary of %s"
#~ msgstr "Riepilogo di %s"
-#~ msgid "Street: %s "
-#~ msgstr "Via: %s "
-
-#~ msgid "Parish: %s "
-#~ msgstr "Parrocchia: %s "
-
-#~ msgid "Locality: %s "
-#~ msgstr "Località: %s "
-
-#~ msgid "City: %s "
-#~ msgstr "Città: %s "
-
-#~ msgid "County: %s "
-#~ msgstr "Contea/Provincia: %s "
-
-#~ msgid "State: %s"
-#~ msgstr "Stato/regione: %s"
-
-#~ msgid "Country: %s "
-#~ msgstr "Nazione: %s "
+#~ msgid "Person Records"
+#~ msgstr "Record persone"
#~ msgid "The style used for the report title."
#~ msgstr "Lo stile usato per il titolo del resoconto."
@@ -36574,6 +36741,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "The style used for the report subtitle."
#~ msgstr "Lo stile usato per il sottotitolo del resoconto."
+#~ msgid "1 family with no parents or children found, removed.\n"
+#~ msgstr "Trovata una famiglia senza genitori o figli, è state rimossa.\n"
+
#~ msgid "%(quantity)d families with no parents or children, removed.\n"
#~ msgstr ""
#~ "Trovate %(quantity)d famiglie senza genitori o figli, sono state "
@@ -36625,6 +36795,12 @@ msgstr "Nessun foglio di stile"
#~ "Modulo OsmGpsMap non caricato. La versione di OsmGpsMap deve essere >= "
#~ "0.8, ma è stata trovata la %s"
+#~ msgid "Family Menu"
+#~ msgstr "Menu famiglia"
+
+#~ msgid "Gramps ID"
+#~ msgstr "ID Gramps"
+
#~ msgid "Include Last Name Only"
#~ msgstr "Includere solo il cognome"
@@ -36642,9 +36818,73 @@ msgstr "Nessun foglio di stile"
#~ msgid "birth"
#~ msgstr "nascita"
+#~ msgid "Include original person"
+#~ msgstr "Includere persona originale"
+
+#~ msgid "Gramplet showing the locations of a place over time"
+#~ msgstr "Gramplet che mostra le posizione di un luogo nel tempo"
+
+#~ msgid "Person or Place|Title"
+#~ msgstr "Titolo"
+
+#~ msgid "Birth place id"
+#~ msgstr "ID luogo di nascita"
+
+#~ msgid "Baptism place id"
+#~ msgstr "ID luogo del Battesimo"
+
+#~ msgid "Burial place id"
+#~ msgstr "ID luogo di sepoltura"
+
+#~ msgid "Death place id"
+#~ msgstr "ID luogo del decesso"
+
+#~ msgid "Death cause"
+#~ msgstr "Causa del decesso"
+
+#~ msgid "Gramps id"
+#~ msgstr "id Gramps"
+
+#~ msgid "Parent2"
+#~ msgstr "Genitore2"
+
+#~ msgid "Parent1"
+#~ msgstr "Genitore1"
+
+#~ msgid "Enclosed by"
+#~ msgstr "Delimitato da"
+
+#~ msgid "BLOB ignored"
+#~ msgstr "BLOB ignorato"
+
+#~ msgid "Street: %s "
+#~ msgstr "Via: %s "
+
+#~ msgid "Parish: %s "
+#~ msgstr "Parrocchia: %s "
+
+#~ msgid "Locality: %s "
+#~ msgstr "Località: %s "
+
+#~ msgid "City: %s "
+#~ msgstr "Città: %s "
+
+#~ msgid "County: %s "
+#~ msgstr "Contea/Provincia: %s "
+
+#~ msgid "State: %s"
+#~ msgstr "Stato/regione: %s"
+
+#~ msgid "Country: %s "
+#~ msgstr "Nazione: %s "
+
#~ msgid "%(new_DB_name)s (copied %(date_string)s)"
#~ msgstr "%(new_DB_name)s (copiato il %(date_string)s)"
+#, fuzzy
+#~ msgid "manual|Tags"
+#~ msgstr "Etichette"
+
#~ msgid "Obtaining all rows"
#~ msgstr "Estrazione di tutte le righe"
@@ -36715,6 +36955,9 @@ msgstr "Nessun foglio di stile"
#~ "La modifica del formato della data avrà effetto dal prossimo avvio di "
#~ "Gramps."
+#~ msgid " %s: %s"
+#~ msgstr " %s: %s"
+
#~ msgid "TRANSLATORS: Translate this to your name in your native language"
#~ msgstr ""
#~ "Luigi Toscano\n"
@@ -36813,6 +37056,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "Add Parents"
#~ msgstr "Aggiunge genitori"
+#~ msgid "Select Parents"
+#~ msgstr "Seleziona genitori"
+
#~ msgid "Reports"
#~ msgstr "Resoconti"
@@ -38451,6 +38697,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "Partner 2"
#~ msgstr "Partner 2"
+#~ msgid "Family/ Relationship"
+#~ msgstr "Famiglia/Relazione"
+
#~ msgid "Person(s)"
#~ msgstr "Persona/e"
@@ -38474,6 +38723,9 @@ msgstr "Nessun foglio di stile"
#~ "L'albero genealogico raggruppa il nome %(key)s assieme a %(present)s, non "
#~ "è stato modificato il raggruppamento in %(value)s"
+#~ msgid "Import database"
+#~ msgstr "Importa database"
+
#~ msgid "%(quantity)d invalid event reference was removed\n"
#~ msgid_plural "%(quantity)d invalid event references were removed\n"
#~ msgstr[0] ""
@@ -40110,6 +40362,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "Objects with "
#~ msgstr "Oggetti con "
+#~ msgid "Has marker of"
+#~ msgstr "Ha un marcatore"
+
#~ msgid "Matches markers of a particular type"
#~ msgstr "Estrae un particolare tipo di marcatore"
@@ -40863,6 +41118,9 @@ msgstr "Nessun foglio di stile"
#~ "GeoView usa OpenStreetMap ed uno degli altri fornitori di mappe.\n"
#~ "Scegliere uno tra i seguenti fornitori di mappe:"
+#~ msgid "Google Maps"
+#~ msgstr "Google Maps"
+
#~ msgid "OpenLayers"
#~ msgstr "OpenLayers"
@@ -41032,6 +41290,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "females"
#~ msgstr "femmine"
+#~ msgid "all families"
+#~ msgstr "tutte le famiglie"
+
#~ msgid "RepoRef"
#~ msgstr "Riferimenti depositi"
@@ -41504,6 +41765,9 @@ msgstr "Nessun foglio di stile"
#~ msgid "Exclude _sources"
#~ msgstr "Escludi _fonti"
+#~ msgid "GRAMPS database"
+#~ msgstr "Database GRAMPS"
+
#~ msgid ", "
#~ msgstr ", "
@@ -41511,6 +41775,10 @@ msgstr "Nessun foglio di stile"
#~ msgid "Name Type"
#~ msgstr "Tipo nome"
+#, fuzzy
+#~ msgid "Primary Name"
+#~ msgstr "Principale"
+
#, fuzzy
#~ msgid "Total names %d"
#~ msgstr "Nomi totali %d"
@@ -41719,10 +41987,18 @@ msgstr "Nessun foglio di stile"
#~ msgid "Max chart height (px)"
#~ msgstr "Larghezza tabella"
+#, fuzzy
+#~ msgid "Include Options"
+#~ msgstr "Includere i coniugi"
+
#, fuzzy
#~ msgid "Wheater to leave out private data."
#~ msgstr "Indica se includere gli oggetti privati"
+#, fuzzy
+#~ msgid "Include Events"
+#~ msgstr "Includere gli eventi"
+
#, fuzzy
#~ msgid "Wheather to include a person's events."
#~ msgstr "Indica se includere gli eventi."
@@ -42111,6 +42387,10 @@ msgstr "Nessun foglio di stile"
#~ msgid "Include source's data"
#~ msgstr "Includere le fonti"
+#, fuzzy
+#~ msgid "Whether to include keys and values."
+#~ msgstr "Indica se includere gli altri nomi."
+
#, fuzzy
#~ msgid "Include media"
#~ msgstr "Includere date"