- All Implemented Interfaces:
Serializable
,Cloneable
public final class ZoomEvent extends GestureEvent
The event is delivered to the top-most node picked on the gesture coordinates in time of the gesture start - the whole gesture is delivered to the same node even if the coordinates change during the gesture.
The event provides two values: zoomFactor
is the zooming amount
of this event, totalZoomFactor
is the zooming amount of the whole
gesture. The values work well when multiplied with the node's scale
properties (values greater than 1
for zooming in).
As all gestures, zooming can be direct (performed directly at the concrete coordinates as on touch screen - the center point among all the touches is usually used as the gesture coordinates) or indirect (performed indirectly as on track pad - the mouse cursor location is usually used as the gesture coordinates).
The gesture's ZOOM
events are surounded by ZOOM_STARTED
and ZOOM_FINISHED
events. If zooming inertia is active on the
given platform, some ZOOM
events with isInertia()
returning
true
can come after ZOOM_FINISHED
.
- Since:
- JavaFX 2.2
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description static EventType<ZoomEvent>
ANY
Common supertype for all zoom event types.static EventType<ZoomEvent>
ZOOM
This event occurs when user performs a zooming gesture such as dragging two fingers apart.static EventType<ZoomEvent>
ZOOM_FINISHED
This event occurs when a zooming gesture ends.static EventType<ZoomEvent>
ZOOM_STARTED
This event occurs when a zooming gesture is detected.Fields inherited from class javafx.event.Event
consumed, eventType, NULL_SOURCE_TARGET, target
Fields inherited from class java.util.EventObject
source
-
Constructor Summary
Constructors Constructor Description ZoomEvent(Object source, EventTarget target, EventType<ZoomEvent> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double zoomFactor, double totalZoomFactor, PickResult pickResult)
Constructs new ZoomEvent event.ZoomEvent(EventType<ZoomEvent> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double zoomFactor, double totalZoomFactor, PickResult pickResult)
Constructs new ZoomEvent event with null source and target. -
Method Summary
Modifier and Type Method Description ZoomEvent
copyFor(Object newSource, EventTarget newTarget)
Creates and returns a copy of this event with the specified event source and target.ZoomEvent
copyFor(Object newSource, EventTarget newTarget, EventType<ZoomEvent> type)
Creates a copy of the given event with the given fields substituted.EventType<ZoomEvent>
getEventType()
Gets the event type of this event.double
getTotalZoomFactor()
Gets the zooming amount of this gesture.double
getZoomFactor()
Gets the zooming amount of this event.String
toString()
Returns a string representation of thisZoomEvent
object.Methods inherited from class javafx.scene.input.GestureEvent
getPickResult, getSceneX, getSceneY, getScreenX, getScreenY, getX, getY, getZ, isAltDown, isControlDown, isDirect, isInertia, isMetaDown, isShiftDown, isShortcutDown
Methods inherited from class java.util.EventObject
getSource
-
Field Details
-
ANY
Common supertype for all zoom event types. -
ZOOM
This event occurs when user performs a zooming gesture such as dragging two fingers apart. -
ZOOM_STARTED
This event occurs when a zooming gesture is detected. -
ZOOM_FINISHED
This event occurs when a zooming gesture ends.
-
-
Constructor Details
-
ZoomEvent
public ZoomEvent(Object source, EventTarget target, EventType<ZoomEvent> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double zoomFactor, double totalZoomFactor, PickResult pickResult)Constructs new ZoomEvent event.- Parameters:
source
- the source of the event. Can be null.target
- the target of the event. Can be null.eventType
- The type of the event.x
- The x with respect to the scene.y
- The y with respect to the scene.screenX
- The x coordinate relative to screen.screenY
- The y coordinate relative to screen.shiftDown
- true if shift modifier was pressed.controlDown
- true if control modifier was pressed.altDown
- true if alt modifier was pressed.metaDown
- true if meta modifier was pressed.direct
- true if the event was caused by direct input device. SeeGestureEvent.isDirect()
inertia
- if represents inertia of an already finished gesture.zoomFactor
- zoom amounttotalZoomFactor
- cumulative zoom amountpickResult
- pick result. Can be null, in this case a 2D pick result without any further values is constructed based on the scene coordinates and the target- Since:
- JavaFX 8.0
-
ZoomEvent
public ZoomEvent(EventType<ZoomEvent> eventType, double x, double y, double screenX, double screenY, boolean shiftDown, boolean controlDown, boolean altDown, boolean metaDown, boolean direct, boolean inertia, double zoomFactor, double totalZoomFactor, PickResult pickResult)Constructs new ZoomEvent event with null source and target.- Parameters:
eventType
- The type of the event.x
- The x with respect to the scene.y
- The y with respect to the scene.screenX
- The x coordinate relative to screen.screenY
- The y coordinate relative to screen.shiftDown
- true if shift modifier was pressed.controlDown
- true if control modifier was pressed.altDown
- true if alt modifier was pressed.metaDown
- true if meta modifier was pressed.direct
- true if the event was caused by direct input device. SeeGestureEvent.isDirect()
inertia
- if represents inertia of an already finished gesture.zoomFactor
- zoom amounttotalZoomFactor
- cumulative zoom amountpickResult
- pick result. Can be null, in this case a 2D pick result without any further values is constructed based on the scene coordinates- Since:
- JavaFX 8.0
-
-
Method Details
-
getZoomFactor
public double getZoomFactor()Gets the zooming amount of this event. The factor value works well when multiplied with the node'sscale
properties (values greater than1
for zooming in, values between0
and1
for zooming out).- Returns:
- The zooming amount of this event
-
getTotalZoomFactor
public double getTotalZoomFactor()Gets the zooming amount of this gesture. The factor value works well when multiplied with the node'sscale
properties (values greater than1
for zooming in, values between0
and1
for zooming out).- Returns:
- The cumulative zooming amount of this gesture
-
toString
Returns a string representation of thisZoomEvent
object.- Overrides:
toString
in classGestureEvent
- Returns:
- a string representation of this
ZoomEvent
object.
-
copyFor
Description copied from class:GestureEvent
Creates and returns a copy of this event with the specified event source and target. If the source or target is set tonull
, it is replaced by theNULL_SOURCE_TARGET
value.- Overrides:
copyFor
in classGestureEvent
- Parameters:
newSource
- the new source of the copied eventnewTarget
- the new target of the copied event- Returns:
- the event copy with the new source and target
-
copyFor
Creates a copy of the given event with the given fields substituted.- Parameters:
newSource
- the new source of the copied eventnewTarget
- the new target of the copied eventtype
- the new eventType- Returns:
- the event copy with the fields substituted
- Since:
- JavaFX 8.0
-
getEventType
Description copied from class:Event
Gets the event type of this event. Objects of the sameEvent
class can have different event types. These event types further specify what kind of event occurred.- Overrides:
getEventType
in classGestureEvent
- Returns:
- the event type
-