New FamilyTreeView Addon

@stuck
I think I forgot to mention that @roptat implemented clicking and dragging in the mini map. It has been merged and is available in the latest version (v0.1.40).

@roptat Again, thank you very much for your contribution!

3 Likes

It seems I have to ramble a bit, to ensure this post is >20 characters, in order to just say thank you!

2 Likes

A post was merged into an existing topic: Addon Manager and addon lists problems for non-English Gramps

Moved ā€œsingle subjectā€ postings to:

Responses that address multiple issues (beyond the Addon Manager problem) had to remain in this thread.

1 Like

@Bouscram
I finally debugged the expanders for other families of ancestor generations. Please update to v0.1.41 of FTV and check if it works. Here is a screenshot of the artificially complicated example tree with many ā€œother familiesā€ expanders expanded:

@Woody
I also fixed the problem with the visualization of ā€œexpanding other families of spouses of other familiesā€ by simply not showing them (of course you can see them if you make your great-grandfatherā€™s second wife the active person). As discussed above, in an alternative visualization (yet to be implemented) these families (e.g. the first marriage of your great-grandfatherā€™s second wife) could probably be visualized.

Let me know if there are other issues with the expanders.

Thanks for these quick updates!

Here are some additional observations:

  • I also remarked the same thing as @Woody (other spouses of additional husband/wives canā€™t be shown without changing the active person) and wondered if it was a choice but I understand it should change
  • Also, there are no expanders to show the children of the additional families: same question, is it a choice?

I donā€™t know if putting expanders everywhere there is something to show wonā€™t lead to overcomplicated representations. One of the main interest of your design is that it is very simple and efficient.
If I need something more complete I can go to the Graph View (but it has no expanders and can be a bit slow if too much is shown)

1 Like

@Bouscram
Thanks for your feedback!

Before v0.1.41 they were shown, but in an odd position. I removed them to avoid confusing the user with overlapping lines.


They should be there. You can even see them in the screenshot of my last message:


In the config window on the expanders page, you can disable and hide all expanders to get a cleaner visualization. Do you recommend to hide the expanders by default (at least some of them)?


In your experience, is FTV faster than GraphView when showing roughly the same people?

To answer to your points:

  1. Regarding the children in the additional families, they seem to be visible only when the expansion is done at level n+1 (mother or father of the active person). If it is done at an earlier generation, they donā€™t appear.

  2. No, I donā€™t think you should hide the expanders by default. Their use is pretty straightforward and they are quite elegant.

  3. Definitively yes, FTV is faster; it is really fast, even with a large number of people, when GraphView always takes some time (at least 1 second) to appear (I have a M1 Mac Mini, so a relatively powerful machine)

I have spotted another oddity: when one of the spouses is the active person, the expander for the other is not there. It only appears when it is active, or when one of their children is active. This is quite disturbingā€¦ if fact I tend to think that when an expansion is possible, the expander should be present - rules to control the automatic expansion are a good idea, to allow the user to define how he wants to show.

Another unrelated remark: in the FTV panel timeline, the ā€œmariageā€ events should show the spouse name, it is really missing.

1 Like

@Bouscram
Thank you for your answers.

This is intended. The other families of the ā€œinnerā€ grandparents (e.g. paternal grandmother and maternal grandfather) have a connection below them. It would cause crossing lines if children were added to them. For the sake of fairness, the other families of the ā€œouterā€ grandparents donā€™t show children either. This also applies to all other ancestors of older generations.

Iā€™m glad about this positive feedback. FTV isnā€™t even much optimized at the moment, so it might be faster in the future (or a bit slower if the features to be implemented are computationally expensive and the optimization canā€™t fully compensate for that).

Iā€™m not sure I understand you correctly, because Iā€™m experiencing something different from the way I understand you. In the following screenshot, ā€œGarner, Eugene Stanley, Jr.ā€ is the active person. The expander of his first wife is shown (and expanded):

I have also thought about this and plan to include expander-like symbols with three dots (centered ā€œā€¦ā€) to show that there are more people, but they cannot be expanded with the currently active person.

Could you please elaborate on your idea and explain how you imagine these rules to work and how the user should define them. Currently, expanders have different types (e.g. ā€œother familiesā€) and users can choose whether they want them to be expanded by default or not.

This is also known. Sorry for all the small open items, but Iā€™m trying my best to implement and fix many important issues first.

1 Like

@ztlxltl Donā€™t be sorry for anythingā€¦ The work done so far work is really impressive. Take what you want from what I say, and implement it at your own paceā€¦

Regarding my point about the expander for the non active spouse, I was not clear: I was speaking of the expander to the ancestors (upwards). In your example, even if Josephine Pelletier has ancestors, the upwards expander wouldnā€™t show (as it is in your screenshot). I donā€™t see a reason for it.

Iā€™m not sure I understand the answer to my 1st point, why should it create crossing lines ? That is, unless you donā€™t want to change the layout, which can be a choice.

Concerning the rules, I donā€™t have a particular idea, there are already some which may be enough.

And another thing Iā€™ve been forgetting since I started commenting: can you add a way to change the default zoom level whet you first start the view at Gramps launch. For me at least it is way too big, and I have to zoom out each time.

