2006-04-19 Alex Roitman <shura@gramps-project.org>
* src/Utils.py: Remove obsolete code. * src/DisplayTabs.py (EventRefModel.column_role): Adapt to new types. * src/PeopleModel.py: Adapt to new types. * src/plugins/TestcaseGenerator.py: Adapt to new types. * src/RelLib/Makefile.am: Ship new files. * src/RelLib/_EventRef.py: Adapt to new types. * src/RelLib/_PrimaryObject.py: Adapt to new types. * src/RelLib/_EventRoleType.py: Add new module. * src/RelLib/_RepoRef.py: Adapt to new types. * src/RelLib/_MarkerType.py: Add new module. * src/RelLib/_Family.py: Adapt to new types. * src/RelLib/_Person.py: Adapt to new types. * src/RelLib/_SourceMediaType.py: Add new module. * src/RelLib/__init__.py: Expose new modules. * src/Editors/_EditPerson.py: Use new type. * src/GrampsDb/_GrampsBSDDB.py (gramps_upgrade_9): Adapt to new types. * src/GrampsDb/_ConstXML.py: Comment out obsolete code. * src/GrampsDb/_ReadXML.py: Adapt to new types. * src/GrampsDb/_GrampsDbBase.py (commit_person): Properly use marker. * src/GrampsDb/_ReadGedcom.py: Adapt to new types. * src/DataViews/_FamilyView.py (write_relationship): Use new type. * src/DataViews/_PedigreeView.py (format_relation): Use new type. svn: r6372
This commit is contained in:
@@ -52,7 +52,10 @@ pkgdata_PYTHON = \
|
||||
_RefBase.py\
|
||||
_ChildRef.py\
|
||||
_ChildRefType.py\
|
||||
_FamilyRelType.py
|
||||
_FamilyRelType.py\
|
||||
_SourceMediaType.py\
|
||||
_MarkerType.py\
|
||||
_EventRoleType.py
|
||||
|
||||
pkgpyexecdir = @pkgpyexecdir@/RelLib
|
||||
pkgpythondir = @pkgpythondir@/RelLib
|
||||
|
||||
@@ -40,6 +40,7 @@ from _BaseObject import BaseObject
|
||||
from _PrivacyBase import PrivacyBase
|
||||
from _NoteBase import NoteBase
|
||||
from _RefBase import RefBase
|
||||
from _EventRoleType import EventRoleType
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -54,17 +55,6 @@ class EventRef(BaseObject,PrivacyBase,NoteBase,RefBase):
|
||||
to the refereneced event.
|
||||
"""
|
||||
|
||||
UNKNOWN = -1
|
||||
CUSTOM = 0
|
||||
PRIMARY = 1
|
||||
CLERGY = 2
|
||||
CELEBRANT = 3
|
||||
AIDE = 4
|
||||
BRIDE = 5
|
||||
GROOM = 6
|
||||
WITNESS = 7
|
||||
FAMILY = 8
|
||||
|
||||
def __init__(self,source=None):
|
||||
"""
|
||||
Creates a new EventRef instance, copying from the source if present.
|
||||
@@ -76,21 +66,22 @@ class EventRef(BaseObject,PrivacyBase,NoteBase,RefBase):
|
||||
if source:
|
||||
self.role = source.role
|
||||
else:
|
||||
self.role = (EventRef.CUSTOM,"")
|
||||
self.role = EventRoleType()
|
||||
|
||||
def serialize(self):
|
||||
return (
|
||||
PrivacyBase.serialize(self),
|
||||
NoteBase.serialize(self),
|
||||
RefBase.serialize(self),
|
||||
self.role
|
||||
self.role.serialize()
|
||||
)
|
||||
|
||||
def unserialize(self,data):
|
||||
(privacy,note,ref,self.role) = data
|
||||
(privacy,note,ref,role) = data
|
||||
PrivacyBase.unserialize(self,privacy)
|
||||
NoteBase.unserialize(self,note)
|
||||
RefBase.unserialize(self,ref)
|
||||
self.role = EventRoleType(role)
|
||||
return self
|
||||
|
||||
def get_text_data_list(self):
|
||||
@@ -100,7 +91,7 @@ class EventRef(BaseObject,PrivacyBase,NoteBase,RefBase):
|
||||
@return: Returns the list of all textual attributes of the object.
|
||||
@rtype: list
|
||||
"""
|
||||
return [self.role_str]
|
||||
return [str(self.role)]
|
||||
|
||||
def get_text_data_child_list(self):
|
||||
"""
|
||||
@@ -136,12 +127,7 @@ class EventRef(BaseObject,PrivacyBase,NoteBase,RefBase):
|
||||
"""
|
||||
Sets the role according to the given argument.
|
||||
"""
|
||||
if not type(role) == tuple:
|
||||
if role in range(-1,9):
|
||||
warn( "set_role now takes a tuple", DeprecationWarning, 2)
|
||||
# Wrapper for old API
|
||||
# remove when transitition done.
|
||||
role = (role,'')
|
||||
else:
|
||||
assert type(role) == tuple
|
||||
self.role = role
|
||||
if type(role) == tuple:
|
||||
self.role = EventRoleType(role)
|
||||
else:
|
||||
self.role = role
|
||||
|
||||
60
src/RelLib/_EventRoleType.py
Normal file
60
src/RelLib/_EventRoleType.py
Normal file
@@ -0,0 +1,60 @@
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2000-2006 Donald N. Allingham
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# $Id: _Name.py 6326 2006-04-13 11:21:33Z loshawlos $
|
||||
|
||||
from _GrampsType import GrampsType, init_map
|
||||
from gettext import gettext as _
|
||||
|
||||
class EventRoleType(GrampsType):
|
||||
|
||||
UNKNOWN = -1
|
||||
CUSTOM = 0
|
||||
PRIMARY = 1
|
||||
CLERGY = 2
|
||||
CELEBRANT = 3
|
||||
AIDE = 4
|
||||
BRIDE = 5
|
||||
GROOM = 6
|
||||
WITNESS = 7
|
||||
FAMILY = 8
|
||||
|
||||
_CUSTOM = CUSTOM
|
||||
_DEFAULT = PRIMARY
|
||||
|
||||
_DATAMAP = [
|
||||
(UNKNOWN, _("Unknown"), "Unknown"),
|
||||
(CUSTOM, _("Custom"), "Custom"),
|
||||
(PRIMARY, _("Primary"), "Primary"),
|
||||
(CLERGY, _("Clergy"), "Clergy"),
|
||||
(CELEBRANT, _("Celebrant"), "Celebrant"),
|
||||
(AIDE, _("Aide"), "Aide"),
|
||||
(BRIDE, _("Bride"), "Bride"),
|
||||
(GROOM, _("Groom"), "Groom"),
|
||||
(WITNESS, _("Witness"), "Witness"),
|
||||
(FAMILY, _("Family"), "Family"),
|
||||
]
|
||||
|
||||
_I2SMAP = init_map(_DATAMAP, 0, 1)
|
||||
_S2IMAP = init_map(_DATAMAP, 1, 0)
|
||||
_I2EMAP = init_map(_DATAMAP, 0, 2)
|
||||
_E2IMAP = init_map(_DATAMAP, 2, 0)
|
||||
|
||||
def __init__(self, value=None):
|
||||
GrampsType.__init__(self, value)
|
||||
@@ -45,6 +45,7 @@ from _EventRef import EventRef
|
||||
from _LdsOrdBase import LdsOrdBase
|
||||
from _ChildRef import ChildRef
|
||||
from _FamilyRelType import FamilyRelType
|
||||
from _MarkerType import MarkerType
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -89,7 +90,7 @@ class Family(PrimaryObject,SourceBase,NoteBase,MediaBase,AttributeBase,
|
||||
self.father_handle = None
|
||||
self.mother_handle = None
|
||||
self.child_ref_list = []
|
||||
self.type = FamilyRelType(FamilyRelType.MARRIED)
|
||||
self.type = FamilyRelType()
|
||||
self.event_ref_list = []
|
||||
self.lds_seal = None
|
||||
self.complete = 0
|
||||
@@ -124,7 +125,7 @@ class Family(PrimaryObject,SourceBase,NoteBase,MediaBase,AttributeBase,
|
||||
LdsOrdBase.serialize(self),
|
||||
SourceBase.serialize(self),
|
||||
NoteBase.serialize(self),
|
||||
self.change, self.marker, self.private)
|
||||
self.change, self.marker.serialize(), self.private)
|
||||
|
||||
def unserialize(self, data):
|
||||
"""
|
||||
@@ -134,8 +135,9 @@ class Family(PrimaryObject,SourceBase,NoteBase,MediaBase,AttributeBase,
|
||||
(self.handle, self.gramps_id, self.father_handle, self.mother_handle,
|
||||
child_ref_list, the_type, event_ref_list, media_list,
|
||||
attribute_list, lds_seal_list, source_list, note,
|
||||
self.change, self.marker, self.private) = data
|
||||
self.change, marker, self.private) = data
|
||||
|
||||
self.marker.unserialize(marker)
|
||||
self.type.unserialize(the_type)
|
||||
self.event_ref_list = [EventRef().unserialize(er)
|
||||
for er in event_ref_list]
|
||||
@@ -412,7 +414,6 @@ class Family(PrimaryObject,SourceBase,NoteBase,MediaBase,AttributeBase,
|
||||
# remove when transitition done.
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY,''))
|
||||
self.add_event_ref(event_ref)
|
||||
|
||||
def add_event_ref(self,event_ref):
|
||||
@@ -457,7 +458,6 @@ class Family(PrimaryObject,SourceBase,NoteBase,MediaBase,AttributeBase,
|
||||
for event_handle in event_list:
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY,''))
|
||||
event_ref_list.append( event_ref)
|
||||
self.set_event_ref_list(event_ref_list)
|
||||
|
||||
|
||||
48
src/RelLib/_MarkerType.py
Normal file
48
src/RelLib/_MarkerType.py
Normal file
@@ -0,0 +1,48 @@
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2000-2006 Donald N. Allingham
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# $Id: _Name.py 6326 2006-04-13 11:21:33Z loshawlos $
|
||||
|
||||
from _GrampsType import GrampsType, init_map
|
||||
from gettext import gettext as _
|
||||
|
||||
class MarkerType(GrampsType):
|
||||
|
||||
NONE = -1
|
||||
CUSTOM = 0
|
||||
COMPLETE = 1
|
||||
TODO = 2
|
||||
|
||||
_CUSTOM = CUSTOM
|
||||
_DEFAULT = NONE
|
||||
|
||||
_DATAMAP = [
|
||||
(NONE, "", ""),
|
||||
(CUSTOM, _("Custom"), "Custom"),
|
||||
(COMPLETE, _("Complete"), "Complete"),
|
||||
(TODO, _("ToDo"), "ToDo"),
|
||||
]
|
||||
|
||||
_I2SMAP = init_map(_DATAMAP, 0, 1)
|
||||
_S2IMAP = init_map(_DATAMAP, 1, 0)
|
||||
_I2EMAP = init_map(_DATAMAP, 0, 2)
|
||||
_E2IMAP = init_map(_DATAMAP, 2, 0)
|
||||
|
||||
def __init__(self, value=None):
|
||||
GrampsType.__init__(self, value)
|
||||
@@ -49,6 +49,7 @@ from _NameType import NameType
|
||||
from _EventRef import EventRef
|
||||
from _LdsOrd import LdsOrd
|
||||
from _PersonRef import PersonRef
|
||||
from _MarkerType import MarkerType
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -161,7 +162,7 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
SourceBase.serialize(self), # 16
|
||||
NoteBase.serialize(self), # 17
|
||||
self.change, # 18
|
||||
self.marker, # 19
|
||||
self.marker.serialize(), # 19
|
||||
self.private, # 20
|
||||
[pr.serialize() for pr in self.person_ref_list] # 21
|
||||
)
|
||||
@@ -195,11 +196,12 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
source_list, # 16
|
||||
note, # 17
|
||||
self.change, # 18
|
||||
self.marker, # 19
|
||||
marker, # 19
|
||||
self.private, # 20
|
||||
person_ref_list, # 21
|
||||
) = data
|
||||
|
||||
self.marker = MarkerType(marker)
|
||||
self.primary_name.unserialize(primary_name)
|
||||
if death_ref:
|
||||
self.death_ref = EventRef().unserialize(death_ref)
|
||||
@@ -351,7 +353,7 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
DeprecationWarning, 2)
|
||||
# Wrapper for old API
|
||||
# remove when transitition done.
|
||||
return self.marker[0] == PrimaryObject.MARKER_COMPLETE
|
||||
return int(self.marker) == MarkerType.COMPLETE
|
||||
|
||||
def set_primary_name(self, name):
|
||||
"""
|
||||
@@ -448,7 +450,6 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
# remove when transitition done.
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY, ''))
|
||||
self.set_birth_ref( event_ref)
|
||||
|
||||
def set_birth_ref(self, event_ref):
|
||||
@@ -472,7 +473,6 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
# remove when transitition done.
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY, ''))
|
||||
self.set_death_ref( event_ref)
|
||||
|
||||
def set_death_ref(self, event_ref):
|
||||
@@ -518,7 +518,6 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
# remove when transitition done.
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY, ''))
|
||||
self.add_event_ref( event_ref)
|
||||
|
||||
def add_event_ref(self, event_ref):
|
||||
@@ -565,7 +564,6 @@ class Person(PrimaryObject,SourceBase,NoteBase,MediaBase,
|
||||
for event_handle in event_list:
|
||||
event_ref = EventRef()
|
||||
event_ref.set_reference_handle(event_handle)
|
||||
event_ref.set_role((EventRef.PRIMARY, ''))
|
||||
event_ref_list.append( event_ref)
|
||||
self.set_event_ref_list(event_ref_list)
|
||||
|
||||
|
||||
@@ -41,6 +41,7 @@ from _BaseObject import BaseObject
|
||||
from _PrivacyBase import PrivacyBase
|
||||
from _SourceBase import SourceBase
|
||||
from _MediaBase import MediaBase
|
||||
from _MarkerType import MarkerType
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -63,11 +64,6 @@ class PrimaryObject(BaseObject,PrivacyBase):
|
||||
ID is the user visible version.
|
||||
"""
|
||||
|
||||
MARKER_NONE = -1
|
||||
MARKER_CUSTOM = 0
|
||||
MARKER_COMPLETE = 1
|
||||
MARKER_TODO = 2
|
||||
|
||||
def __init__(self,source=None):
|
||||
"""
|
||||
Initialize a PrimaryObject. If source is None, both the ID and handle
|
||||
@@ -88,7 +84,7 @@ class PrimaryObject(BaseObject,PrivacyBase):
|
||||
self.gramps_id = None
|
||||
self.handle = None
|
||||
self.change = 0
|
||||
self.marker = (PrimaryObject.MARKER_NONE,"")
|
||||
self.marker = MarkerType()
|
||||
|
||||
def get_change_time(self):
|
||||
"""
|
||||
@@ -214,7 +210,10 @@ class PrimaryObject(BaseObject,PrivacyBase):
|
||||
pass
|
||||
|
||||
def set_marker(self,marker):
|
||||
self.marker = marker
|
||||
if type(marker) == tuple:
|
||||
self.marker = MarkerType(marker)
|
||||
else:
|
||||
self.marker = marker
|
||||
|
||||
def get_marker(self):
|
||||
return self.marker
|
||||
|
||||
@@ -32,6 +32,7 @@ Repository Reference class for GRAMPS
|
||||
from _BaseObject import BaseObject
|
||||
from _NoteBase import NoteBase
|
||||
from _RefBase import RefBase
|
||||
from _SourceMediaType import SourceMediaType
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
#
|
||||
@@ -43,22 +44,6 @@ class RepoRef(BaseObject,NoteBase,RefBase):
|
||||
Repository reference class.
|
||||
"""
|
||||
|
||||
UNKNOWN = -1
|
||||
CUSTOM = 0
|
||||
AUDIO = 1
|
||||
BOOK = 2
|
||||
CARD = 3
|
||||
ELECTRONIC = 4
|
||||
FICHE = 5
|
||||
FILM = 6
|
||||
MAGAZINE = 7
|
||||
MANUSCRIPT = 8
|
||||
MAP = 9
|
||||
NEWSPAPER = 10
|
||||
PHOTO = 11
|
||||
TOMBSTONE = 12
|
||||
VIDEO = 13
|
||||
|
||||
def __init__(self,source=None):
|
||||
BaseObject.__init__(self)
|
||||
NoteBase.__init__(self)
|
||||
@@ -68,16 +53,17 @@ class RepoRef(BaseObject,NoteBase,RefBase):
|
||||
self.media_type = source.media_type
|
||||
else:
|
||||
self.call_number = ""
|
||||
self.media_type = (RepoRef.CUSTOM,"")
|
||||
self.media_type = SourceMediaType()
|
||||
|
||||
def serialize(self):
|
||||
return (
|
||||
NoteBase.serialize(self),
|
||||
RefBase.serialize(self),
|
||||
self.call_number,self.media_type)
|
||||
self.call_number,self.media_type.serialize())
|
||||
|
||||
def unserialize(self,data):
|
||||
(note,ref,self.call_number,self.media_type) = data
|
||||
(note,ref,self.call_number,media_type) = data
|
||||
self.media_type = SourceMediaType(media_type)
|
||||
NoteBase.unserialize(self,note)
|
||||
RefBase.unserialize(self,ref)
|
||||
return self
|
||||
@@ -89,7 +75,7 @@ class RepoRef(BaseObject,NoteBase,RefBase):
|
||||
@return: Returns the list of all textual attributes of the object.
|
||||
@rtype: list
|
||||
"""
|
||||
return [self.call_number,self.media_type[1]]
|
||||
return [self.call_number,str(self.media_type)]
|
||||
|
||||
def get_text_data_child_list(self):
|
||||
"""
|
||||
@@ -125,4 +111,7 @@ class RepoRef(BaseObject,NoteBase,RefBase):
|
||||
return self.media_type
|
||||
|
||||
def set_media_type(self,media_type):
|
||||
self.media_type = media_type
|
||||
if type(media_type) == tuple:
|
||||
self.media_type = SourceMediaType(media_type)
|
||||
else:
|
||||
self.media_type = media_type
|
||||
|
||||
70
src/RelLib/_SourceMediaType.py
Normal file
70
src/RelLib/_SourceMediaType.py
Normal file
@@ -0,0 +1,70 @@
|
||||
#
|
||||
# Gramps - a GTK+/GNOME based genealogy program
|
||||
#
|
||||
# Copyright (C) 2000-2006 Donald N. Allingham
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
#
|
||||
# $Id: _Name.py 6326 2006-04-13 11:21:33Z loshawlos $
|
||||
|
||||
from _GrampsType import GrampsType, init_map
|
||||
from gettext import gettext as _
|
||||
|
||||
class SourceMediaType(GrampsType):
|
||||
|
||||
UNKNOWN = -1
|
||||
CUSTOM = 0
|
||||
AUDIO = 1
|
||||
BOOK = 2
|
||||
CARD = 3
|
||||
ELECTRONIC = 4
|
||||
FICHE = 5
|
||||
FILM = 6
|
||||
MAGAZINE = 7
|
||||
MANUSCRIPT = 8
|
||||
MAP = 9
|
||||
NEWSPAPER = 10
|
||||
PHOTO = 11
|
||||
TOMBSTONE = 12
|
||||
VIDEO = 13
|
||||
|
||||
_CUSTOM = CUSTOM
|
||||
_DEFAULT = BOOK
|
||||
|
||||
_DATAMAP = [
|
||||
(UNKNOWN, _("Unknown"), "Unknown"),
|
||||
(CUSTOM, _("Custom"), "Custom"),
|
||||
(AUDIO, _("Audio"), "Audio"),
|
||||
(BOOK, _("Book"), "Book"),
|
||||
(CARD, _("Card"), "Card"),
|
||||
(ELECTRONIC, _("Electronic"), "Electronic"),
|
||||
(FICHE, _("Fiche"), "Fiche"),
|
||||
(FILM, _("Film"), "Film"),
|
||||
(MAGAZINE, _("Magazine"), "Magazine"),
|
||||
(MANUSCRIPT, _("Manuscript"), "Manuscript"),
|
||||
(MAP, _("Map"), "Map"),
|
||||
(NEWSPAPER, _("Newspaper"), "Newspaper"),
|
||||
(PHOTO, _("Photo"), "Photo"),
|
||||
(TOMBSTONE, _("Tombstone"), "Tombstone"),
|
||||
(VIDEO, _("Video"), "Video"),
|
||||
]
|
||||
|
||||
_I2SMAP = init_map(_DATAMAP, 0, 1)
|
||||
_S2IMAP = init_map(_DATAMAP, 1, 0)
|
||||
_I2EMAP = init_map(_DATAMAP, 0, 2)
|
||||
_E2IMAP = init_map(_DATAMAP, 2, 0)
|
||||
|
||||
def __init__(self, value=None):
|
||||
GrampsType.__init__(self, value)
|
||||
@@ -66,3 +66,6 @@ from _ChildRefType import ChildRefType
|
||||
from _RepositoryType import RepositoryType
|
||||
from _EventType import EventType
|
||||
from _FamilyRelType import FamilyRelType
|
||||
from _SourceMediaType import SourceMediaType
|
||||
from _EventRoleType import EventRoleType
|
||||
from _MarkerType import MarkerType
|
||||
|
||||
Reference in New Issue
Block a user