Skip to content
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

Filter entities in the UI (part 0): Make CustomContent more useful #8645

Merged
merged 5 commits into from
Jan 11, 2025

Conversation

Copy link

github-actions bot commented Jan 10, 2025

Web viewer built successfully. If applicable, you should also test it:

  • I have tested the web viewer
Result Commit Link Manifest
c3ee2e0 https://rerun.io/viewer/pr/8645 +nightly +main

Note: This comment is updated whenever you push a commit.

@abey79 abey79 added ui concerns graphical user interface include in changelog labels Jan 10, 2025
@abey79 abey79 changed the title Filter entities in the UI (part 0): make CustomContent more useful Filter entities in the UI (part 0): Make CustomContent more useful Jan 10, 2025
@Wumpf Wumpf self-requested a review January 10, 2025 18:30
Copy link
Member

@Wumpf Wumpf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

neat!
makes me so happy that this is right away handled by a screenshot test

}

impl ListItemContent for CustomContent<'_> {
fn ui(self: Box<Self>, ui: &mut egui::Ui, context: &ContentContext<'_>) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

having a bit of a deja vu - isn't this button handling code already somewhere else? (can't tell without digging if that's actually the case and whether that's even a concern)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I already have some kind of abstraction for button thingies (could be menu, could be action). Look for the ItemButton trait. I'm using that in PropertyContent, so I'm piggy backing on it.

@abey79 abey79 merged commit 38cc75b into main Jan 11, 2025
33 checks passed
@abey79 abey79 deleted the antoine/filt0-custom-content branch January 11, 2025 12:06
abey79 added a commit that referenced this pull request Feb 5, 2025
### Related

- Closes #8903
- Part of #8586 
- Part of a series of PR:
  - #8645
  - #8652
  - #8654
  - #8672
  - #8706
  - #8728
  - #8795
  - #8863
  - #8886
  - #8933

### What

This PR supports `/` in filter query. Semantics are now as follows:

- Queries are made of whitespace separated keyword.
- Paths are not matched unless they match all keywords individually at
least once.
- Keywords may have 1 or more  `/` separated "parts".
- Single part keyword behave as before: paths are matched if they
contain that keyword anywhere at least once.
- Single part keyword can now be prefixed and/or postfixed with a slash,
eg. "/fir". In that case, the keyword part must be found at the
beginning and/or end of at least one path part to match (e.g. "/fir"
matches "/my/first/entity" but doesn't match "xxfire/entity").
- Multi-part keyword (e.g. "a/b/c") match paths that contains
corresponding, matching sequence of part (e.g. "/xxxxa/b/cxxxxx"). Such
keywords can also be prefixed and/or postfixed with a "/", with the same
semantics.


<img width="293" alt="image"
src="https://github.com/user-attachments/assets/efca95df-5021-425b-96d2-036aeb7d1236"
/>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
include in changelog ui concerns graphical user interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants