GEPS 041: New Selector
What should be the Selector?
What is the need?
- Select one record (object) via the Graphical User Interface
- Display main data, for letting the user make the selection
- Usability and consistency
- Search and filter features
Screenshots
Usage, goal and Usability
- Selection
- Edition
- Reports
- Filtering for selecting a group of records (objects)
- Navigation, history and active objects
- Runtime and performance
- Selection expected by the user, marked and tagged objects
Filter vs. Search
There are two ways to find data in Gramps: Search and Filter.
- The Search will only match what is visible.
- Filters are not limited to what you see on the screen, but looks at the actual data.
See some filters for more details.
Search Bar
The current design of the Search bar lets us find visible data on active column. The Search Bar is often available on selectors.
Set of filter rules
For now, some selectors, on reports and on Family Editor, provide a fast filter, by default.
The Search bar is disabled and an additionnal Show all bouton is available at the bottom of the dialog.
These windows are trying to provide a quick and common selection of people.
e.g., filtered by gender on Family Editor, or bookmarked people on reports.
Interactive Search
For limiting a gtk issue on Search field, gramps42 has it own interactive search widget.
Just write the first letters of the word on the dialog, and the cursor will try to find this word.
Like the Find shortcut box, available with CTRL+F or CMND+F.
Limits on current selectors
- Time for search
- Performance
- Few fast filter rules, by default
- Consistency, mixup of features and widgets
Note, there is still a Gtk SearchEntry bug (latency and collapsed seizure)
limiting a good search match: max_length(3).
Fixed since gramps 4.2.0, see bug report 1450.
Proposals
Current Selectors:
Selector | Columns | Interactive Search key |
---|---|---|
Person | Name, ID, Gender, Birth Date, Birth Place, Death Date, Death Place, Spouse, Last Change | Name |
Family | ID, Father, Mother, Last Change | ID |
Event | Type, Main Participants, Date, Place, Description, ID, Last Change | Type |
Place | Name, ID, Type, Title, Last Change | Name |
Source | Title, Author, ID, Last Change | Title |
Citation | Source: Title or Citation: Volume/Page, ID, Last Change | Source: Title |
Repository | Title, ID, Last Change | Title |
Media | Title, ID, Type, Last Change | Title |
Note | Preview, ID, Type, Tags, Last Change | Preview |
New Selectors:
Selector | Columns | Interactive Search key |
---|---|---|
Person | Name, ID, Gender, Birth Date, Birth Place, Death Date, Death Place, Spouse, |
Name |
Family | ID, Father, Mother, |
ID |
Event | Type, Main Participants, Date, Place, Description, ID, |
Type |
Place | Name, ID, Type, Title, |
Name |
Source | Title, Author, ID, |
Title |
Citation | Source: Title or Citation: Volume/Page, ID, |
Source: Title |
Repository | Title, ID, |
Title |
Media | Title, ID, Type, |
Title |
Note | Preview, ID, Type, Tags, |
Preview |
Fast filter by default
Ability to have a fast filter with the last active and bookmarked objects.
Some experimentations have been made on feature request 5024.
Current selector ecosystem already provides this ability.
See Person selector on reports and Father/Mother selector on Family Editor.
There is a bug 9315 on the Show all/Find features. See others
Clever search for each selector
See selector and query on gramps-connect.
Ability to also use one search field matching on multiple columns (names, ID, date, etc ...)
Interface for handling and selecting custom filters on selectors
See mockups and new features since Gnome 3.20.
Additional proposals
- Replace the Show all check box at the bottom by a Switcher at the top of the dialog.
See also
Feature requests
- 9276: Need ability to search alternate place names when selecting place
- 8762: Last Used places in the Select Place window
- 8743: Search for place needs more options
- 7342: Show "Main Participants" with events
- 6558: Optimize the use of citations
- 5142: Keep selected the last selected source
- 5037: [Reports] More names listed in the person/family selector box
- 5024: By default, to display [Last Recent Used] and [bookmarked] objects on selectors
Others
- 9315: [Regression]: filter set by default on selector is ignored on load (_init_)
- 9314: Two selectors on Places report can generate a confusion
- 9028: Find is broken when used in the Family selector
- 7536: Events model does not have 8 columns
- 7514: Searching on Listviews is VEEERYYY slow and typing echo is scrambled
- 5032: Report selection logic
- 1450: Incremental Gtk Search is broken on View