Because of its zoom and pan capabilities, I’m hijacking
ImageView.imshow as a UI for a user to pick points from an image. To accomplish that I connected to the
canvas button presses (for more details see the drawing example in
GtkReactive, and this post). The presented image is a
Images.colorview of two images. Because each of these two images can have very different intensities, I’ve added two
window that use
Images.imadjustintensity to adjust each of the images’ intensity.
To update the image data I used the solution here:
The problem with that solution is that we call
imshow(canvas, new_img), thus reseting the
canvas and loosing the button-press events I connected to the previous
canvas. So I need some way, if it exists, to either:
- Update the image data in an existing instance of
imshowwithout changing anything else in that structure.
- Adjust the intensity in individual RGB channels (currently intensity adjusting is supported only for Gray images).
Ideally, there would be a way to
imshow(img::Signal) and then
push! into that signal to update the shown image.