* src/EditRepository.py: fixes for lack of parent window handles
use of dbstate. Commented out code to bold labels for now as
Utils.bold_label does not work. Renamed DelReposQuery.
* src/EditSource.py: fixed repository ref edit code to use dbstate.
* src/RepositoryRefEdit.py: fixes for dbstate and commented out window
management code.
* src/RepositoryView.py: fixes for dbstate, commented out remove repos
code for now as it does not work. Fixes edit repository call.
svn: r5092
* src/DisplayState.py: Rename from DbState, kepp only DisplayState
class.
* src/GrampsDbBase.py: Add DbState class.
* src/MapView.py: Swap zoom_in and zoom_out to reflect reality;
add place list with the ScrollableWindow, request size for the
place list.
* src/ViewManager.py: Use DisplayState.DisplayState.
* src/gramps_main.py: Use GrampsDbBase.DbState; add docstring;
svn: r5055
* src/MapView.py: New View showing locations on a map. Early unfinished version.
* src/gramps_main.py: Enable MapView
* src/land_shallow_topo_2048.jpg:
* src/land_shallow_topo_350.jpg: Two new map images downloaded from NASA so the are assumed to be public domain.
svn: r5050
* src/PageView.py (get_stock): Work around not existing definition of gtk.STOCK_MEDIA_MISSING by using gtk.STOCK_MISSING_IMAGE.
* src/PedView.py: Start using new PageView logic. Unfinished.
* src/gramps_main.py: Enable PedView
svn: r5041
status
* src/PageView.py: base class for pluggable views
* src/PersonView.py: new version of PeopleView
* src/ViewManager.py: view and database management class
svn: r5040
existing events with the default role; Only commit new Event when
OK clicked in the editor.
* src/RelLib.py: Add assertions for external witness methods.
* src/gramps.glade:
svn: r4835
for the stock calendar and drawer.
* src/events24.png: Update small icon.
* src/gramps.glade: Use new icons for the Event View and
Repository View side bar buttons. Add small icons to the main
notebook tabs.
svn: r4822
active_key to None.
* src/gramps.glade (marriageDialog): Remove displayed strings from
the Sttributes tab.
* src/Marriage.py: Delegate attribute handling to ListBox.
* src/ListBox.py (AttrListBox): Support both personal and family
attributes.
svn: r4815
made no in the editor.
* src/EventEdit.py: Use combined mapping for all events.
* src/FamilyView.py: Proper display of child relations.
* src/Marriage.py: Commit events; properly call common event/ref
editor.
* src/Utils.py: Minor.
svn: r4813
* src/Utils.py (family_event_roles): Add mapping.
* src/RelLib.py (EventRef): Add FAMILY role.
* src/Marriage.py: Start using Listbox, so far for Events only.
* src/ListBox.py: Support both person and family primaries.
* src/EventEdit.py: Support both person and family primaries.
* src/EditPerson.py (on_apply_person_clicked): Do not commit
event, as this is done in the editor.
svn: r4809
* src/edit_person.glade (event_tab): Correct tooltips.
* src/SelectEvent.py: Add to CVS.
* src/Makefile.am: Ship SelectEvent.py file.
* src/SelectChild.py (build_list): Use mapping from Utils.
* src/ReadGrdb.py (importData): Properly copy event table.
* src/ListBox.py: Properly fill in the Combo maps without
collisions; Add Role to the EventListbox; Support selecting an
existing Event object.
* src/GrampsInMemDB.py: Support for event id table.
* src/GrampsDbBase.py: Support for event id table.
* src/GrampsBSDDB.py: Support for event id table; emit
event-delete signal when events are deleted.
* src/EventView.py: Support deleting events.
* src/EventEdit.py: Support deleting events; Proper adding events.
svn: r4801
* src/AutoComp.py (by_value): Use locale-aware sorting.
* src/EditPerson.py: Support select button for the event tab.
* src/EventEdit.py (EventRefEditor): Editor for both events and
event refs.
* src/ListBox.py: Support for select button; Proper removal of
entries; Proper Event/ref editing support; fixes for combos.
* src/NameEdit.py: Typo.
* src/edit_person.glade: Add select button to the event tab.
* src/gramps.glade: Add new editor for both events and refs.
svn: r4796
* src/Utils.py: Move constant mappings from const.py.in.
* src/const.py.in: Move constants and mappings elsewhere.
* various: Use constants from RelLib, not const.
* src/RelLib.py: Fix (int,str) types.
* src/GrampsBSDDB.py (upgrade_7): Handle case of not set default person
svn: r4737
* src/FamilyView.py: Support for event references.
* src/ListBox.py: Support for event references.
* src/PedView.py: Support for event references.
* src/RelLib.py: Support for event references.
svn: r4700
references; call display_references when idle;
(display_references): set cursor to LEFT_PTR when done.
* src/ListModel.py (__init__): Typo.
* src/Utils.py (bold_label,unbold_label): make work with both
labels and their parent containers.
svn: r4669
* src/EventEdit.py: Don't commit events here - should be commited
elsewhere
* src/ListModel.py: Add support for table callback functions
to update data after inline editing
svn: r4447
icon to indicate used tabs
* src/AttrEdit.py: use new label scheme for tabs that uses an
icon to indicate used tabs
* src/NameEdit.py: use new label scheme for tabs
* src/Date.py: incorporate instance check form gramps20 branch
* src/EditPerson.py: add additional fields for name edit, handle
lds page better, adapt to new label scheme
* src/GrampsDbBase.py: fix typos
* src/GrampsGEDDB.py: fix undo handling
* src/GrampsInMemDB.py: fix undo handling
* src/GrampsXMLDB.py: fix undo handling
* src/PeopleView.py: don't reselect an already selected person
* src/Utils.py: new tab scheme
* src/edit_person.glade new tab scheme
* src/gramps_main.py: 1->True, 0->False replacements
* src/DbPrompter.py: bring up to date with gramps20 branch
* src/DisplayModels.py: bring up to date with gramps20 branch
* src/ReadGedcom.py: bring up to date with gramps20 branch
* src/Relationship.py: bring up to date with gramps20 branch
svn: r4406
* src/EditPerson.py: start of new EditPerson dialog
* src/ListModel.py: enhancements for the start of inline editing
* src/Makefile.am: add edit_person.glade
* src/ReadXML.py: commit transactions properly
* src/const.py.in: add edit_person.glade back in
svn: r4375
transaction_commit task, instead of the commit_* tasks
* src/GrampsInMem.py: actually perform the commits during the
transaction_commit task, instead of the commit_* tasks
* src/GrampsDbBase.py: actually perform the commits during the
transaction_commit task, instead of the commit_* tasks
svn: r4370
* src/plugins/plugins/TestcaseGenerator.py: Added option to generate a new transaction for every change on the database. Useful for UNDO and signal testing.
svn: r4361
* src/GrampsDBCallback.py: block recursive signal calls, improved error
reporting. All warnings are now printed to stderr even if logging
is turned off.
svn: r4328
delete operation
* src/PeopleView.py: remove unused signal
* src/gramps_main.py: handle history mechanism with new signal scheme,
avoiding the double active-changed when selecting an element
svn: r4326
* src/gramps.glade: Added "Invert" checkbox for person filter
* src/PeopleView.py (build_tree): Pass Invert state for Filter to PeopleModel
* src/PeopleModel.py: Enable invertation of filter result
svn: r4323
* src/GenericFilter.py: added a current year parameter to probably alive rule.
* src/Utils.py: added a current year parameter to probably alive function.
svn: r4312
* src/DdTargets.py: added PERSON_LINK_LIST target.
* src/FamilyView.py: corrected bug when person is droped if there is no current
family.
* src/PeopleView.py: enabled dnd of lists of people.
* src/plugins/ScratchPad.py: support lists of people.
svn: r4308
* src/plugins/Check.py: Block signal emission during run
* src/plugins/ImportGeneWeb.py: Block signal emission during run
* src/plugins/ImportvCard.py: Block signal emission during run
* src/plugins/TestcaseGenerator.py: Block signal emission during run
svn: r4306
* src/GrampsDBCallback.py: improved error reporting when there is an error in
a callback function. Added unittest for exception in callback function.
svn: r4305
* src/PedView.py: Connect to "database-changed" signal and handle person-update signals to redraw the view.
* src/FamilyView.py (__init__) connect to database-changed signal, dont call change_cb because on initialisation there is no real database. (change_db): use database parameter supplied by signal emission.
* src/PeopleView.py (__init__) dont connect the signals, this will be done by change_db, (change_db): Use supplied database.
* src/SourceView.py (__init__): dont call change_cb because on initialisation there is no real database and this will be done by the signal.
svn: r4304
* src/plugins/ScratchPad.py: made clear buttons sensitive to contents of
list and current selection. Added support for PERSON_LINK dnd.
* src/DdTargets.py: added PERSON_LINK target and simplified generation of
targets lists.
* src/FamilyView.py: added dnd of person handles to and from the child list.
* src/PeopleView.py: added dnd of person handles from the person list.
svn: r4303
* src/PeopleModel.py: Show Baptism/Burial as fallback for birth/death. Based on patch from Jim Smart.
* src/PeopleView.py: Enable makup that PeopleModel can render fallback data in italics.
svn: r4299
* src/RelLib.py (Event.are_equal): Correction.
* src/Date.py (is_empty): Require empty text for a date to be empty.
* src/WriteXML (write_object): Remove places from Media.
* src/GrampsDbBase.py (undo): Typos.
* src/GrampsDBCallback: Pretty printing for warnings.
svn: r4297
* src/FamilyView.py: fix update of child pointers after add
* src/PeopleView.py: unselect previous entry on new goto_active_person
* src/MediaView.py: pass handle instead of GRAMPS ID during drag-n-drop
svn: r4296
* src/GrampsDbBase.py: remove transaction.batch in favor of signal suppression
* src/GrampsInMemDB.py: remove transaction.batch in favor of signal suppression
* src/ReadGedcom.py: fix relation typo, enable/disable signals around import
* src/ReadXML.py: enable/disable signals around import
* src/gramps_main.py: disable signals before undo and exit
svn: r4295
requests in the database instance
* src/ReadXML.py: use request_rebuild instead of directly emitting s
ignals
* src/ReadGedCom.py: use request_rebuild instead of directly emitting
signals
svn: r4292
* src/GrampsDBCallback.py: Added code to disable/enable signals on
a per instance or all instance bassis. Improved test code and
changed type checking to use isinstance instead of type().
svn: r4291
* src/PedView.py: change_active_person typo
* src/PeopleView.py: don't change active person with updated
* src/SelectChild.py: Fix callbacks
* src/gramps_main.py: load active family on change
svn: r4289
creating a new one.
* src/DisplayModels.py: Calculate new nodes properly after a
node has be deleted. The node hasn't been removed from the database
yet.
* src/EditPerson.py: Add check for unknown gender before closing
* src/EditSource.py: Remove unnecessary updates
* src/GrampsBSDDB.py: check for open in close()
* src/GrampsDbBase.py: spelling error
* src/MediaView.py: connect to database-changed
* src/PedView.py: remove unused update function
* src/PeopleView.py: connect to database-changed
* src/PlaceView.py: connect to database-changed
* src/SourceView.py: connect to database-changed, remove unnecessary
callback
* src/gramps_main.py: add database-changed signal
svn: r4288
* src/GrampsDbBase.py: remove duplicate signal emissions
* src/SourceView.py: reformat code
* src/Sources.py: catch source-add signal and redraw menu
svn: r4283
* src/DdTargets.py: added dnd type for media objects
* src/ImageSelect.py: altered dnd code to use gramps specific dnd target
when dnd is used between gramps windows.
* src/plugins/ScratchPad.py: added support for media object. This is still
a little simplistic. It would be nice to generate thumbnails as tooltips and
to access some of the image meta data in the ui.
svn: r4274
* src/plugins/ScratchPad.py: changed pickle to cPickle. cPickle is much faster.
* src/EditPerson.py: changed pickle to cPickle. cPickle is much faster.
* src/EditPlace.py: changed pickle to cPickle. cPickle is much faster.
* src/Marriage.py: changed pickle to cPickle. cPickle is much faster.
* src/Sources.py: changed pickle to cPickle. cPickle is much faster.
svn: r4271
* src/plugins/ScratchPad.py (ScratchPadListView.object_drag_data_received,
ScratchPadListView.on_object_select_row): disables drop that originates from the
pad itself and enabled dropping into the correct row as indicated by the
UI.
svn: r4270
provides a registration mechanism to signal interested objects
when database commits occur. The eliminates most of all callback
functions tied to interface windows.
* src/AddrEdit.py: new database callback scheme
* src/AttrEdit.py: new database callback scheme
* src/ChooseParents.py: new database callback scheme
* src/EditPerson.py: new database callback scheme
* src/EditPlace.py: new database callback scheme
* src/EditSource.py: new database callback scheme
* src/EventEdit.py: new database callback scheme
* src/FamilyView.py: new database callback scheme
* src/GrampsBSDDB.py: new database callback scheme
* src/GrampsDbBase.py: new database callback scheme
* src/GrampsInMemDB.py: new database callback scheme
* src/Marriage.py: new database callback scheme
* src/NameEdit.py: new database callback scheme
* src/PeopleView.py: new database callback scheme
* src/PlaceView.py: new database callback scheme
* src/ReadGedcom.py: new database callback scheme
* src/ReadXML.py: new database callback scheme
* src/SourceView.py: new database callback scheme
* src/Sources.py: new database callback scheme
* src/gramps_main.py: new database callback scheme
svn: r4267
upgrades to separate methods; provide upgrade_5 method.
* src/RelLib.py: Remove place from MediaObjects; minor improvements.
* src/SourceView.py (button_press): Proper selection on double-click.
* src/plugins/Check.py (check_for_broken_family_links): Typo.
svn: r4265
* src/plugins/stock_link.png: added icon for scratchpad display
* src/DdTargets.py (all_text): new method to return all text ddtypes
* src/TreeTips.py (__treetip_show): added support for tips to be callable
methods so that tips can be generated on the fly.
* src/plugins/Makefile.am: added stock_link.png icon
* src/plugins/ScratchPad.py: almost complete rewrite to make proper use
of gtk widgets and make more flexible for adding support for new
dnd object types. Added link icon if the object is a link to a primary
object.
svn: r4262
merging for families. Copy alternate names.
* src/plugins/Merge.py: support for new merge technique
* src/PeopleView.py: divide rebuild_data into two functions
* src/PeopleModel.py: clean up insertion functions
* src/gramps_main.py: remove unused code
svn: r4261
* src/gramps.glade: add menu items for merging
* src/MergePeople.py: new person merge
* src/gramps_main.py: merge handling callbacks
* src/mergedata.glade: updated interface for merging
* src/SourceView.py: connect SourceView.merge into the multiple
selection mechanism
svn: r4254
improvements, (read_file): Always re-initialize Undo and Redo items
to insensitive blanks after new database load; (post_load): Set up
database's callbacks for Undo and Redo after load.
* src/gramps.glade: Make Redo label non-stock to allow label change.
svn: r4253
* src/DdTargets.py: add family targets to target list functions
* src/Marriage.py (at_dest_drag_data_received, ev_dest_drag_data_received,
ev_source_drag_data_get, at_source_drag_data_get): fixed dnd methods and
added use of DdTarget types.
* src/plugins/ScratchPad.py (generate_family_event_tooltip,
generate_family_event_tooltip, redraw_object_list): added support for
family events and attributes.
svn: r4249
* src/ReadGedcom.py: Use get_note for comments.
* src/ReadXML.py: Use get_note for comments.
* src/Sources.py: Use get_note for comments.
* src/WriteGedcom.py: Use get_note for comments.
* src/WriteXML.py: Use get_note for comments.
* src/plugins/Ancestors.py: Use get_note for comments.
* src/plugins/FtmStyleAncestors.py: Use get_note for comments.
* src/plugins/FtmStyleDescendants.py: Use get_note for comments.
* src/plugins/NavWebPage.py: Use get_note for comments.
* src/plugins/ScratchPad.py: Use get_note for comments.
* src/plugins/WebPage.py: Use get_note for comments.
svn: r4246
* src/ScratchPad.py (ScratchPadWindow): moved content of pad to a
class attribute so that it is preserved when the pad is closed.
* src/ScratchPad.py (add_itself_to_menu, remove_itself_from_menu):
removed large section of commented code.
svn: r4237
* src/Sources.py: converted to use DdTargets.py
* src/FamilyView.py: converted to use DdTargets.py
* src/EditPerson.py: converted to use DdTargets.py
* src/EditPlace.py: converted to use DdTargets.py
* src/Marriage.py: converted to use DdTargets.py
* src/DdTargets.py: added targets for FAMILY_EVENT, FAMILY_ATTRIBUTE,
CHILD and SPOUSE
svn: r4236
* src/DdTargets.py: new module to manage drag and drop target data.
* src/Makefile.am: added DdTargets.py
* src/ScratchPad.py: modified to use DdTargets.py. This is the first
stage. I will look at modifying EditPersons.py to use DdTargets.py next
svn: r4231
* src/ReadXML.py: Use get_date_object for source refs.
* src/WriteXML.py: Use get_date_object for source refs.
* src/WriteGedcom.py: Use get_date_object for sourcerefs.
* src/plugins/FtmStyleAncestors.py: Use get_date_object for sourcerefs.
* src/plugins/FtmStyleDescendants.py: Use get_date_object for sourcerefs.
* src/plugins/NavWebPage.py: Use get_date_object for sourcerefs.
* src/plugins/WebPage.py: Use get_date_object for sourcerefs.
* src/RelLib.py (DateBase): Add base class for keeping Date;
(MediaBase): Do not inherit from BaseObject; (Event,MediaObject,LdsOrd,
Address,Name,SourceRef): Inherit all date-related methods from DateBase.
svn: r4222
* src/PeopleModel.py: add cause of death field
* src/PeopleView.py: add cause of death field
* src/gramps.glade: add scratchpad button
* src/gramps_main.py: add scratchpad button press callback
* src/plugins/ScratchPad.py: call alternate dialog
* src/plugins/scratchpad.glade: provide alternate dialog based
on gtk.Dialog that implements the help button.
svn: r4213
* src/EditPerson.py (draw_lds): Add date LED buttons for LDS dates;
(lds_field): Always set date text for LDS dates.
* src/Marriage.py (__init__): Add date LED button for LDS date.
svn: r4212
* src/plugins/ScratchPad.py: Tidy up of drag target type handling.
* src/EditPerson.py (x_drag_data_received): fixed problem with
drag and drop of objects that have srcrefs.
svn: r4206
* src/const.py.in: Add custom exception "ErrorSchemaInvalid"
* src/GrampsMime.py (mime_type_is_defined): New method that returns True/False
* src/gramps_main.py (__init__) Catch "ErrorSchemaInvalid" exception and check for installed MIME-type. Show error because installation is incomplete.
svn: r4200
* configure.in: Use AM_SHARED_MIME macro.
* src/data/Makefile.am: Use defined GCONF_SCHEMA_FILE_DIR and
SHARED_MIME_DIR, not the hardcoded paths.
svn: r4199
* src/plugins/ExportVCard.py: New (unfinished) plugin to export addresses to pim applications.
* src/plugins/vcardexport.glade: GUI for the Exporter Druid of vCard export
* src/plugins/ExportVCalendar.py: New (unfinished) plugin to export events for calendaring applications.
* src/plugins/vcalendarexport.glade: GUI for the Exporter Druid of vCalendar export
svn: r4197
Added wrapper to use regexp matching in HasTextMatchingSubstringOf
* src/gramps_main.py: Add new regular expression filter
* src/plugins/FilterEditor.py (EditRule:__init__): Treat params of new filter as boolean.
* TODO: Add parameter definition of Filter Rules to the filter itself, so it can be removed from the filter editor and used by
PeopleView.
svn: r4193
Rename FullTextSearch as well as its descriptions.
* src/gramps_main.py: Change string for filter menu.
* src/plugins/FilterEditor.py (EditRule.__init__): Hide window while
drawing.
* src/DateEdit.py (DateEditorDialog.__init__): Hide window while
drawing.
svn: r4186
Family.get_text_data_child_list): Add missing lists.
* src/GenericFilter.py (FullTextSearch): Correct description.
* src/GenericFilter.py (FullTextSearch): Added new filter that provides
a full-text search thru (nearly) all attributes and linked objects of a person.
svn: r4185
* src/Makefile.am : Added TreeTip.py to list of installed modules.
* src/TreeTip.py: New module that implements tooltips on TreeView rows.
* src/plugins/Makefile.am: Added ScratchPad.py and scratchpad.glade.
* src/plugins/ScratchPad.py: New module to implement a scratch pad for
temporary storage of drag and drop objects.
* src/plugins/scratchpad.glade: New glade file for ScratchPad window.
svn: r4184
a full-text search thru (nearly) all attributes and linked objexts of a person.
* src/gramps_main.py: add the new filter to the menu.
* src/RelLib.py (Event,Source): fix get_text_data_child_list() to correct
attributes of the class; (Family): fix get_sourcref_child_list().
svn: r4183
and oneself's parents as a spouse; When aborting, do not close dialog.
* src/RelLib.py (BaseObject): Add base data class, to support
capabilites common to all gramps objects; (matches_string,
matches_regexp): Add methods for searching textual objects;
(Person,Family,Event,Place,Source,MediaRef,LdsOrd,Attribute,Address,
Name,Location,Note,Url,Witness,SourceRef): Add methods for determining
textual objects and children with textual objects.
svn: r4182
* src/EditPerson.py: Always have birth/death events (never None);
Use new update method for dates; Only commit death/birth if changed;
Only add new birth/death if non-empty.
* src/EventEdit.py: Translate stored event names before including in
menu; Exclude birth/death from menu; Do not add birth/death to the
custom event types; Only detect type change for non-birth/death.
* src/GrampsDbBase.py: Do not commit objects with empty handles.
* src/GrampsInMemDB.py: Do not commit objects with empty handles.
* src/Utils.py (family_name): Add clause for unknown parents.
svn: r4172
reset(), that are called before/after a filter is applied, to properly
support query caches; (IsWitness): new filter;
(RelationshipPathBetween,IsDescendantOf,IsLessThanNthGenerationDescendantOf,
IsMoreThanNthGenerationDescendantOf,IsChildOfFilterMatch,IsSiblingOfFilterMatch,
IsAncestorOf,IsAncestorOfFilterMatch,IsLessThanNthGenerationAncestorOf,
IsMoreThanNthGenerationAncestorOf,IsParentOfFilterMatch,HasCommonAncestorWith):
use prepare() and reset() to create a proper query cache. Currently the
cache was only created once after object creation and never updated.
* src/gramps_main.py: Add new filters to the menu.
svn: r4171
Add generic data recovery message.
* src/gramps_main.py (delete_person_clicked): Use generic data recovery
message.
* src/SourceView.py (on_delete_clicked): Use generic data recovery
message.
* src/EditSource.py (display_references): Change list headings.
* src/MediaView.py (on_delete_clicked): Use new mediaref detector;
Use generic data recovery message; (delete_objectmis-object_used):
Remove functions.
* src/ImageSelect.py (GlobalMediaProperties.display_ref): Use new
sourceref detection; (DeleteMediaQuery__init__): Accept object handle
and lists; (DeleteMediaQuery.query_response): Use new mediaref removal.
svn: r4161
integer value instead of string to relationship type
* src/FamilyView.py: fix child relationship display value
* src/GrampsBSDDB.py: upgrade to DB version 4 (remove string
relationship types)
svn: r4152
* src/EditPlace.py: add srcref as a drag and drop item
* src/Marriage.py: add srcref as a drag and drop item
* src/WriteGedcom.py: catch empty event
* src/Sources.py: add drag-n-drop for source references
svn: r4147
(calls from ChooseParents don't provide the correct parent, but then
the full update goes on anyway).
* src/ChooseParents.py (mother_list_select_row,
father_list_select_row): Comment out auto-selection of parents.
svn: r4139