mrzoom__define.pro
mrZoom
Methods:
Constructor
mrZoom::init : constructor, part II
Event handling
mrZoom::selfregister : register with a display object
mrZoom::unregister : unregister
Private
mrZoom::mrDisplayEvtHandler : the event handler and broker for mr*display
mrZoom::buttonDblClickEvt : handling of double clicks
mrZoom::buttonPressEvt : handling of button presses
mrZoom::buttonReleaseEvt : handling of button release
mrZoom::buttonMotionEvt : handling of motion while button pressed
mrZoom::update : get scaling and update text
mrZoom__define : the constructor
mrZoom::cleanup : the destructor
Description:
A plugin object for mrdisplay to provide zoom functionality
Example code:
The following code snippet creates a mrdisplay and a zoom object, then
registers the zoom with mrdisplay on left mouse button events.
< >
display = obj_new('MRdisplay', baseid, 256, 256, 256, 256 )
zoom = obj_new('mrZoom')
zoom->selfregister( display, button=1 ) ; register on left mouse button
display->setImg, imgpointer ; set the image
display->display ; display image
display->activate ; so mrdisplay creates events
mrZoom::init
Syntax:
x = obj_new('mrZoom', /inscreen, sensitivity=float)
Arguments:
inscreen
flag - display zoom factor in display window if set (=default)
sensitivity
float: sensitivity to mouse movements, default = 0. (=automatic)
Description:
The constructor
Resonable values for sensitivity are around 1./canvas size in pixels
If unset or set to '0.', mrZoom automatically sets the sensitivity
depending on the canvas size
mrZoom::cleanup
Description:
cleanup at object destruction
mrZoom::selfregister
Syntax:
obj->selfregister, display, button=int, /border
Arguments:
display
The mrDisplay object with which to register
button
The button number upon which to zoom; left=1, middle=2 (def), right=3
border
If set, the mouse has to be in the right 15% of the mrDisplay object
to trigger zooming. To be combined with the corresponding /noborder
keyword of mrPan.
Description:
Register with an mrDisplay object
mrZoom::unregister
Syntax:
obj->unregister
Description:
unregisters with a mrdisplay object. It is a good idea to unregister
mrZoom::mrDisplayEvtHandler
Syntax:
obj->mrDisplayEvtHandler, evt
Arguments:
evt
Pointer to the mrDisplay event structure
Description:
Dispatch the event coming from mrDisplay
mrZoom::buttonPressEvt
Syntax:
obj->buttonPressEvt, evt
Arguments:
evt
Pointer to the mrDisplay event structure
Description:
Event handler for button press events
Prints the current contrast scaling vals in the lower right corner
Interpolation of the display object is switched off while zooming
mrZoom::buttonDblClickEvt
Syntax:
obj->buttonDblClickEvt, evt
Arguments:
evt
Pointer to the mrDisplay event structure
Description:
Fit image to display screen size on double click
mrZoom::buttonReleaseEvt
Syntax:
obj->buttonReleaseEvt, evt
Arguments:
evt
Pointer to the mrDisplay event structure
Description:
Event handler for button release events
mrZoom::buttonMotionEvt
Syntax:
obj->buttonMotionEvt, evt
Arguments:
evt
Pointer to the mrDisplay event structure
Description:
Event handler for motion events while a button is pressed
mrZoom::update
Syntax:
obj->update
Description:
get scaling from display object and set text
mrZoom__define
Type:
Private Procedure (constructor)