-
Notifications
You must be signed in to change notification settings - Fork 424
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve the backlinks (References) gramplets #1832
base: master
Are you sure you want to change the base?
Improve the backlinks (References) gramplets #1832
Conversation
Teach the set of backlinks (References) gramplets how to set the active object. Usage: select the row of the object you want to make active, then middle mouse button
I'd welcome suggestions on how to make this feature more discoverable. |
Very nice! Regarding making the functionality more discoverable, some ideas:
|
In some other features, there is a left selecting action, a left double-click action, a center-click action and a right-click context menu. And the context menu normally includes the left and center click actions. https://gramps-project.org/wiki/index.php/Gramps_5.2_Wiki_Manual_-_Keybindings#Context_menu The experimental CardView addons included not only extensive use of the center mouse button but also preferences GUI for swapping the actions for mouse buttons. It also uses modifier click. |
Given that some hover tooltip message boxes can be quite large and obscure the click or drag handles, there needs to be a way to suppress the tooltips too. (i.e., moving the mouse pointer upwards does not pop tooltips over the data that you are moving towards. But downwards movement has problematic tooltips obscuring data.) Tooltips popping up can really impede expert users' ability to see the genealogical data and interact with their mouse GUI. |
I'll add a simple context menu with Edit and Make Active options |
Note that one of the big uses of the References is drag'n'drop to the clipboard. (Although the copy keybinding is not supported.) Can anyone point me towards where a context menu for the 'ref' clipboard objects should be added to the clipboard code? The objects have context menus (which include options like 'make active' or make a custom filter) but the ref objects are lacking that. So a context menu that merely added the referenced object to the Clipboard would be a workaround. |
I'll add mention of the button actions to the wiki. And link to it from the Gramps Glossary. Maybe a 'Help' context menu item pointing to the Glossary item makes sense? https://gramps-project.org/wiki/index.php/Gramps_Glossary#references_tab The link in the Glossary goes to a wiki placeholder. It will be re‐directed to a better article: |
…y more discoverable
56dea3c
to
9f4e0c7
Compare
Mapping from an object class to the drag icon
I've added drag support to the References gramplet. You can now drag a row from this gramplet and drop it onto the clipboard. Recording.2024-12-26.193840.mp4What doesn't work, and I don't know why yet, is dragging from the Reference gramplet directly to an editor window. For example, drag the same person as above, and drop it onto a new Family editor window and the person is not added to the family. Drag the person from the clipboard into the same family editor window and it works as expected. |
I think I can answer my own question: I am providing data in the format Is there any documentation on the workings of drag and drop within gramps? |
In her Forms addon redevelopment, Renée asked a similar and was referred to the CardView addons since drag'n'drop is implemented so extensively there. (Including the ability to drop citations on closed object to cite that source.) She found it well organized as a reference. https://gramps.discourse.group/t/plans-to-update-forms-addon-over-the-2024-summer/5274/153 |
Set a more appropriate drag source target for the selected object Disable drag if nothing is selected or the type of the selected object is not supported
Drag of objects from the References gramplet is now working as expected for all windows, not just the clipboard. |
A thread in Discourse discusses an edge case for citation shared References. https://gramps.discourse.group/t/reverse-lookups-of-citation-references/4177 In this edge case, it is difficult (or impossible) to determine which non-primary object the Citation was referencing from within the GUI. Does this ambiguity affect the drag'n'drop ref object drop to the clipboard? |
Thanks for finding that thread @emyoulation.
The only reference listed in the References gramplet is the Person created in step 2. The Age attribute from step 4 is not listed and therefore does not cause any problem for the drag and drop code proposed in this PR. The References gramplet relies on |
If there is no active object when the References gramplet is first viewed, the "sd" column is visible. fix this, and give the column a clearer name
…which are an instance of DateBase
Unify the implementation of the following methods in the BackLinks class * db_changed * update_has_data * main
The backlinks gramplet (called References in the UI) is great for finding linked objects. It also allows direct editing of the object by double clicking. However, if you want to make the linked object the active object, you have to go to the relevant object-type view (e.g. Families), and re-find the object.
This enhancement allows the active object to be set directly from the References gramplet. This is currently a two-step process
select the row
press the middle mouse button (anywhere within the gramplet)
The selected object will be made the active object of that type.
In the above example, Family F0403 will be made the active family.
It works for all object types, not just families