* src/DisplayTabs.py: backreference tabs

* src/EditEventRef.py: backreference tabs
* src/EditMedia.py: backreference tabs
* src/EditMediaRef.py: backreference tabs
* src/EditPlace.py: backreference tabs
* src/EditSource.py: backreference tabs
* src/EventEdit.py: backreference tabs
* src/gramps.glade: notebook tab fixes


svn: r5987
This commit is contained in:
Don Allingham 2006-02-24 22:00:20 +00:00
parent 7d7e150749
commit d95c1d7e17
9 changed files with 98 additions and 784 deletions

View File

@ -1,3 +1,13 @@
2006-02-24 Don Allingham <don@gramps-project.org>
* src/DisplayTabs.py: backreference tabs
* src/EditEventRef.py: backreference tabs
* src/EditMedia.py: backreference tabs
* src/EditMediaRef.py: backreference tabs
* src/EditPlace.py: backreference tabs
* src/EditSource.py: backreference tabs
* src/EventEdit.py: backreference tabs
* src/gramps.glade: notebook tab fixes
2006-02-24 Alex Roitman <shura@gramps-project.org> 2006-02-24 Alex Roitman <shura@gramps-project.org>
* src/RelLib/_Person.py (Person.get_handle_referents): Add * src/RelLib/_Person.py (Person.get_handle_referents): Add
birth_ref and death_ref to the list of referents. birth_ref and death_ref to the list of referents.

View File

@ -652,10 +652,10 @@ class PersonEventEmbedList(EventEmbedList):
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
# #
# SourceBackRefList # BackRefList
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
class SourceBackRefList(EmbeddedList): class BackRefList(EmbeddedList):
_HANDLE_COL = 3 _HANDLE_COL = 3
@ -665,18 +665,21 @@ class SourceBackRefList(EmbeddedList):
(_('Name'),2, 250), (_('Name'),2, 250),
] ]
def __init__(self,dbstate,uistate,track,obj): def __init__(self,dbstate,uistate,track,obj,refmodel):
self.obj = obj self.obj = obj
EmbeddedList.__init__(self, dbstate, uistate, track, EmbeddedList.__init__(self, dbstate, uistate, track,
_('References'), SourceBackRefModel) _('References'), refmodel)
self.model.connect('row-inserted',self.update_label)
def update_label(self,*obj):
if not self.model.empty:
self._set_label()
def close(self): def close(self):
self.model.close() self.model.close()
def _set_label(self): def is_empty(self):
self.tab_image.show() return self.model.empty
self.label.set_text("<b>%s</b>" % self.tab_name)
self.label.set_use_markup(True)
def create_buttons(self,share=False): def create_buttons(self,share=False):
self.edit_btn = SimpleButton(gtk.STOCK_EDIT, self.edit_button_clicked) self.edit_btn = SimpleButton(gtk.STOCK_EDIT, self.edit_button_clicked)
@ -693,30 +696,54 @@ class SourceBackRefList(EmbeddedList):
else: else:
self.edit_btn.set_sensitive(False) self.edit_btn.set_sensitive(False)
def get_icon_name(self):
return 'gramps-source'
def get_data(self): def get_data(self):
return self.obj return self.obj
def column_order(self): def column_order(self):
return ((1,0),(1,1),(1,2)) return ((1,0),(1,1),(1,2))
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): def edit_button_clicked(self,obj):
ref = self.get_selected() ref = self.get_selected()
if ref: if ref:
print ref print ref
class SourceBackRefList(BackRefList):
def __init__(self,dbstate,uistate,track,obj):
BackRefList.__init__(self, dbstate, uistate, track, obj,
BackRefModel)
def get_icon_name(self):
return 'gramps-source'
class EventBackRefList(BackRefList):
def __init__(self,dbstate,uistate,track,obj):
BackRefList.__init__(self, dbstate, uistate, track, obj,
BackRefModel)
def get_icon_name(self):
return 'gramps-event'
class MediaBackRefList(BackRefList):
def __init__(self,dbstate,uistate,track,obj):
BackRefList.__init__(self, dbstate, uistate, track, obj,
BackRefModel)
def get_icon_name(self):
return 'gramps-media'
class PlaceBackRefList(BackRefList):
def __init__(self,dbstate,uistate,track,obj):
BackRefList.__init__(self, dbstate, uistate, track, obj,
BackRefModel)
def get_icon_name(self):
return 'gramps-place'
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
# #
# DataEmbedList # DataEmbedList
@ -1210,7 +1237,6 @@ class GalleryTab(ButtonTab):
obj, ref, self.edit_callback) obj, ref, self.edit_callback)
def edit_callback(self, name): def edit_callback(self, name):
print "Callback"
self.changed = True self.changed = True
self.rebuild() self.rebuild()
@ -1479,7 +1505,10 @@ class EventRefModel(gtk.ListStore):
if t == RelLib.EventRef.CUSTOM: if t == RelLib.EventRef.CUSTOM:
return v return v
else: else:
return Utils.event_roles.get(t,"error %d" % t) try:
return Utils.event_roles[t]
except:
return Utils.family_event_roles.get(t,"error %d" % t)
def column_date(self,event_ref): def column_date(self,event_ref):
event = self.db.get_event_from_handle(event_ref.ref) event = self.db.get_event_from_handle(event_ref.ref)
@ -1653,23 +1682,26 @@ class RepoRefModel(gtk.ListStore):
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
# #
# SourceBackRefModel # BackRefModel
# #
#------------------------------------------------------------------------- #-------------------------------------------------------------------------
class SourceBackRefModel(gtk.ListStore): class BackRefModel(gtk.ListStore):
def __init__(self,sref_list,db): def __init__(self,sref_list,db):
gtk.ListStore.__init__(self,str,str,str,str) gtk.ListStore.__init__(self,str,str,str,str)
self.db = db self.db = db
self.sref_list = sref_list self.sref_list = sref_list
self.idle = 0 self.idle = 0
self.empty = True
self.idle = gobject.idle_add(self.load_model().next) self.idle = gobject.idle_add(self.load_model().next)
def close(self): def close(self):
gobject.source_remove(self.idle) gobject.source_remove(self.idle)
def load_model(self): def load_model(self):
self.empty = True
for ref in self.sref_list: for ref in self.sref_list:
self.empty = False
dtype = ref[0] dtype = ref[0]
if dtype == 'Person': if dtype == 'Person':
p = self.db.get_person_from_handle(ref[1]) p = self.db.get_person_from_handle(ref[1])
@ -1714,3 +1746,4 @@ class SourceBackRefModel(gtk.ListStore):
yield True yield True
yield False yield False

View File

