* src/DisplayTabs.py: Add source ref model/tab
* src/PeopleModel.py: specify handle column * src/PersonView.py: fix selection column * src/EditFamily.py: remove icon in father/mother column, add source tab svn: r5825
This commit is contained in:
parent
6ed9d0a161
commit
253fa7639a
@ -1,6 +1,9 @@
|
|||||||
2006-01-23 Don Allingham <don@gramps-project.org>
|
2006-01-23 Don Allingham <don@gramps-project.org>
|
||||||
|
* src/DisplayTabs.py: Add source ref model/tab
|
||||||
|
* src/PeopleModel.py: specify handle column
|
||||||
|
* src/PersonView.py: fix selection column
|
||||||
* src/DisplayState.py: Warning log handler, add timeout handler
|
* src/DisplayState.py: Warning log handler, add timeout handler
|
||||||
* src/EditFamily.py: remove icon in father/mother column
|
* src/EditFamily.py: remove icon in father/mother column, add source tab
|
||||||
* src/EditPerson.py: remove commented out code
|
* src/EditPerson.py: remove commented out code
|
||||||
* src/GrampsWidgets.py: add WarnButton
|
* src/GrampsWidgets.py: add WarnButton
|
||||||
* src/ViewManager.py: use WarnButton in the status bar
|
* src/ViewManager.py: use WarnButton in the status bar
|
||||||
|
@ -332,6 +332,49 @@ class GalleryTab(ButtonTab):
|
|||||||
def edit_button_clicked(self,obj):
|
def edit_button_clicked(self,obj):
|
||||||
print "Media Edit clicked"
|
print "Media Edit clicked"
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# SourceEmbedList
|
||||||
|
#
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
class SourceEmbedList(EmbeddedList):
|
||||||
|
|
||||||
|
_HANDLE_COL = 6
|
||||||
|
|
||||||
|
column_names = [
|
||||||
|
(_('ID'),0),
|
||||||
|
(_('Title'),1),
|
||||||
|
]
|
||||||
|
|
||||||
|
def __init__(self,dbstate,uistate,track,obj):
|
||||||
|
self.obj = obj
|
||||||
|
EmbeddedList.__init__(self, dbstate, uistate, track,
|
||||||
|
_('Sources'), SourceRefModel)
|
||||||
|
|
||||||
|
def get_icon_name(self):
|
||||||
|
return 'gramps-event'
|
||||||
|
|
||||||
|
def get_data(self):
|
||||||
|
return self.obj
|
||||||
|
|
||||||
|
def column_order(self):
|
||||||
|
return ((1,0),(1,1))
|
||||||
|
|
||||||
|
def add_button_clicked(self,obj):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def del_button_clicked(self,obj):
|
||||||
|
ref = self.get_selected()
|
||||||
|
if ref:
|
||||||
|
ref_list = self.obj.get_event_ref_list()
|
||||||
|
ref_list.remove(ref)
|
||||||
|
self.rebuild()
|
||||||
|
|
||||||
|
def edit_button_clicked(self,obj):
|
||||||
|
ref = self.get_selected()
|
||||||
|
if ref:
|
||||||
|
print ref
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# ChildModel
|
# ChildModel
|
||||||
@ -512,6 +555,23 @@ class AttrModel(gtk.ListStore):
|
|||||||
else:
|
else:
|
||||||
return Utils.personal_attributes[t[0]]
|
return Utils.personal_attributes[t[0]]
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# SourceRefModel
|
||||||
|
#
|
||||||
|
#-------------------------------------------------------------------------
|
||||||
|
class SourceRefModel(gtk.ListStore):
|
||||||
|
|
||||||
|
def __init__(self,sref_list,db):
|
||||||
|
gtk.ListStore.__init__(self,str,str)
|
||||||
|
self.db = db
|
||||||
|
for sref in sref_list:
|
||||||
|
src = db.get_source_from_handle(sref.ref)
|
||||||
|
self.append(row=[
|
||||||
|
src.gramps_id,
|
||||||
|
src.title,
|
||||||
|
])
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
# FamilyAttrModel
|
# FamilyAttrModel
|
||||||
|
@ -297,6 +297,8 @@ class EditFamily(DisplayState.ManagedWindow):
|
|||||||
self.track, self.family)
|
self.track, self.family)
|
||||||
self.event_list = EventEmbedList(self.dbstate,self.uistate,
|
self.event_list = EventEmbedList(self.dbstate,self.uistate,
|
||||||
self.track,self.family)
|
self.track,self.family)
|
||||||
|
self.src_list = SourceEmbedList(self.dbstate,self.uistate,
|
||||||
|
self.track,self.family.source_list)
|
||||||
self.attr_list = AttrEmbedList(self.dbstate, self.uistate, self.track,
|
self.attr_list = AttrEmbedList(self.dbstate, self.uistate, self.track,
|
||||||
self.family.get_attribute_list())
|
self.family.get_attribute_list())
|
||||||
self.note_tab = NoteTab(self.dbstate, self.uistate, self.track,
|
self.note_tab = NoteTab(self.dbstate, self.uistate, self.track,
|
||||||
@ -310,6 +312,9 @@ class EditFamily(DisplayState.ManagedWindow):
|
|||||||
self.notebook.insert_page(self.event_list)
|
self.notebook.insert_page(self.event_list)
|
||||||
self.notebook.set_tab_label(self.event_list,self.event_list.get_tab_widget())
|
self.notebook.set_tab_label(self.event_list,self.event_list.get_tab_widget())
|
||||||
|
|
||||||
|
self.notebook.insert_page(self.src_list)
|
||||||
|
self.notebook.set_tab_label(self.src_list,self.src_list.get_tab_widget())
|
||||||
|
|
||||||
self.notebook.insert_page(self.attr_list)
|
self.notebook.insert_page(self.attr_list)
|
||||||
self.notebook.set_tab_label(self.attr_list,self.attr_list.get_tab_widget())
|
self.notebook.set_tab_label(self.attr_list,self.attr_list.get_tab_widget())
|
||||||
|
|
||||||
|
@ -59,6 +59,7 @@ import Errors
|
|||||||
import RelLib
|
import RelLib
|
||||||
import Date
|
import Date
|
||||||
import DateParser
|
import DateParser
|
||||||
|
import NameDisplay
|
||||||
import DisplayTrace
|
import DisplayTrace
|
||||||
from ansel_utf8 import ansel_to_utf8
|
from ansel_utf8 import ansel_to_utf8
|
||||||
import Utils
|
import Utils
|
||||||
@ -1000,9 +1001,16 @@ class GedcomParser:
|
|||||||
event.set_type((RelLib.Event.CUSTOM,val))
|
event.set_type((RelLib.Event.CUSTOM,val))
|
||||||
else:
|
else:
|
||||||
event.set_type((RelLib.Event.CUSTOM,matches[1]))
|
event.set_type((RelLib.Event.CUSTOM,matches[1]))
|
||||||
|
self.parse_family_event(event,2)
|
||||||
if event.get_type()[0] == RelLib.Event.MARRIAGE:
|
if event.get_type()[0] == RelLib.Event.MARRIAGE:
|
||||||
self.family.set_relationship((RelLib.Family.MARRIED,''))
|
self.family.set_relationship((RelLib.Family.MARRIED,''))
|
||||||
self.parse_family_event(event,2)
|
if event.get_type()[0] != RelLib.Event.CUSTOM:
|
||||||
|
if not event.get_description():
|
||||||
|
text = _("%(event_name)s of %(family)s") % {
|
||||||
|
'event_name' : Utils.family_events[event.get_type()[0]],
|
||||||
|
'family' : Utils.family_name(self.family,self.db),
|
||||||
|
}
|
||||||
|
event.set_description(text)
|
||||||
self.db.add_event(event,self.trans)
|
self.db.add_event(event,self.trans)
|
||||||
|
|
||||||
event_ref = RelLib.EventRef()
|
event_ref = RelLib.EventRef()
|
||||||
@ -1959,6 +1967,7 @@ class GedcomParser:
|
|||||||
event.set_type((RelLib.Event.BIRTH,""))
|
event.set_type((RelLib.Event.BIRTH,""))
|
||||||
self.parse_person_event(event,2)
|
self.parse_person_event(event,2)
|
||||||
|
|
||||||
|
person_event_name(event,state.person)
|
||||||
self.db.add_event(event, self.trans)
|
self.db.add_event(event, self.trans)
|
||||||
|
|
||||||
event_ref = RelLib.EventRef()
|
event_ref = RelLib.EventRef()
|
||||||
@ -1974,6 +1983,7 @@ class GedcomParser:
|
|||||||
event = RelLib.Event()
|
event = RelLib.Event()
|
||||||
event.set_type((RelLib.Event.ADOPT,''))
|
event.set_type((RelLib.Event.ADOPT,''))
|
||||||
self.parse_adopt_event(event,2)
|
self.parse_adopt_event(event,2)
|
||||||
|
person_event_name(event,state.person)
|
||||||
self.db.add_event(event, self.trans)
|
self.db.add_event(event, self.trans)
|
||||||
|
|
||||||
event_ref = RelLib.EventRef()
|
event_ref = RelLib.EventRef()
|
||||||
@ -1988,6 +1998,7 @@ class GedcomParser:
|
|||||||
event.set_type((RelLib.Event.DEATH,""))
|
event.set_type((RelLib.Event.DEATH,""))
|
||||||
self.parse_person_event(event,2)
|
self.parse_person_event(event,2)
|
||||||
|
|
||||||
|
person_event_name(event,state.person)
|
||||||
self.db.add_event(event, self.trans)
|
self.db.add_event(event, self.trans)
|
||||||
|
|
||||||
event_ref = RelLib.EventRef()
|
event_ref = RelLib.EventRef()
|
||||||
@ -2063,6 +2074,7 @@ class GedcomParser:
|
|||||||
self.parse_person_event(event,2)
|
self.parse_person_event(event,2)
|
||||||
if matches[2]:
|
if matches[2]:
|
||||||
event.set_description(matches[2])
|
event.set_description(matches[2])
|
||||||
|
person_event_name(event,state.person)
|
||||||
self.db.add_event(event, self.trans)
|
self.db.add_event(event, self.trans)
|
||||||
|
|
||||||
event_ref = RelLib.EventRef()
|
event_ref = RelLib.EventRef()
|
||||||
@ -2156,7 +2168,17 @@ class GedcomParser:
|
|||||||
|
|
||||||
def skip_record(self,matches,state):
|
def skip_record(self,matches,state):
|
||||||
self.ignore_sub_junk(2)
|
self.ignore_sub_junk(2)
|
||||||
|
|
||||||
|
|
||||||
|
def person_event_name(event,person):
|
||||||
|
if event.get_type()[0] != RelLib.Event.CUSTOM:
|
||||||
|
if not event.get_description():
|
||||||
|
text = _("%(event_name)s of %(person)s") % {
|
||||||
|
'event_name' : Utils.personal_events[event.get_type()[0]],
|
||||||
|
'person' : NameDisplay.displayer.display(person),
|
||||||
|
}
|
||||||
|
event.set_description(text)
|
||||||
|
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
@ -486,7 +486,7 @@ COLUMN_DEFS = [
|
|||||||
]
|
]
|
||||||
|
|
||||||
# dynamic calculation of column indices, for use by various Views
|
# dynamic calculation of column indices, for use by various Views
|
||||||
COLUMN_INT_ID = len(COLUMN_DEFS) - 1
|
COLUMN_INT_ID = 14
|
||||||
|
|
||||||
# indices into main column definition table
|
# indices into main column definition table
|
||||||
COLUMN_DEF_LIST = 0
|
COLUMN_DEF_LIST = 0
|
||||||
|
@ -76,7 +76,7 @@ class PersonView(PageView.PersonNavView):
|
|||||||
self.inactive = False
|
self.inactive = False
|
||||||
dbstate.connect('database-changed',self.change_db)
|
dbstate.connect('database-changed',self.change_db)
|
||||||
dbstate.connect('active-changed',self.goto_active_person)
|
dbstate.connect('active-changed',self.goto_active_person)
|
||||||
self.handle_col = len(column_names)+2
|
self.handle_col = PeopleModel.COLUMN_INT_ID
|
||||||
|
|
||||||
def change_page(self):
|
def change_page(self):
|
||||||
self.generic_filter_widget.on_filter_name_changed(None)
|
self.generic_filter_widget.on_filter_name_changed(None)
|
||||||
@ -233,10 +233,7 @@ class PersonView(PageView.PersonNavView):
|
|||||||
self.generic_filter_widget.apply_filter()
|
self.generic_filter_widget.apply_filter()
|
||||||
|
|
||||||
def goto_active_person(self,obj=None):
|
def goto_active_person(self,obj=None):
|
||||||
import time
|
|
||||||
t = time.time()
|
|
||||||
self.goto_active_person_2(None)
|
self.goto_active_person_2(None)
|
||||||
print time.time() - t
|
|
||||||
|
|
||||||
def goto_active_person_2(self,obj=None):
|
def goto_active_person_2(self,obj=None):
|
||||||
"""
|
"""
|
||||||
@ -329,7 +326,8 @@ class PersonView(PageView.PersonNavView):
|
|||||||
"""
|
"""
|
||||||
if self.active:
|
if self.active:
|
||||||
self.model = PeopleModel.PeopleModel(
|
self.model = PeopleModel.PeopleModel(
|
||||||
self.dbstate.db, self.generic_filter_widget.get_filter(), self.generic_filter_widget.inverted())
|
self.dbstate.db, self.generic_filter_widget.get_filter(),
|
||||||
|
self.generic_filter_widget.inverted())
|
||||||
self.tree.set_model(self.model)
|
self.tree.set_model(self.model)
|
||||||
|
|
||||||
if self.model.tooltip_column != None:
|
if self.model.tooltip_column != None:
|
||||||
@ -351,7 +349,8 @@ class PersonView(PageView.PersonNavView):
|
|||||||
|
|
||||||
def edit(self,obj):
|
def edit(self,obj):
|
||||||
if self.dbstate.active:
|
if self.dbstate.active:
|
||||||
EditPerson.EditPerson(self.dbstate, self.uistate, [], self.dbstate.active)
|
EditPerson.EditPerson(self.dbstate, self.uistate, [],
|
||||||
|
self.dbstate.active)
|
||||||
|
|
||||||
def remove(self,obj):
|
def remove(self,obj):
|
||||||
mlist = self.get_selected_objects()
|
mlist = self.get_selected_objects()
|
||||||
@ -591,7 +590,8 @@ class PersonView(PageView.PersonNavView):
|
|||||||
mlist = []
|
mlist = []
|
||||||
for path in paths:
|
for path in paths:
|
||||||
node = self.model.on_get_iter(path)
|
node = self.model.on_get_iter(path)
|
||||||
mlist.append(self.model.on_get_value(node, PeopleModel.COLUMN_INT_ID))
|
handle = self.model.on_get_value(node, PeopleModel.COLUMN_INT_ID)
|
||||||
|
mlist.append(handle)
|
||||||
return mlist
|
return mlist
|
||||||
|
|
||||||
def remove_from_person_list(self,person):
|
def remove_from_person_list(self,person):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user