This function is used in Python Scripting.

Description

Sets a component's position and size at runtime.  Additional arguments for the duration, framesPerSecond, and acceleration of the operation exist for animation.  An optional callback argument will be executed when the transformation is complete.

Note: The transformation is performed in Designer coordinate space on components that are centered or have more than two anchors.

Client Permission Restrictions

This scripting function has no Client Permission restrictions.

Syntax

system.gui.transform(component, [newX], [newY], [newWidth], [newHeight], [duration], [callback], [framesPerSecond], [acceleration], [coordSpace])

  • Parameters

JComponent component - The component to move or resize.

Integer newX - An x-coordinate to move to, relative to the upper-left corner of the component's parent container. [optional]

Integer newY - A y-coordinate to move to, relative to the upper-left corner of the component's parent container. [optional]

Integer newWidth - A width for the component[optional]

Integer newHeight - A height for the component[optional]

Integer duration - A duration over which the transformation will take place.  If omitted or 0, the transform will take place immediately[optional]

Callable callback - Function to be called when the transformation is complete[optional]

Integer framesPerSecond - Frame rate argument which dictates how often the transformation updates over the given duration.  The default is 60 frames per second. [optional]

Integer acceleration - An optional modifier to the acceleration of the transformation over the given duration. See system.gui constants for valid arguments. [optional]

Integer coordSpace - The coordinate space to use. When the default screen coordinates are used, the given size and position are absolute, as they appear in the client at runtime. When Designer Coordinates are used, the given size and position are pre-runtime adjusted values, as they would appear in the Designer. See system.gui constants for valid arguments. [optional]

  • Returns

Animator animation - An object that contains pause(), resume(), and cancel() methods, allowing for a script to interrupt the animation.  See Animator.

  • Scope

Vision Client

Code Examples
# This example changes the size the a component to 100x100.
# Run this script from the component that will be changed (i.e., on the mouseEntered event).

system.gui.transform(component=event.source, newWidth=100, newHeight=100)
# This example moves a component to coordinates 0,0 over the course of 1 second.  
# When the animation is complete, the component is moved back to its original position 
# over the course of 2 seconds, slowing in speed as it approaches the end.
 
component = event.source.parent.getComponent('Text Field')
origX = component.x
origY = component.y

system.gui.transform(
	component,
	0, 0,
	duration=1000,
	callback=lambda: system.gui.transform(
		component,
		origX, origY,
		duration=2000,
		acceleration=system.gui.ACCL_FAST_TO_SLOW
	)
)
Keywords

system gui transform, gui.transform