@ -79,7 +79,6 @@ class EditEventRef(DisplayState.ManagedWindow):
event, event_ref, referent, update): event, event_ref, referent, update):
self.db = state.db self.db = state.db
self.state = state self.state = state
self.uistate = uistate
self.referent = referent self.referent = referent
self.event_ref = event_ref self.event_ref = event_ref
self.event = event self.event = event
@ -214,7 +213,6 @@ class EditEventRef(DisplayState.ManagedWindow):
""" """
Creates the notebook tabs and inserts them into the main Creates the notebook tabs and inserts them into the main
window. window.
""" """
self.srcref_list = self._add_page(SourceEmbedList( self.srcref_list = self._add_page(SourceEmbedList(
@ -229,6 +227,9 @@ class EditEventRef(DisplayState.ManagedWindow):
self.gallery_tab = self._add_page(GalleryTab( self.gallery_tab = self._add_page(GalleryTab(
self.state, self.uistate, self.track, self.state, self.uistate, self.track,
self.event.get_media_list())) self.event.get_media_list()))
self.backref_tab = self._add_page(EventBackRefList(
self.state, self.uistate, self.track,
self.state.db.find_backlink_handles(self.event.handle)))
def build_menu_names(self,eventref): def build_menu_names(self,eventref):
if self.event: if self.event:

View File

@ -80,7 +80,6 @@ class EditMedia(DisplayState.ManagedWindow):
return return
self.state = state self.state = state
self.uistate = uistate
self.pdmap = {} self.pdmap = {}
self.obj = obj self.obj = obj
@ -183,6 +182,15 @@ class EditMedia(DisplayState.ManagedWindow):
self.notebook.set_tab_label(self.note_tab,self.note_tab.get_tab_widget()) self.notebook.set_tab_label(self.note_tab,self.note_tab.get_tab_widget())
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())
self.backref_list = self._add_page(MediaBackRefList(
self.state,self.uistate,self.track,
self.db.find_backlink_handles(self.obj.handle)))
def _add_page(self,page):
self.notebook.insert_page(page)
self.notebook.set_tab_label(page,page.get_tab_widget())
return page
def build_menu_names(self,person): def build_menu_names(self,person):
win_menu_label = _("Media Properties") win_menu_label = _("Media Properties")
return (_('Edit Media Object'),win_menu_label) return (_('Edit Media Object'),win_menu_label)

View File

@ -73,7 +73,6 @@ class EditMediaRef(DisplayState.ManagedWindow):
media, media_ref, update): media, media_ref, update):
self.db = state.db self.db = state.db
self.state = state self.state = state
self.uistate = uistate
self.media_ref = media_ref self.media_ref = media_ref
self.media = media self.media = media
self.update = update self.update = update
@ -161,6 +160,10 @@ class EditMediaRef(DisplayState.ManagedWindow):
self.state,self.uistate,self.track, self.state,self.uistate,self.track,
self.media_ref.get_attribute_list())) self.media_ref.get_attribute_list()))
self.backref_list = self._add_src_page(MediaBackRefList(
self.state,self.uistate,self.track,
self.db.find_backlink_handles(self.media.handle)))
self.note_ref_tab = self._add_ref_page(NoteTab( self.note_ref_tab = self._add_ref_page(NoteTab(
self.state, self.uistate, self.track, self.state, self.uistate, self.track,
self.media_ref.get_note_object())) self.media_ref.get_note_object()))

View File

@ -70,7 +70,6 @@ class EditPlace(DisplayState.ManagedWindow):
def __init__(self,dbstate,uistate,track,place): def __init__(self,dbstate,uistate,track,place):
self.dbstate = dbstate self.dbstate = dbstate
self.uistate = uistate
DisplayState.ManagedWindow.__init__(self, uistate, track, place) DisplayState.ManagedWindow.__init__(self, uistate, track, place)
@ -200,7 +199,7 @@ class EditPlace(DisplayState.ManagedWindow):
self.web_list = self._add_page(WebEmbedList( self.web_list = self._add_page(WebEmbedList(
self.dbstate,self.uistate,self.track, self.dbstate,self.uistate,self.track,
self.place.get_url_list())) self.place.get_url_list()))
self.backref_list = self._add_page(SourceBackRefList( self.backref_list = self._add_page(PlaceBackRefList(
self.dbstate,self.uistate,self.track, self.dbstate,self.uistate,self.track,
self.db.find_backlink_handles(self.place.handle))) self.db.find_backlink_handles(self.place.handle)))

View File

@ -279,6 +279,7 @@ class EditSource(DisplayState.ManagedWindow):
def on_delete_event(self,obj,b): def on_delete_event(self,obj,b):
self.backref_tab.close() self.backref_tab.close()
self.close()
def on_help_clicked(self,obj): def on_help_clicked(self,obj):
"""Display the relevant portion of GRAMPS manual""" """Display the relevant portion of GRAMPS manual"""

View File

