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

Update Space View/Container/Visualizer icons to represent both type and sub-type #4321

Closed
4 tasks
abey79 opened this issue Nov 23, 2023 · 4 comments
Closed
4 tasks
Assignees
Labels
enhancement New feature or request ui concerns graphical user interface

Comments

@abey79
Copy link
Member

abey79 commented Nov 23, 2023

Icons should generally encode two piece of information:

  • Type:
    • space view
    • container
    • visualiser
    • other (this is yet ill-defined, generally include data-related things like entities/component/group/query/etc.)
  • For space views and containers: sub-type: 3D vs. 2d vs. timeseries vs. text etc.
  • For visualisers, we decided to stick to a single icon for all, for the time being.

One should immediately recognise a thing as being a space view even if that particular space view type was never seen before.

This issue is about (roughly in this priority order):

  • devising a "top-level" icon style for each of Space View, Container, Visualizer categories (stretch goal: the loosely defined Data category, which would include entities, component, instances, etc.)
  • updating/creating all Space View icons to the new style
  • creating all Container icons
  • creating the (unique) Visualiser icon

Current list of space view types:

image

Current list of container types:

image
@abey79 abey79 added enhancement New feature or request ui concerns graphical user interface labels Nov 23, 2023
@abey79 abey79 changed the title Space View icons should have a consistent style Update Space View/Container/Visualizer icons to represent both type and sub-type Dec 13, 2023
@nikolausWest
Copy link
Member

nikolausWest commented Dec 19, 2023

Note on where these icons will be used:

  1. In the blueprint tree
  2. Breadcrumbs in the selection view
  3. In the "contents" section in the selection view when a container is selected
  4. In the "add space view or container" modal. Note: these icons may be significantly bigger so it may be preferable to use larger illustrations instead for these.

@abey79
Copy link
Member Author

abey79 commented Dec 20, 2023

Space View types

Here is the list of existing space views, followed by a few screenshot to illustrate the less obvious ones.

image

Bar chart:

image

Text document (can be either markdown or raw text):

image

Tensor:

image

Text Log:

image

Dataframe (big table of all the data):

image

Visualiser types

Short-term decision: let's have one icon for all visualiser types.

For context, the visualiser more or less match the list of archetypes, which can be found here: https://www.rerun.io/docs/reference/types/archetypes

Other icons

Things that are in used today:

image

Issues:

  • bullet vs. diamond is very hard to tell apart at default scale
  • the notion of "group" is likely to disappear
  • the notion of "entity-in-a-space-view" (vs. "entity-in-streams") is going to evolve

To sketch it briefly, the blueprint hierarchy will go Container -> Space View -> Queries -> Visualiser -> Data, where Visualiser will display "Data" that results from "Queries". This data will typically be entities from the store, but could also be other things (like inline data). This means that we will shortly need these icons:

Things in the data store:

  • entities
  • component

Things in the blueprint tree:

  • query
  • visualizer
  • "data" (this is yet ill-defined, there might be subtypes like "data-from-entity", or "static data", etc.)

@abey79
Copy link
Member Author

abey79 commented Dec 20, 2023

abey79 added a commit that referenced this issue Jan 4, 2024
…ierarchy (#4616)

### What

This is an initial take for the new so-called "additive workflow", which
enables building a hierarchy of container and space views from scratch.
It involves the following changes in UX:
- The automatic simplification of the container tree is (mostly)
disabled, as empty containers must be (temporarily) allowed while
building a hierarchy.
- Instead, a new "Simplify Container" button is available in the
Selection Panel to simplify the subtree under the selected container.
- A list if container children is displayed in the container Selection
Panel, with a button to add more.
- A new "Add Container or Space View" modal makes it possible to add a
container and/or a space view of any type in the selected container.
This feature is gated behind an experimental flag (Rerun Menu -> Options
-> Enable the container addition workflow).

<img width="1248" alt="image"
src="https://github.com/rerun-io/rerun/assets/49431240/0b58c298-d75c-480e-a88d-c1a5fe2265f5">

~~This PR also reorganises the experimental flags in the rerun menu such
that they are visible in web and release builds.~~ (superseded by #4661)

Fixes #4492 
Fixes #4493 

#### TODO (not necessarily in this PR)

- [x] Fix the hover/click UI of the big PLUS button in the modal.
- The PLUS button in the blueprint tree panel still shows the older
menu. This should reunified somehow (when we figure out how we want the
heuristics to show up): #4652
- Lots of container tree behaviour edge case to identify and fix.
- The modal really needs the new icons #4321
- Better hover highlight in the modal:
#4673

### Checklist
* [x] I have read and agree to [Contributor
Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and
the [Code of
Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md)
* [x] I've included a screenshot or gif (if applicable)
* [x] I have tested the web demo (if applicable):
* Using newly built examples:
[app.rerun.io](https://app.rerun.io/pr/4616/index.html)
* Using examples from latest `main` build:
[app.rerun.io](https://app.rerun.io/pr/4616/index.html?manifest_url=https://app.rerun.io/version/main/examples_manifest.json)
* Using full set of examples from `nightly` build:
[app.rerun.io](https://app.rerun.io/pr/4616/index.html?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json)
* [x] The PR title and labels are set such as to maximize their
usefulness for the next release's CHANGELOG

- [PR Build Summary](https://build.rerun.io/pr/4616)
- [Docs
preview](https://rerun.io/preview/044dfdff939ae0e7bfa7effd2533a1026a11dd0f/docs)
<!--DOCS-PREVIEW-->
- [Examples
preview](https://rerun.io/preview/044dfdff939ae0e7bfa7effd2533a1026a11dd0f/examples)
<!--EXAMPLES-PREVIEW-->
- [Recent benchmark results](https://build.rerun.io/graphs/crates.html)
- [Wasm size tracking](https://build.rerun.io/graphs/sizes.html)

---------

Co-authored-by: Jeremy Leibs <jeremy@rerun.io>
@abey79
Copy link
Member Author

abey79 commented Jan 16, 2024

This is mostly done. Remaining effort to be tracked here: #4827

@abey79 abey79 closed this as completed Jan 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request ui concerns graphical user interface
Projects
None yet
Development

No branches or pull requests

3 participants