Thatā€™s all for today (and the week-end also)!

1 Like

@Bouscram
Thank you for your kind words.

The reason for this is that I havenā€™t implemented it yet. :wink:
Iā€™m currently working on final bug fixes for the ā€œother parentsā€ expanders. They donā€™t address your point, but they already partially cover some of the changes needed to show the parents of the spouse of the active person.

Take a look at the screenshot below.
Where should the children of ā€œJordan, Williamā€ go? I can only think of the position of the blue circle. This would cause the line connecting them (the red connection) to intersect the existing (black) connection.

I can do that. Iā€™ll add it to my list.

1 Like

I was able to debug all visualization problems with the ā€œother parentsā€ expanders (diagonal arrow next to the parents expander). With version 0.1.43 of FTV you can now expand other parents of the active person and itā€™s ancestors.

With this update, you can reach almost all people connected by family relationships (i.e. everything except associated people and people connected only by event references) by expanding expanders and changing the active person to a person visualized in the view. The only exception Iā€™m aware of is siblings of a person where there is a parent family but both parents are missing.
Iā€™m planning to add expanders for siblings of the active person and their ancestors, so this last edge case limitation will also be removed in a future update.

As always, Iā€™m looking for feedback and bug reports (e.g. combinations of family relationships I didnā€™t think of while testing).

1 Like

@Woody @Urchello
I have just released an update (v0.1.44) that adds the much requested support for dark themes. All colors are taken from the current theme and/or Grampsā€™ color scheme or, including color shades (e.g. different grays), created by mixing foreground and background in a certain ratio. This should also allow adaptation to unusual themes, e.g. with red as foreground and green as background (exception: use of Grampsā€™ get_contrast_color), although I havenā€™t tested this.

Many thanks to @codefarmer for pointing me in the right direction. I finally found what I was looking for (widget.get_style_context().lookup_color('theme_fg_color')) on codecov in an orphaned commit of the PR referenced in the bug you linked to. For some reason I havenā€™t found this on the web before, maybe I used the wrong keywords.

I also implemented to update the view when the theme or Grampsā€™ color scheme for charts changes. I noticed that this is not the case for other views, so they may want to adapt something similar if applicable. Also, I couldnā€™t find a signal to notify the view when Grampsā€™ color scheme changes, so I had to connect directly to the config.

Regarding badges, there is currently no support for providing an alternative color for dark themes, so they may appear too bright. However, I have an extension to the badge interface on my list.

I noticed that the contrast of Grampsā€™ default dark color scheme for person boxes and family boxes is not as good as the contrast of the light color scheme, which is especially noticeable in the minimap, but I suspect that anyone who regularly uses Gramps with a dark theme has adjusted the colors if this was a problem.

Since Iā€™m not a regular user of a dark theme in Gramps, please let me know if there are any issues with the dark theme support. Thanks!

3 Likes

Yes, it works good! Thank you a lot!

One more small UI suggestion. When we use ā€œOwn and relativesā€™ eventsā€ option, all the events are smeshed. What If add some labels on the eventsā€™ cards for fast understanding whoose event is it: father, mother, child, partner, ā€¦?

1 Like

@Urchello
Iā€™m not sure what you mean by that. Are they displayed incorrectly? If you donā€™t want to upload a screenshot with names from your tree, you can use the example tree or create a new tree with dummy data to reproduce the problem.

The relationship should be displayed with the event. For the events in the following screenshot, you can see that they are from the sisters of the selected person.

I think there are still many cases where the way events are displayed can be improved.

No, the events order is corrent. I only mean show labels over the events because it is not so clear whoose is the event. But it happened because I dont have good event descriptions. Some of them have enough details like this

image

But another dont have descriptions like this

image

Hmh,ā€¦ I think its really my problem. I need make my descriptions better .

1 Like

In the Config Expanders, Expand Subtree by Default, when you select Other Parents, it deselects Other Families, When selecting Other Families, it deselects Other Parents.

I manually edited Ancestry_family_tree_view.ini making both options True and the views builds correctly.

I am getting an error when testing Other families of spouses.

9155191: ERROR: grampsapp.py: line 188: Unhandled exception
Traceback (most recent call last):
File ā€œC:\Users\Public\Genealogy\gramps\gramps52\plugins\FamilyTreeView\family_tree_view_config_provider.pyā€, line 579, in cb_expander_toggled
path
= str([t[0] for t in expander_types].index(expander_type_))
^^^^^^^^^^^^^^
UnboundLocalError: cannot access local variable ā€˜expander_type_ā€™ where it is not associated with a value

1 Like

@DaveSch
This is intended. Please read the note at the bottom of the window:
image


In general, I wouldnā€™t recommend doing that.

Iā€™ve pushed a fix. Please try version 0.1.45 of FTV.

OK, now I get it. The black (white in the light theme) events are from the person described in the upper part of the panel. Thatā€™s why the name is not displayed. The other events are events from relatives. Thatā€™s why the name is displayed for them.

But I see that itā€™s not intuitive that the events without names describe the person shown in the upper part of the panel.

1 Like

Iā€™m very happy that you were able to adapt the colors to the dark mode. Now I can also read the side panel properly.

1 Like