@ -171,6 +171,9 @@ class EventEditor(DisplayState.ManagedWindow):
self.gallery_tab = self._add_page(GalleryTab( self.gallery_tab = self._add_page(GalleryTab(
self.dbstate, self.uistate, self.track, self.dbstate, self.uistate, self.track,
self.event.get_media_list())) self.event.get_media_list()))
self.backref_tab = self._add_page(EventBackRefList(
self.dbstate, self.uistate, self.track,
self.dbstate.db.find_backlink_handles(self.event.handle)))
self.notebook.show_all() self.notebook.show_all()
vbox.pack_start(self.notebook,True) vbox.pack_start(self.notebook,True)

View File

@ -4025,752 +4025,6 @@ Text Beside Icons</property>
</child> </child>
</widget> </widget>
<widget class="GtkDialog" id="sourceDisplay">
<property name="visible">True</property>
<property name="title" translatable="yes"></property>
<property name="type">GTK_WINDOW_TOPLEVEL</property>
<property name="window_position">GTK_WIN_POS_NONE</property>
<property name="modal">False</property>
<property name="default_width">550</property>
<property name="resizable">True</property>
<property name="destroy_with_parent">False</property>
<property name="icon">gramps.png</property>
<property name="decorated">True</property>
<property name="skip_taskbar_hint">False</property>
<property name="skip_pager_hint">False</property>
<property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
<property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
<property name="focus_on_map">True</property>
<property name="urgency_hint">False</property>
<property name="has_separator">False</property>
<signal name="delete_event" handler="on_sourceDisplay_delete_event" last_modification_time="Thu, 19 Feb 2004 23:20:28 GMT"/>
<child internal-child="vbox">
<widget class="GtkVBox" id="vbox27">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">8</property>
<child internal-child="action_area">
<widget class="GtkHButtonBox" id="hbuttonbox17">
<property name="visible">True</property>
<property name="layout_style">GTK_BUTTONBOX_END</property>
<child>
<widget class="GtkButton" id="button95">
<property name="visible">True</property>
<property name="can_default">True</property>
<property name="can_focus">True</property>
<property name="label">gtk-cancel</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="response_id">-6</property>
<signal name="clicked" handler="on_cancel_srcDisplay_clicked" last_modification_time="Thu, 19 Feb 2004 23:19:53 GMT"/>
</widget>
</child>
<child>
<widget class="GtkButton" id="ok">
<property name="visible">True</property>
<property name="can_default">True</property>
<property name="has_default">True</property>
<property name="can_focus">True</property>
<property name="label">gtk-ok</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="response_id">-5</property>
<signal name="clicked" handler="on_ok_srcDisplay_clicked" last_modification_time="Thu, 19 Feb 2004 23:20:09 GMT"/>
</widget>
</child>
<child>
<widget class="GtkButton" id="button144">
<property name="visible">True</property>
<property name="can_default">True</property>
<property name="can_focus">True</property>
<property name="label">gtk-help</property>
<property name="use_stock">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="response_id">-11</property>
<signal name="clicked" handler="on_help_srcDisplay_clicked" last_modification_time="Wed, 19 Nov 2003 04:19:32 GMT"/>
</widget>
</child>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="pack_type">GTK_PACK_END</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="vbox28">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">0</property>
<child>
<widget class="GtkLabel" id="title">
<property name="visible">True</property>
<property name="label" translatable="yes"></property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="padding">5</property>
<property name="expand">False</property>
<property name="fill">False</property>
</packing>
</child>
<child>
<widget class="GtkVBox" id="vbox29">
<property name="visible">True</property>
<property name="homogeneous">False</property>
<property name="spacing">0</property>
<child>
<widget class="GtkTable" id="table19">
<property name="border_width">12</property>
<property name="visible">True</property>
<property name="n_rows">12</property>
<property name="n_columns">4</property>
<property name="homogeneous">False</property>
<property name="row_spacing">6</property>
<property name="column_spacing">12</property>
<child>
<widget class="GtkLabel" id="label243">
<property name="visible">True</property>
<property name="label" translatable="yes">_Confidence:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="mnemonic_widget">conf</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">6</property>
<property name="bottom_attach">7</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label180">
<property name="visible">True</property>
<property name="label" translatable="yes">_Volume/Film/Page:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="mnemonic_widget">spage</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">7</property>
<property name="bottom_attach">8</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label181">
<property name="visible">True</property>
<property name="label" translatable="yes">_Date:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="mnemonic_widget">sdate</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
<accessibility>
<atkrelation target="sdate" type="label-for"/>
</accessibility>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">8</property>
<property name="bottom_attach">9</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label182">
<property name="visible">True</property>
<property name="label" translatable="yes">Te_xt:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
<accessibility>
<atkrelation target="stext" type="label-for"/>
</accessibility>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">9</property>
<property name="bottom_attach">10</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label183">
<property name="visible">True</property>
<property name="label" translatable="yes">Co_mments:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
<accessibility>
<atkrelation target="scomment" type="label-for"/>
</accessibility>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">10</property>
<property name="bottom_attach">11</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label173">
<property name="visible">True</property>
<property name="label" translatable="yes">Publication information:</property>
<property name="use_underline">False</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label174">
<property name="visible">True</property>
<property name="label" translatable="yes">Author:</property>
<property name="use_underline">False</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label175">
<property name="visible">True</property>
<property name="label" translatable="yes">_Title:</property>
<property name="use_underline">True</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_CENTER</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">1</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">1</property>
<property name="right_attach">2</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="sauthor">
<property name="visible">True</property>
<property name="label" translatable="yes"></property>
<property name="use_underline">False</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0</property>
<property name="yalign">0.5</property>
<property name="xpad">3</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">2</property>
<property name="bottom_attach">3</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="spubinfo">
<property name="visible">True</property>
<property name="label" translatable="yes"></property>
<property name="use_underline">False</property>
<property name="use_markup">False</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">True</property>
<property name="selectable">False</property>
<property name="xalign">0</property>
<property name="yalign">0.5</property>
<property name="xpad">3</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">3</property>
<property name="bottom_attach">4</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label255">
<property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;Source selection&lt;/b&gt;</property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">0</property>
<property name="right_attach">4</property>
<property name="top_attach">0</property>
<property name="bottom_attach">1</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkLabel" id="label254">
<property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;Source details&lt;/b&gt;</property>
<property name="use_underline">False</property>
<property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property>
<property name="wrap">False</property>
<property name="selectable">False</property>
<property name="xalign">0</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
<property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
<property name="width_chars">-1</property>
<property name="single_line_mode">False</property>
<property name="angle">0</property>
</widget>
<packing>
<property name="left_attach">0</property>
<property name="right_attach">4</property>
<property name="top_attach">5</property>
<property name="bottom_attach">6</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow31">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<property name="window_placement">GTK_CORNER_TOP_LEFT</property>
<child>
<widget class="GtkTextView" id="spage">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="overwrite">False</property>
<property name="accepts_tab">True</property>
<property name="justification">GTK_JUSTIFY_LEFT</property>
<property name="wrap_mode">GTK_WRAP_NONE</property>
<property name="cursor_visible">True</property>
<property name="pixels_above_lines">0</property>
<property name="pixels_below_lines">0</property>
<property name="pixels_inside_wrap">0</property>
<property name="left_margin">0</property>
<property name="right_margin">0</property>
<property name="indent">0</property>
<property name="text" translatable="yes"></property>
</widget>
</child>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">7</property>
<property name="bottom_attach">8</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow21">
<property name="visible">True</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<property name="window_placement">GTK_CORNER_TOP_LEFT</property>
<child>
<widget class="GtkTextView" id="stext">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="overwrite">False</property>
<property name="accepts_tab">True</property>
<property name="justification">GTK_JUSTIFY_LEFT</property>
<property name="wrap_mode">GTK_WRAP_WORD</property>
<property name="cursor_visible">True</property>
<property name="pixels_above_lines">0</property>
<property name="pixels_below_lines">0</property>
<property name="pixels_inside_wrap">0</property>
<property name="left_margin">0</property>
<property name="right_margin">0</property>
<property name="indent">0</property>
<property name="text" translatable="yes"></property>
</widget>
</child>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">9</property>
<property name="bottom_attach">10</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkScrolledWindow" id="scrolledwindow20">
<property name="visible">True</property>
<property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
<property name="shadow_type">GTK_SHADOW_IN</property>
<property name="window_placement">GTK_CORNER_TOP_LEFT</property>
<child>
<widget class="GtkTextView" id="scomment">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="overwrite">False</property>
<property name="accepts_tab">True</property>
<property name="justification">GTK_JUSTIFY_LEFT</property>
<property name="wrap_mode">GTK_WRAP_WORD</property>
<property name="cursor_visible">True</property>
<property name="pixels_above_lines">0</property>
<property name="pixels_below_lines">0</property>
<property name="pixels_inside_wrap">0</property>
<property name="left_margin">0</property>
<property name="right_margin">0</property>
<property name="indent">0</property>
<property name="text" translatable="yes"></property>
</widget>
</child>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">10</property>
<property name="bottom_attach">11</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkButton" id="button143">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Creates a new source</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">_New...</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<signal name="clicked" handler="on_add_src_clicked" last_modification_time="Sun, 23 Mar 2003 23:22:04 GMT"/>
</widget>
<packing>
<property name="left_attach">3</property>
<property name="right_attach">4</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkCheckButton" id="priv">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="label" translatable="yes">_Private record</property>
<property name="use_underline">True</property>
<property name="relief">GTK_RELIEF_NORMAL</property>
<property name="focus_on_click">True</property>
<property name="active">False</property>
<property name="inconsistent">False</property>
<property name="draw_indicator">True</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">11</property>
<property name="bottom_attach">12</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkEntry" id="sdate">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="editable">True</property>
<property name="visibility">True</property>
<property name="max_length">0</property>
<property name="text" translatable="yes"></property>
<property name="has_frame">True</property>
<property name="invisible_char">*</property>
<property name="activates_default">False</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">8</property>
<property name="bottom_attach">9</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkButton" id="date_stat">
<property name="visible">True</property>
<property name="tooltip" translatable="yes">Invoke date editor</property>
<property name="can_focus">True</property>
<property name="relief">GTK_RELIEF_NONE</property>
<property name="focus_on_click">True</property>
<signal name="clicked" handler="on_edit_date_death_clicked" last_modification_time="Sat, 18 Sep 2004 02:30:11 GMT"/>
<child>
<widget class="GtkImage" id="image2362">
<property name="visible">True</property>
<property name="xalign">0.5</property>
<property name="yalign">0.5</property>
<property name="xpad">0</property>
<property name="ypad">0</property>
</widget>
</child>
</widget>
<packing>
<property name="left_attach">3</property>
<property name="right_attach">4</property>
<property name="top_attach">8</property>
<property name="bottom_attach">9</property>
<property name="x_options">fill</property>
<property name="y_options"></property>
</packing>
</child>
<child>
<widget class="GtkComboBox" id="conf">
<property name="visible">True</property>
<property name="items" translatable="yes">Very Low
Low
Normal
High
Very High</property>
<property name="add_tearoffs">False</property>
<property name="focus_on_click">True</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">4</property>
<property name="top_attach">6</property>
<property name="bottom_attach">7</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
<child>
<widget class="GtkComboBox" id="source_title">
<property name="visible">True</property>
<property name="add_tearoffs">False</property>
<property name="focus_on_click">True</property>
</widget>
<packing>
<property name="left_attach">2</property>
<property name="right_attach">3</property>
<property name="top_attach">1</property>
<property name="bottom_attach">2</property>
<property name="x_options">fill</property>
<property name="y_options">fill</property>
</packing>
</child>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">True</property>
</packing>
</child>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">True</property>
</packing>
</child>
</widget>
<packing>
<property name="padding">0</property>
<property name="expand">True</property>
<property name="fill">True</property>
</packing>
</child>
</widget>
</child>
</widget>
<widget class="GtkDialog" id="select_person"> <widget class="GtkDialog" id="select_person">
<property name="title" translatable="yes"></property> <property name="title" translatable="yes"></property>
<property name="type">GTK_WINDOW_TOPLEVEL</property> <property name="type">GTK_WINDOW_TOPLEVEL</property>
@ -16196,12 +15450,13 @@ Very High</property>
<widget class="GtkHBox" id="hbox128"> <widget class="GtkHBox" id="hbox128">
<property name="visible">True</property> <property name="visible">True</property>
<property name="homogeneous">False</property> <property name="homogeneous">False</property>
<property name="spacing">0</property> <property name="spacing">6</property>
<child> <child>
<widget class="GtkImage" id="image2688"> <widget class="GtkImage" id="image2688">
<property name="visible">True</property>
<property name="stock">gtk-file</property> <property name="stock">gtk-file</property>
<property name="icon_size">4</property> <property name="icon_size">1</property>
<property name="xalign">0.5</property> <property name="xalign">0.5</property>
<property name="yalign">0.5</property> <property name="yalign">0.5</property>
<property name="xpad">0</property> <property name="xpad">0</property>
@ -16217,7 +15472,7 @@ Very High</property>
<child> <child>
<widget class="GtkLabel" id="label618"> <widget class="GtkLabel" id="label618">
<property name="visible">True</property> <property name="visible">True</property>
<property name="label" translatable="yes">General</property> <property name="label" translatable="yes">&lt;b&gt;General&lt;/b&gt;</property>
<property name="use_underline">False</property> <property name="use_underline">False</property>
<property name="use_markup">True</property> <property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_CENTER</property> <property name="justify">GTK_JUSTIFY_CENTER</property>
@ -16651,12 +15906,13 @@ Very High</property>
<widget class="GtkHBox" id="eer_general_tab"> <widget class="GtkHBox" id="eer_general_tab">
<property name="visible">True</property> <property name="visible">True</property>
<property name="homogeneous">False</property> <property name="homogeneous">False</property>
<property name="spacing">0</property> <property name="spacing">6</property>
<child> <child>
<widget class="GtkImage" id="image2634"> <widget class="GtkImage" id="image2634">
<property name="visible">True</property>
<property name="stock">gtk-file</property> <property name="stock">gtk-file</property>
<property name="icon_size">4</property> <property name="icon_size">1</property>
<property name="xalign">0.5</property> <property name="xalign">0.5</property>
<property name="yalign">0.5</property> <property name="yalign">0.5</property>
<property name="xpad">0</property> <property name="xpad">0</property>
@ -16672,7 +15928,7 @@ Very High</property>
<child> <child>
<widget class="GtkLabel" id="label506"> <widget class="GtkLabel" id="label506">
<property name="visible">True</property> <property name="visible">True</property>
<property name="label" translatable="yes">General</property> <property name="label" translatable="yes">&lt;b&gt;General&lt;/b&gt;</property>
<property name="use_underline">False</property> <property name="use_underline">False</property>
<property name="use_markup">True</property> <property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_CENTER</property> <property name="justify">GTK_JUSTIFY_CENTER</property>
@ -16704,7 +15960,7 @@ Very High</property>
<child> <child>
<widget class="GtkLabel" id="label520"> <widget class="GtkLabel" id="label520">
<property name="visible">True</property> <property name="visible">True</property>
<property name="label" translatable="yes">&lt;b&gt;Shared event information&lt;/b&gt;</property> <property name="label" translatable="yes">&lt;b&gt;Shared information&lt;/b&gt;</property>
<property name="use_underline">False</property> <property name="use_underline">False</property>
<property name="use_markup">True</property> <property name="use_markup">True</property>
<property name="justify">GTK_JUSTIFY_LEFT</property> <property name="justify">GTK_JUSTIFY_LEFT</property>