refactor: V2 "mouseable" canvas objects, remove mouse logic from qt/jupyter views #64
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
this pulls the logic that was patching mouse events from the Qt/Jupyter view side of things, and patches them directly on the canvases themselves. The canvas becomes a "
Mouseable
" object, and gains mouseMoved, mousePressed, and mouseReleased signals, as well ason_mouse_x()
callbacks. This paves the way for some of the stuff in histograms to use the same base logic as the image canvas, without needing to deal with them each separately on the "main" view objects.it also fixes pygfx again to work for jupyter, and gives a more generic
run_app()
method (which will help for #62 )