* src/GrampsDb/_DbUtils.py (db_copy): include missing Note table;

handling Note bookmarks.
	* src/GrampsDb/_GrampsDbWriteXML.py:
	* src/GrampsDb/_GrampsDBDir.py:
	* src/GrampsDb/_GrampsBSDDB.py:
	* src/Bookmarks.py:
	* src/GrampsDbUtils/_ReadXML.py:
	Handling Note bookmarks.

2007-03-27  Zsolt Foldvari  <zfoldvar@users.sourceforge.net>


svn: r8328
This commit is contained in:
Zsolt Foldvari 2007-03-27 21:47:18 +00:00
parent 5257824b63
commit a7083cf69c
8 changed files with 37 additions and 7 deletions

View File

@ -1,3 +1,13 @@
2007-03-27 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/GrampsDb/_DbUtils.py (db_copy): include missing Note table;
handling Note bookmarks.
* src/GrampsDb/_GrampsDbWriteXML.py:
* src/GrampsDb/_GrampsDBDir.py:
* src/GrampsDb/_GrampsBSDDB.py:
* src/Bookmarks.py:
* src/GrampsDbUtils/_ReadXML.py:
Handling Note bookmarks.
2007-03-27 Zsolt Foldvari <zfoldvar@users.sourceforge.net>
* src/GrampsDbUtils/_ReadGrdb.py (importData): include missing Note
table; handle Note bookmarks.

View File

@ -390,13 +390,12 @@ class NoteBookmarks(ListBookmarks) :
goto_handle)
def make_label(self,handle):
#obj = self.dbstate.db.get_place_from_handle(handle)
#name = obj.get_title()
return "<Place Holder>" #("%s [%s]" % (name, obj.gramps_id), obj)
obj = self.dbstate.db.get_note_from_handle(handle)
name = obj.get().replace('\n', ' ')[:80]
return ("%s [%s]" % (name, obj.gramps_id), obj)
def connect_signals(self):
pass
#self.dbstate.db.connect('place-delete', self.remove_handles)
self.dbstate.db.connect('note-delete', self.remove_handles)
def make_callback(n,f):
return lambda x: f(n)

View File

@ -17,7 +17,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# $Id: _PlaceModel.py 8011 2007-01-29 19:13:15Z dallingham $
# $Id$
#-------------------------------------------------------------------------
#

View File

@ -237,6 +237,9 @@ def db_copy(from_db,to_db,callback):
'Repository': {'cursor_func': from_db.get_repository_cursor,
'add_func' : to_db.add_repository,
},
'Note': {'cursor_func': from_db.get_note_cursor,
'add_func': to_db.add_note,
},
}
# Start batch transaction to use async TXN and other tricks
@ -269,6 +272,7 @@ def db_copy(from_db,to_db,callback):
to_db.place_bookmarks = from_db.place_bookmarks
to_db.media_bookmarks = from_db.media_bookmarks
to_db.repo_bookmarks = from_db.repo_bookmarks
to_db.note_bookmarks = from_db.note_bookmarks
# Copy name formats
to_db.name_formats = from_db.name_formats

View File

@ -506,6 +506,8 @@ class GrampsBSDDB(GrampsDbBase,UpdateCallback):
default=[]))
self.place_bookmarks.set(self.metadata.get('place_bookmarks',
default=[]))
self.note_bookmarks.set(self.metadata.get('note_bookmarks',
default=[]))
# Custom type values
self.family_event_names = set(self.metadata.get('fevent_names',
@ -1050,6 +1052,8 @@ class GrampsBSDDB(GrampsDbBase,UpdateCallback):
txn=the_txn)
self.metadata.put('media_bookmarks',self.media_bookmarks.get(),
txn=the_txn)
self.metadata.put('note_bookmarks',self.note_bookmarks.get(),
txn=the_txn)
# gender stats
self.metadata.put('gender_stats',self.genderStats.save_stats(),

View File

@ -513,6 +513,8 @@ class GrampsDBDir(GrampsDbBase,UpdateCallback):
default=[]))
self.place_bookmarks.set(self.metadata.get('place_bookmarks',
default=[]))
self.note_bookmarks.set(self.metadata.get('note_bookmarks',
default=[]))
# Custom type values
self.family_event_names = set(self.metadata.get('fevent_names',
@ -1019,6 +1021,8 @@ class GrampsDBDir(GrampsDbBase,UpdateCallback):
txn=the_txn)
self.metadata.put('media_bookmarks',self.media_bookmarks.get(),
txn=the_txn)
self.metadata.put('note_bookmarks',self.note_bookmarks.get(),
txn=the_txn)
# gender stats
self.metadata.put('gender_stats',self.genderStats.save_stats(),

View File

@ -355,9 +355,11 @@ class GrampsDbXmlWriter(object):
bm_place_len = len(self.db.place_bookmarks.get())
bm_repo_len = len(self.db.repo_bookmarks.get())
bm_obj_len = len(self.db.media_bookmarks.get())
bm_note_len = len(self.db.note_bookmarks.get())
bm_len = bm_person_len + bm_family_len + bm_event_len \
+ bm_source_len + bm_place_len + bm_repo_len + bm_obj_len
+ bm_source_len + bm_place_len + bm_repo_len \
+ bm_obj_len + bm_note_len
if bm_len > 0:
self.g.write(" <bookmarks>\n")
@ -383,6 +385,10 @@ class GrampsDbXmlWriter(object):
for handle in self.db.get_repo_bookmarks().get():
self.g.write(' <bookmark target="repository" hlink="_%s"/>\n'
% handle )
for handle in self.db.get_note_bookmarks().get():
self.g.write(' <bookmark target="note" hlink="_%s"/>\n'
% handle )
self.g.write(" </bookmarks>\n")
def write_name_formats(self):

View File

@ -883,6 +883,9 @@ class GrampsParser(UpdateCallback):
elif target == 'repository':
self.db.check_repository_from_handle(handle,self.trans)
self.db.repo_bookmarks.append(handle)
elif target == 'note':
self.db.check_note_from_handle(handle,self.trans)
self.db.note_bookmarks.append(handle)
def start_format(self,attrs):
number = int(attrs['number'])