-
Notifications
You must be signed in to change notification settings - Fork 1
Add highlighted cell syncing for Landscape #265
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
base: main
Are you sure you want to change the base?
Conversation
Co-authored-by: Copilot <[email protected]>
…ithub.com:broadinstitute/celldega into codex/refactor-manual-categories-to-use-obs_store
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds cell highlighting functionality to the Landscape widget, enabling notebooks to visually emphasize specific cells while dimming others. The implementation synchronizes selected cell IDs between Python and JavaScript, updates the rendering pipeline to apply highlight-aware colors, and embeds cell identifiers in scatter plot data.
Key Changes:
- Added
selected_cellstrait andhighlight_cells()method to the Python widget for cell selection management - Implemented frontend state management for highlighted cells with observable store integration and layer refresh logic
- Modified cell rendering to display highlighted cells in bright blue while dimming non-highlighted cells to low opacity
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| src/celldega/viz/widget.py | Adds selected_cells trait and highlight_cells() helper method for syncing cell IDs from notebook to widget |
| js/viz/landscape_ist.js | Implements highlighted cell state management, model synchronization listener, and layer refresh mechanism |
| js/obs_store/obs_store.js | Adds selected_cells observable to the store for tracking highlighted cells |
| js/deck-gl/layers/cell_layer.js | Updates color function to handle highlighting logic, embeds cell names in scatter data, and adds selection trigger |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
selected_cellstrait and helper method so notebooks can send highlighted cell ids to the Landscape widgetTesting
Codex Task