1# 2# Gramps - a GTK+/GNOME based genealogy program 3# 4# Copyright (C) 2002-2006 Donald N. Allingham 5# 6# This program is free software; you can redistribute it and/or modify 7# it under the terms of the GNU General Public License as published by 8# the Free Software Foundation; either version 2 of the License, or 9# (at your option) any later version. 10# 11# This program is distributed in the hope that it will be useful, 12# but WITHOUT ANY WARRANTY; without even the implied warranty of 13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14# GNU General Public License for more details. 15# 16# You should have received a copy of the GNU General Public License 17# along with this program; if not, write to the Free Software 18# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 19# 20 21#------------------------------------------------------------------------- 22# 23# Standard Python modules 24# 25#------------------------------------------------------------------------- 26from ....const import GRAMPS_LOCALE as glocale 27_ = glocale.translation.gettext 28 29#------------------------------------------------------------------------- 30# 31# Gramps modules 32# 33#------------------------------------------------------------------------- 34from .. import Rule 35 36#------------------------------------------------------------------------- 37# 38# IsDefaultPerson 39# 40#------------------------------------------------------------------------- 41class IsDefaultPerson(Rule): 42 """Rule that checks for a default person in the database""" 43 44 name = _('Home Person') 45 category = _('General filters') 46 description = _("Matches the Home Person") 47 48 def prepare(self, db, user): 49 p = db.get_default_person() 50 if p: 51 self.def_handle = p.get_handle() 52 self.apply = self.apply_real 53 else: 54 self.apply = lambda db,p: False 55 56 def apply_real(self,db,person): 57 return person.handle == self.def_handle 58