Skip to content

Add support for variant UIs in the DataFusion table widget and show a button in the partition table recording links#10035

Merged
abey79 merged 3 commits into
mainfrom
antoine/table-widget-variant-support
May 22, 2025
Merged

Add support for variant UIs in the DataFusion table widget and show a button in the partition table recording links#10035
abey79 merged 3 commits into
mainfrom
antoine/table-widget-variant-support

Conversation

@abey79
Copy link
Copy Markdown
Member

@abey79 abey79 commented May 21, 2025

Related

What

This PR introduces the ability to specify on a per-column basis a specific variant ui (see #10034) to use. To that end, a new ColumnBlueprint structure is introduced and a bunch of things around that is refactored.

This PR also uses the recently introduced redap_url variant UI to display the recording link as an "open" button instead of a fully URL.

image

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 21, 2025

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

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

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

@abey79 abey79 added ui concerns graphical user interface do-not-merge Do not merge this PR include in changelog feat-redap-browser Everything related to the in-viewer Redap browser labels May 21, 2025
@Wumpf Wumpf self-requested a review May 22, 2025 07:07
Copy link
Copy Markdown
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.

much better groundwork :)

being fairly new to this area one thing that confuses me a bit is the relationship between ComponentDescriptor and ColumnDescriptor for a single row. Maybe something you can walk me through briefly later.

data_to_display.as_ref(),
);
if let Some(variant_name) = self.variant_name {
ctx.component_ui_registry().variant_ui_raw(
Copy link
Copy Markdown
Member

@Wumpf Wumpf May 22, 2025

Choose a reason for hiding this comment

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

looking at the other pr the variant ui raw method does fallbacks to non-variant driven ui. Given that, could we just pass in the option to variant_ui_raw?

Seems like a good datapoint for taking an option on variant_ui and then use component name if no variant is there and automatically fallback? 🤔
But yeah asking for a variant and not getting one is more of a bug as you noted on the other pr

Comment thread crates/viewer/re_dataframe_ui/src/table_blueprint.rs Outdated
Comment thread crates/viewer/re_dataframe_ui/src/table_blueprint.rs Outdated
@abey79
Copy link
Copy Markdown
Member Author

abey79 commented May 22, 2025

being fairly new to this area one thing that confuses me a bit is the relationship between ComponentDescriptor and ColumnDescriptor for a single row. Maybe something you can walk me through briefly later.

With pleasure!

@abey79 abey79 force-pushed the antoine/table-widget-variant-support branch from f356847 to 07ba4c2 Compare May 22, 2025 09:07
Base automatically changed from antoine/component-ui-variant to main May 22, 2025 12:32
abey79 added 3 commits May 22, 2025 14:32
- Introduce `ColumnBlueprint`
- Currently only provided via a closure
- Now `DisplayRecordBatch` takes a `ColumnBlueprint`

Adjust for `VariantName`
@abey79 abey79 force-pushed the antoine/table-widget-variant-support branch from 07ba4c2 to 10d596d Compare May 22, 2025 12:32
@abey79 abey79 removed the do-not-merge Do not merge this PR label May 22, 2025
@abey79 abey79 merged commit 5d213c0 into main May 22, 2025
42 of 43 checks passed
@abey79 abey79 deleted the antoine/table-widget-variant-support branch May 22, 2025 12:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat-redap-browser Everything related to the in-viewer Redap browser include in changelog ui concerns graphical user interface

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support alternate, per column data ui function in DataFusionTableWidget

2 participants