Experimental Person Profile View (CardView) Plugin

The latest tweak to the experimental “Profile” View mode [now LinkedView] add-on for Relationships category by @cdhorn has new & unique capabilities for Drag’n’Drop.

  • Dropping an Event onto a Person or Family opens the Reference Editor for the Shared Event so that you can choose a Role or Cancel the Drag’n’Drop insertion.

  • A Person Drag’n’Drop to an Event has valid sharing functionality.

The typical Gramps behavior is to just set the role to “Unknown” during sharing of Events… which is invalid in ALL cases. Fixing the Role required knowing that “Unknown” roles are an inherent problem & drilling down to fix it. (Although not in the purview of this addon, perhaps someday the core code Reference Editor will highlight Unknown in Red like an invalid date or complain about an Unknown Role on a commit like it complains about an Unknown gender when committing a Person Edit.)

Note that an Event copied from some areas of Gramps lists on the clipboard as a “ref” object rather than the main category. These “ref” objects include a non-unknown default Role when shared via Drag’n’Drop.

  • Drag’n’Drop of a Person to a Person creates an Association. This is the only way in Gramps to quickly create initial Associations. (The SyncAssociations tool is still periodically needed for harmonizing the symmetrical or complimentary [reciprocal] Association.)

  • [Pending] Drag’n’Drop of a Person to a Family asks confirmation of the “Birth” relationship to each Parent.

These functionalities need beta testers in all OSes.

WARNING! Please test this feature using the Example.gramps (or other sample data files) rather than your main Tree.


Added an option enabled by default so after adding an Association it reopens the Person Reference editor so you can add the reciprocal one in the other direction. The Associations grouping has also been updated to group the [Reciprocal] ones.

I have to add support for Event <> Family drops yet. I figure the drag and drop support is about 1/3 to 1/2 done now, at least for what I have on my list for this iteration. After that mostly testing and residual cleanup and then I will open a PR against the Addons Source repository and ask Paul to review it.

1 Like

Added an option enabled by default so after adding an Association it reopens the Person Reference editor so you can add the reciprocal one in the other direction. The Associations grouping has also been updated to group the [Reciprocal] ones.

Interesting approach to adding Associations when drag-drop a person.

  1. Where is the option to disable for reciprocal? I dont see it anywhere in Preferences.
  2. Is there a way to prepopulate the reciprocal with data? For instance, Notes and Citations (they are the only children of an Association) since they are likely common. SyncAssociation adds a reference to the reciprocal for both Notes and Citations. In this case, user would just need to set the Association Type.

At the moment under the Global options tab, left side, halfway down. “Create reciprocal associations”

As it just opens the editor a second time if you cancel out of the second session it won’t be added obviously.

This is an excellent idea! I will add it to my to do list.

1 Like

Any notes and citations added to the first person reference are now copied over to the reciprocal one, and added a small mapping table to pre-populate some of the reciprocal types.

I’m really enjoying the thumbnailing for the Reference list on the Media Object LinkedView panel

Download a ZIP of the latest beta version of CardView, explore Chris’ new Statistics Dashboard and give your feedback.

Panels of different stats can be configured or disabled.

It has been going now for 3+ hours and unfortunately still says “Calculating…”. Is there any way to know if it is actually working or is ‘stuck’ (technical term!).
If it is stuck is is not adversely affecting the rest of the functionality. It is possible to exit the statistics dashboard.
I chose tabbed mode and it seems to group the categories by 4. Seems logical.

Otherwise its a great idea and a good first attempt. Better than I could do.

If you’ve been using his experimental add-on, remember to flush any of the .ini files related to his view modes any time there is such a major change. [Like adding an entirely new view mode.]

Also, if you could start Gramps console, more complete diagnostics are echoed to that console window. Copying & pasting those diagnostics could help.

Finally, please make any initial test runs using a Tree based on the example.gramps import. Make sure everything is running before exposing your precious (and fragile) genealogy data to new tools.

1 Like

If there is anything on the console you can share that would help, as well as what operating system you are running and total object count for your tree if it exceeds 100,000 items or so.

It took <5 minutes to process my large database.

People: 238678
Families: 85931
Places: 27156
Events: 362009
Media: 25637
Sources: 2074
Citations: 73580
Repositories: 25
Notes: 15908
Tags: 46

Gramps 5.1.5 on Win10

I did delete the .ini file and ran from the console.
here is the salient piece from the console.

Traceback (most recent call last):
  File "/usr/lib/python3.10/threading.py", line 1009, in _bootstrap_inner
  File "/usr/lib/python3.10/threading.py", line 946, in run
    self._target(*self._args, **self._kwargs)
  File "/home/brian/.gramps/gramps51/plugins/CardView/src/view/services/service_statistics.py", line 203, in collect_statistics
    process = Popen(args, stdout=PIPE)
  File "/usr/lib/python3.10/subprocess.py", line 966, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.10/subprocess.py", line 1842, in _execute_child
    raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'python'
render_page: statistics 0.2625100612640381

running Ubuntu 22.04 with 5.1.4

keep up the good work!

correction: To be a little more precise…
5.1.4 running in linux mint 21 vanessa running in a VM under Ubuntu 22.04.1

Pushed a change that I think should work for you.


Thanks! It works now and I will let you know how my review proceeds.

1 Like

With this new push, it took 1 minute 25 seconds.

1 Like

This is good to hear!

Tried this out today. Could be pretty useful. Only suggestion is to add the ability to open a quickview list of the items matching the things in the card view. Pretty impressed with how fast it is.

Interesting concept. Although the QuickView concept may not be the right interface container for it. (Mostly because the QuickViews are Categorized so that they can be added to the context menus in each category. And to make the views ‘Quick’ these reports have no user options.) So, as QuickView Reports, showing a references list for each counted list of objects would add too many reports.

Are you thinking something like the “Breakdown by Generation” statistics links in the Pedigree Gramplet? Where you can click the Generation and a bare bones hotlinked list of the Person in the Generation pops up?

Another option might be like the clipboard context menu that generates a Custom filter for the object. Where instead, the generated custom filter is based on what filter was used for the statistic. And added benefit is that a custom filter would allow finding the matches AND the non-matches.

Idea coming from the default statistics gramplet, but a few other gramplets use the technique (the name cloud ones in particular).