Libraries.Interface.Controls.Charts.Graphics.Bar Documentation

The Bar class is a ChartDrawable that stores information for each indiviual bar. Bar contains a numerical value to determine the size of the bar within a chart.

Example Code

use Libraries.Interface.Controls.Charts.Graphics.Bar
class Main
action Main
    // Make bar
    Bar bar

    // Set value
    bar:SetValue(20.0)

    // Get value
    number x = bar:GetValue()
end
end

Inherits from: Libraries.Interface.Controls.Control, Libraries.Game.Graphics.Drawable, Libraries.Interface.Item, Libraries.Interface.Controls.Charts.ChartItem, Libraries.Interface.Item2D, Libraries.Language.Object, Libraries.Interface.Controls.Charts.Graphics.ChartDrawable, Libraries.Interface.Events.TextureLoadListener, Libraries.Game.Graphics.TextureRegion, Libraries.Game.Disposable

Actions Documentation

Activate(Libraries.Interface.Events.BehaviorEvent event)

Returns true if rendering the focus event.

Parameters

Activate()

This action returns a default behavior for this paricular control. Some controls do nothing by default, like a TextBox that responds to different kinds of input. Others, however, have default behaviors, like a Button or a MenuItem. If there is no default behavior, this action returns undefined.

Add(integer index, Libraries.Interface.Item2D newItem)

This action adds a different Item2D into this one, storing the added Item2D at a specific index in the internal array.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)

Add(Libraries.Interface.Item2D newItem)

This action adds a different Item2D into this one. This makes a few things happen. 1. The added item will get this item as its parent. 2. The added item's x and y coordinates will become relative to this Item. 3. Most actions on this Item will also affect the added Item.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(child)

AddBehavior(Libraries.Interface.Behaviors.Behavior behavior)

This action adds a new Behavior to this Item.

Parameters

AddControlActivationListener(Libraries.Interface.Events.ControlActivationListener listener)

This action removes an Item2D at a specifed index from the internal array.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)
parentItem:Remove(0)

AddFocusListener(Libraries.Interface.Events.FocusListener listener)

This action adds a FocusListener to the Item. When the Item receives a FocusEvent due to either gaining or losing the focus, the listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.FocusListener
Item myItem
FocusListener listener
myItem:AddFocusListener(listener)

AddGestureListener(Libraries.Interface.Events.GestureListener listener)

This action adds a GestureListener to the Item. If the Item ever receives a GestureEvent, the listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.GestureListener
Item myItem
GestureListener listener
myItem:AddGestureListener(listener)

AddLayoutProperties(Libraries.Interface.Layouts.LayoutProperties properties)

Returns true if rendering the mouse down event.

Parameters

AddMouseListener(Libraries.Interface.Events.MouseListener listener)

This action adds a MouseListener to the Item. If the Item ever receives a MouseEvent due to a mouse click, the mouse listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseListener
Item myItem
MouseListener listener
myItem:AddMouseListener(listener)

AddMouseMovementListener(Libraries.Interface.Events.MouseMovementListener listener)

This action adds a MouseMovementListener to the Item. If the Item ever receives a MouseEvent due to mouse movement, the listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseMovementListener
Item myItem
MouseMovementListener listener
myItem:AddMouseMovementListener(listener)

AddMouseWheelListener(Libraries.Interface.Events.MouseWheelListener listener)

This action adds a MouseWheelListener to the Item. If the Item ever receives a MouseEvent due to the mouse wheel being scrolled, the listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseWheelListener
Item myItem
MouseWheelListener listener
myItem:AddMouseWheelListener(listener)

AddSelectionListener(Libraries.Interface.Events.SelectionListener listener)

This action adds the given SelectionListeners to the Control.

Parameters

AddTextureLoadListener(Libraries.Interface.Events.TextureLoadListener listener)

This action adds a TextureLoadListener to the texture. If the texture finishes asynchronously loading an image, the listener will be alerted.

Parameters

AddTouchListener(Libraries.Interface.Events.TouchListener listener)

This action adds a TouchListener to the Item. If the Item ever receives a TouchEvent, the listener will be notified.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.TouchListener
Item myItem
TouchListener listener
myItem:AddTouchListener(listener)

Advance(number time)

This action is used to advance the item forward in time in physics space to synchronize it for time of impact solving. This action is used internally and users should not need to use this action. Attribute Parameter time The amount of seconds to advance the item forward in time

Parameters

  • number time

ApplyAngularImpulse(number impulse)

This action applies an angular impulse to this item. The units are in kilogram units squared per second. This modifies the angular velocity of this item. Physics must be enabled on this item before using this action.

Parameters

  • number impulse: The angular impulse in kilogram units squared per second

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:ApplyAngularImpulse(80)

ApplyForce(Libraries.Compute.Vector2 force, Libraries.Compute.Vector2 point)

This action applies a force to this item at the passed point. The force is in kilogram units per second per second. The point is the screen coordinates where the point will be applied. If the point is not on the center of the item, then a torque will be introduced causing the item to rotate. Physics must be enabled on this item before using this action.

Parameters

Example

use Libraries.Compute.Vector2
use Libraries.Interface.Item2D

Item2D item
Vector2 force
Vector2 point

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

force:Set(300, 350)
point:Set(100, 100)    // apply the force to the top right corner of the item

item:ApplyForce(force, point)

ApplyForceToCenter(Libraries.Compute.Vector2 force)

This action applies a force to this item at the center of the item. The force is in kilogram units per second per second. No torque is introduced to the item when using this action. Physics must be enabled on this item before using this action.

Parameters

Example

use Libraries.Compute.Vector2
use Libraries.Interface.Item2D

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

force:Set(300, 350)

item:ApplyForce(force)

ApplyLinearImpulse(Libraries.Compute.Vector2 impulse, Libraries.Compute.Vector2 point)

This action applies a linear impulse to this item at the passed point. The impulse is in kilogram units per second. This immeadietly modifies the linear velocity of this item. The point is the screen coordinates where the impulse will be applied. If the point is not the center of the item, then the angular velocity of this item will also be modified. Physics must be enabled on this item before using this action.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 impulse
Vector2 point

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

impulse:Set(100)
point:Set(100, 100)     // apply the impulse to the top right corner

item:ApplyLinearImpulse(impulse, point)

ApplyTorque(number torque)

This action applies a torque to this item. The units are kilogram units squared per second per second. Physics must be enabled on this item before using this action.

Parameters

  • number torque: The torque to apply to this item in kilogram units squared per second per second

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:ApplyTorque(350)

AreChildrenProcessingMouseEvents()

This action returns whether or not this Item is allowing its children to receive mouse events if the Item is custom drawing. If the Item isn't using custom drawing, this value is irrelevant -- children objects always receive mouse events before the parent if the parent isn't performing custom drawing.

Return

boolean:

BeginCollision(Libraries.Interface.Item item)

This action is used to indicate that two items have just begun colliding. When two Items collide, the BeginCollision action should be called on both of them, with the other item passed as a parameter to the action. Note that this action does nothing by default, but classes that inherit from Item may override it.

Parameters

Example

use Libraries.Interface.Item

Item collider1
Item collider2
collider1:BeginCollision(collider2)
collider2:BeginCollision(collider1)

BeginMouseOver()

This action is used when a control is moused over by the mouse.

CanRotate(boolean flag)

This action gets the position of the center of this item in global (world) coordinates.

Parameters

  • boolean flag

CancelBehaviors()

This action stops all behaviors this Item is following without finishing them.

ClickedMouse()

This action is used when a control is clicked by the mouse.

CollideWithChildren()

This action sets the mass, mass moment of inertia, and how the 2D item should move (via linear velocity) to be at the desired location.

Return

boolean:

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Example

Object o
Object t
integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

ComputeDistance(Libraries.Compute.Vector2 point, integer childIndex, Libraries.Compute.Vector2 normalOut)

This action computes the distance of the passed point from the collision shape attached to this item. This action is used internally and users should not need to use this action.

Parameters

  • Libraries.Compute.Vector2: The vector representing the point to compute the distance from
  • integer childIndex: The index of the collision shape attached to this item we want the bounding box of
  • Libraries.Compute.Vector2: The direction of the point from the shape

Return

number: The distance of the point from the collision shape of this item

Contains(number containsX, number containsY)

This action tests if a point in global x,y coordinates is contained inside this Item2D. The global coordinates are considered to be the x and y coordinates of this Item plus its offsetX and offsetY values.

Parameters

  • number containsX
  • number containsY

Return

boolean: Whether or not the point is contained in this Item.

Example

use Libraries.Interface.Item2D

Item2D item
item:SetPosition(50, 50)
item:SetWidth(100)
item:SetHeight(50)
boolean value = item:Contains(125, 70)

CopyAndActivateInputTable(text name)

This action obtains the Input Table from this control, copies it, assigns it a group name, sets the control to use the new input table, and then adds it to the global input table hash table.

Parameters

  • text name: the name of the group for the new input table.

Return

Libraries.Game.InputTable: the input table copy

Example

use Libraries.Game.Game
use Libraries.Interface.Controls.TextBox
use Libraries.Game.InputTable

class Main is Game
    action Main
        StartGame()
    end

    action CreateGame
        TextBox box
        InputTable copy = box:CopyAndActivateInputTable("New Group")
    end

    action Update(number seconds)
    end
end

CopyTextureRegion(Libraries.Game.Graphics.TextureRegion region, integer x, integer y, integer width, integer height)

This action copies the information from a given TextureRegion at the given coordinates to the given width and height onto this TextureRegion.

Parameters

CopyTextureRegion(Libraries.Game.Graphics.TextureRegion region)

This action copies the information from the given TextureRegion into this TextureRegion.

Parameters

CreateNodes(Libraries.Game.Collision.BroadphaseCollision2D broadphase, Libraries.Game.Collision.PhysicsPosition2D transform)

This action creates the nodes for this item for the broadphase collision. This action is needed in order to add the item to the collision detection system. This action is used internally and users should not need to use this action.

Parameters

DestroyNodes(Libraries.Game.Collision.BroadphaseCollision2D broadphase)

This action destroys the nodes for this item for the broadphase collision, essentially removing it from the collision detection system. This action is used internally and users should not need to use this action.

Parameters

Dispose()

The Dispose action will dispose the currently loaded texture. This frees up computer resources, but the texture will no longer be usable. Note that multiple Drawables can use the same texture, and disposing of it will get rid of the texture information not just for this Drawable, but any Drawable that is using the texture. Dispose should be used when a texture will not be used again. Here are some guide lines for when you should or should not dispose a Drawable: 1. If the Drawable was loaded using Load(text) or Load(File), then the Drawable created new texture data when it was loaded. This can be safely disposed, unless you copied the Drawable, e.g. with Load(Drawable). 2. If the Drawable was loaded as a shape, e.g. with the LoadRectangle action, the Drawable created new texture data when it loaded. It can be safely disposed, unless you copied the Drawable, e.g. with Load(Drawable). 3. If the Drawable was loaded using a Texture or a TextureRegion, such as with the Load(Texture) action, then it is NOT safe to dispose this if there are any other Drawables that are still in use which were also loaded with the same Texture. If there are no other Drawables that were loaded with the Texture, it is safe to dispose. If a texture was used to load multiple Drawables, it is good practice to use the Dispose action directly from the Texture once all of the Drawables are no longer in use. 4. If the Drawable was loaded with an ImageSheet, you should NEVER dispose the Drawable's texture. All Drawables loaded from an ImageSheet use the same Texture data, so disposing of any Drawable from an ImageSheet will delete the ImageSheet's texture data. If you ever wish to dispose an ImageSheet's texture data, it is good practice to use the ImageSheet's Dispose action.

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        drawable:LoadFilledCircle(75)
        Add(drawable)

        // When we no longer need the Drawable, we can remove it from
        // the Game, and then Dispose it to clean up the memory it used.
        Remove(drawable)
        drawable:Dispose()
    end

end

DisposeAll()

This action is used to call Dispose on this Item and on the entire children hierarchy of this Item.

DisposeChildren()

This action is used to call Dispose on the entire children hierarchy of this Item. This will not call Dispose on this Item.

DoSpecialNavigation(integer navigationType)

This action triggers special navigation behavior in the specified navigation direction. This behavior overrides the typical navigation provided by the chart. This will only be called by the Chart if the HasSpecialNavigation action returns true for the provided parameter. By default this does nothing, but some classes may override this with custom behavior.

Parameters

  • integer navigationType

Draw(Libraries.Game.Graphics.Painter2D painter)

The Draw action is used to perform custom drawing on this Item and its children. This is only called during the Game engine's draw phase if this Item has enabled custom drawing via the SetCustomDrawing action. This is an advanced feature, and shouldn't be used by most users. If custom drawing is enabled, this action should be overriden -- if it isn't, the Item will attempt to provide default rendering for itself, its view, and its children, without regard to depth buffering. This action is responsible for instructing the provided Painter on how to draw this item, the view, and its children, and in what order to do so.

Parameters

Empty()

This action will remove all items from this item's children hierarchy. Note that this will not empty the hierarchies of the contained Items.

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child1
Item2D child2
Item2D grandchild
parentItem:Add(child1)
parentItem:Add(child2)
child1:Add(grandChild)
parentItem:Empty()

EmptyAll()

This action will call Empty on the entire children hierarchy of this item, and then empty this item as well.

EmptyChildren()

This action is used to call Empty on all children contained in this item's children hierarchy. This will not empty the children of this item.

EmptySelectionListeners()

This action empties or removes all SelectionListeners which have been added to the Control of the given SelectionEvent.

EmptyTextureLoadListeners()

This action removes all TextureLoadListeners that have been added to the texture.

EnablePhysics(boolean flag)

This action enables physics for this item. Passing true turns on physics for this item while passing false turns off physics for this item.

Parameters

  • boolean flag: Whether or not to enable physics for this item

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:EnablePhysics(true)

EndMouseOver()

This action is used when a control is moused over and it ends.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Example

use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)

FastMoving(boolean flag)

This action gets the linear velocity of this item in units per second. Physics must be enabled on this item before using this action.

Parameters

  • boolean flag

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 velocity

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
velocity:Set(100, 0)
item:SetLinearVelocity(velocity)

Vector2 currentVelocity = item:GetLinearVelocity()

FinishCollision(Libraries.Interface.Item item)

This action is used to indicate that two items that were previously colliding no longer are. The FinishCollision action should be called on both Items involved, with the other item passed as a parameter to the action. Note that this action does nothing by default, but classes that inherit from Item may override it.

Parameters

Example

use Libraries.Interface.Item

Item collider1
Item collider2
collider1:FinishCollision(collider2)
collider2:FinishCollision(collider1)

FlipX()

This action flips the Drawable along the x-axis, or in other words, flips it horizontally in 2D space.

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable line
        line:LoadLine(20, 100)
        line:SetPosition(50, 50)
        line:FlipX()
        Add(line)
    end
end

FlipY()

This action flips the Drawable along the y-axis, or in other words, flips it vertically in 2D space.

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable line
        line:LoadLine(20, 100)
        line:SetPosition(50, 50)
        line:FlipY()
        Add(line)
    end
end

Focus()

This action sets focus on this Item. If the Item is not focusable, it will instead look through the parent hierarchy and set focus on the first focusable ancestor. If no focusable Item can be found, this action will have no effect.

GainedFocus(Libraries.Interface.Events.FocusEvent event)

This action is fired if the item received the focus.

Parameters

GainedSelection()

This action is used when a Chart Drawable gains the selection. Selection elements are then shown.

GetAccentColor()

This action gets the accent color from the control.

Return

Libraries.Game.Graphics.ColorGroup: the accent control.

GetAccessibilityCode()

This action returns the current accessiblity code for this Item

Return

integer:

GetAccessibilityRoleDescription()

This action returns the custom accessibility role description for this item, if any.

Return

text:

GetAccessibilityType()

This action returns the name of the accessiblity code for this Item as Text

Return

text:

GetAccessibleParent()

This action returns the parent of this Item2D. An Item2D gets a parent when it is added to another Item using the Add action.

Return

Libraries.Interface.Item:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(child)
Item2D item = child:GetParent()

GetActivationBehavior()

This action returns a default behavior for this paricular control. Some controls do nothing by default, like a TextBox that responds to different kinds of input. Others, however, have default behaviors, like a Button or a MenuItem. If there is no default behavior, this action returns undefined.

Return

Libraries.Interface.Behaviors.Behavior:

GetAngularDamping()

This action gets the inverse inertia of this item (i.e., one divided by the inertia of this item). Physics must be enabled on this item before using this action.

Return

number: The inverse inertia of this item

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inverseInertia = item:GetInverseInertia()

GetAngularVelocity()

This action gets this item's angular velocity in radians per second. Physics must be enabled in this item before using this action.

Return

number: The angular velocity of this item in radians per second

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetAngularVelocity(0.1)
number angularVelocity = item:GetAngularVelocity()

GetAnnotation()

This action gets the chart drawables annotation (ChartLabel). Annotation is a control label that can be shown appended to this drawable. It can show things like a name, value, equation or custom text.

Return

Libraries.Interface.Controls.Charts.ChartLabel: the ChartLabel of ChartDrawable object.

GetBackgroundColor()

This action gets the background color for the bar.

Return

Libraries.Game.Graphics.ColorGroup: a color of the bar background.

GetBarGroup()

Link to the parent BarGroup.

Return

Libraries.Interface.Controls.Charts.Graphics.BarGroup:

GetBorderColor()

This action gets the border color for the bar.

Return

Libraries.Game.Graphics.ColorGroup: a color of the bar border.

GetBorderStyle()

This action gets the border style for the bar. This action returns a code representing which sides of the bars have borders, using the style constants from LayoutProperties (LEFT, RIGHT, TOP, BOTTOM, ALL, and NONE). By default, vertical bar charts have bar borders on all sides except the bottom, and horizontal bar charts have bar borders on all sides except the left.

Return

integer: an integer representing the border style.

GetBorderThickness()

This action gets the border thickness for the bar from the parent bar chart.

Return

number: a border thickness number of the selected bar border.

GetBottomLeftPixelRounding()

This action returns the bottom left pixel rounding value.

Return

number: the bottom left pixel rounding value.

GetBottomLeftRounding()

This action returns the bottom left rounding value.

Return

number: the bottom left rounding value.

GetBottomMargin()

This action gets the bottom margin size. The bottom margin is the space outside of the bottom border.

Return

number: the number amount of bottom margin.

GetBottomPadding()

This action gets the bottom padding size. The bottom padding is the space inside of the bottom border.

Return

number: the number amount of bottom padding.

GetBottomRightPixelRounding()

This action returns the bottom right pixel rounding value.

Return

number: the bottom right pixel rounding value.

GetBottomRightRounding()

This action returns the bottom right rounding value.

Return

number: the bottom right rounding value.

GetBottomSide()

This action returns where the TextureRegion begins the bottom edge of its region on the stored texture, where 0 is the far bottom of the texture and 1 is the far top side of the texture.

Return

number:

GetBoundingBox(integer childIndex)

This action is used to get the bounding box of the item. A bounding box is an axis-alligned rectangle containing the shape used for broadphase collision. This action is used internally and users should not need to use this action.

Parameters

  • integer childIndex: The index of the collision shape attached to this item we want the bounding box of

Return

Libraries.Game.Collision.BoundingBox2D: The bounding box of the collision shape attached to this item

GetBoundingRectangle()

This action returns a rectangle that fully encloses the four corners of the Item as it is represented by its internal vertices array. Note that the rectangle produced by this action will be larger than the actual box formed by this Item's vertices if the Item is rotated.

Return

Libraries.Game.Shapes.Rectangle:

Example

use Libraries.Interface.Item2D
use Libraries.Game.Shapes.Rectangle

Item2D myItem
myItem:SetBoundingBox(20, 80, 100, 100)
Rectangle box = myItem:GetBoundingRectangle()

GetCenterX()

This action returns the x coordinate of the center of this Item2D.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetWidth(20)
myItem:SetX(100)
number x = myItem:GetCenterX()

GetCenterY()

This action returns the y coordinate of the center of this Item2D.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetHeight(20)
myItem:SetY(100)
number y = myItem:GetCenterY()

GetChartArea()

A link to the parent chart area of this drawable.

Return

Libraries.Interface.Controls.Charts.ChartAreaPanel:

GetChildren()

This action gets the children of this item in an array.

Return

Libraries.Containers.Array: The children of this item in an array

Example

use Libraries.Interface.Item2D

Item2D parent
Item2D child1
Item2D child2

parent:Add(child1)
parent:Add(child2)

Array<Item2D> children = parent:GetChildren()

GetClipCoordinates(Libraries.Compute.Vector2 xCoords, Libraries.Compute.Vector2 yCoords)

This action gets the clipping coordinates of this Item2D. The coordinates are returned via the two provided Vector2 parameters, the first vector storing the x values of the left and right sides of the clipping coordinates and the second vector storing the y values of the bottom and top sides. The returned boolean value indicates if this Item uses these clipping coordinates (i.e. if this Item or one of its parent Items has clipping enabled). If the clipping is valid, the action returns true. Otherwise, it returns false.

Parameters

Return

boolean:

GetCollisionGroupFlag()

This action gets the total force on this item. The units are kilogram units per second per second. Physics must be enabled on this item before using this action.

Return

boolean: The total force in kilogram units per second per second

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
force:Set(300, 350)
item:SetForce(force)
Vector2 totalForce = item:GetForce()

GetCollisionGroupIndex()

This action gets this item's angular velocity in radians per second. Physics must be enabled in this item before using this action.

Return

integer: The angular velocity of this item in radians per second

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetAngularVelocity(0.1)
number angularVelocity = item:GetAngularVelocity()

GetCollisionList()

This is an action used internally to retrieve the head of the linked list of collisions with this item. This action is used internally and users should not need to use this action.

Return

Libraries.Game.Collision.CollisionEdge2D: The head of the doubly linked list of collisions

GetColor()

This action returns the color filter stored in the Drawable. To see if it's currently in use, use the UsingCustomColor action. If the Drawable is using a different type of filter (such as a Gradient) this will return undefined. To get whatever filter the Drawable is using regardless of type, use the GetColorGroup action.

Return

Libraries.Game.Graphics.Color:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    Color color

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        drawable:SetColor(0, 1, 1, 1)
        color = drawable:GetColor()
    end

end

GetColorGroup()

This action returns the color filter stored in the Drawable. The returned value is a ColorGroup object, which describes how the color is mapped to the four corners of the Drawable. If no filter is in use, this action will return undefined.

Return

Libraries.Game.Graphics.ColorGroup:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Graphics.ColorGroup
use Libraries.Game.Game

class Main is Game

    Color color

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        drawable:SetColor(0, 1, 1, 1)
        ColorGroup group = drawable:GetColorGroup()
    end

end

GetColorProperty(text property)

This action gets the color of a given property in the Control.

Parameters

  • text property

Return

Libraries.Game.Graphics.ColorGroup:

GetContainerGridHeight()

This action returns how many rows this Control should be divided into when using a GridLayout. This will have no effect if this Control is not a container or if it is using a different layout.

Return

integer:

GetContainerGridWidth()

This action returns how many columns this Control should be divided into when using a GridLayout. This will have no effect if this Control is not a container or if it is using a different layout.

Return

integer:

GetCurrentLayoutProperties()

This action returns the LayoutProperties that were last used to define the Control, and thus describe its current state. Note that if the Control hasn't been laid out yet, this will return undefined.

Return

Libraries.Interface.Layouts.LayoutProperties: The last LayoutProperties used to layout this Control, or undefined if it hasn't been laid out yet.

GetDefaultFont()

This action obtains the default font for this control. This allows individual controls to customize their default font properties on a per control basis. By default, the system asks for the default system font name on a per control basis, then loads that font and returns it. Font loading is shared, so loading many fonts of the same type and size is not particularly expensive and can be done without much concern for memory requirements.

Return

Libraries.Game.Graphics.Font:

Example

use Libraries.Interface.Controls.TextBox
use Libraries.Game.Graphics.Font

TextBox box
text name = box:GetDefaultFont()
output name

GetDefaultFontName()

This action defines what the default font is for this control. This allows individual controls to customize their default font properties on a per control basis.

Return

text:

Example

use Libraries.Interface.Controls.TextBox

TextBox box
text name = box:GetDefaultFontName()
output name

GetDefaultFontSize()

This action defines what the default font size for this control. This allows individual controls to customize their default font properties on a per control basis.

Return

integer:

Example

use Libraries.Interface.Controls.TextBox

TextBox box
integer size = box:GetDefaultFontSize()
output size

GetDefaultLayoutProperties()

This action returns the default LayoutProperties used for this Control.

Return

Libraries.Interface.Layouts.LayoutProperties: The default LayoutProperties of this Control.

GetDensity()

This action applies a linear impulse to this item at the passed point. The impulse is in kilogram units per second. This immeadietly modifies the linear velocity of this item. The point is the screen coordinates where the impulse will be applied. If the point is not the center of the item, then the angular velocity of this item will also be modified. Physics must be enabled on this item before using this action.

Return

number:

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 impulse
Vector2 point

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

impulse:Set(100)
point:Set(100, 100)     // apply the impulse to the top right corner

item:ApplyLinearImpulse(impulse, point)

GetDescription()

This action returns the current internal description of the Item.

Return

text:

Example

use Libraries.Interface.Item

Item item
item:SetDescription("Used for demo purposes.")
output "My item's description is : " + item:GetDescription()

GetDisplayName()

This action obtains the displayable name for this region of the chart.

Return

text: the display name

GetDownItem()

Returns the Item accessed "below" (via the DOWN arrow) this Item in the chart selection.

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetDrawableShape()

This action will create a new Texture with a solid rectangle of the given color with the given width and height. This texture is then loaded into the Drawable.

Return

Libraries.Game.Graphics.DrawableShape:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color green
        green:SetColor(0, 1, 0, 1)
        Drawable rectangle
        rectangle:LoadFilledRectangle(20, 100, green)
        rectangle:SetPosition(50, 50)
        Add(rectangle)
    end
end

GetDrawableType()

This action returns an integer code representing the type of graphics that's been loaded into this Drawable. The type values can be found in the SceneProperties class. The default value is NONE.

Return

integer: An integer code from the SceneProperties class that describes the type of image this Drawable uses.

GetEnterItem()

Returns the Item accessed within (default: ENTER key) this Item in the chart selection.

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetEscapeItem()

Returns the escape Item accessed from this Item in the chart selection (by default using the ESCAPE key).

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetFocusBorderColor()

This action gets the focus border color.

Return

Libraries.Game.Graphics.ColorGroup: the focus border color.

GetFocusColor()

This action sets the focus color.

Return

Libraries.Game.Graphics.ColorGroup: the focus color.

GetFocusFontColor()

This action gets focus font color.

Return

Libraries.Game.Graphics.ColorGroup: the focus font color.

GetFocusListeners()

This action returns an Iterator containing all of the FocusListeners that have been added to this Item using the AddFocusListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered FocusListeners.

GetFont()

This action returns the Font being used by this Control. How this Font is used varies between Controls, and in some cases the Control will ignore it entirely (for example, ScrollPanes), but typically this sets the font that's used for the default label on many Controls, such as Buttons. If the Font is undefined, many Controls will omit their default label.

Return

Libraries.Game.Graphics.Font: The Font being used for this Control.

GetFontColor()

This action gets the current the font color of the font contained in the Control.

Return

Libraries.Game.Graphics.ColorGroup:

GetFontOutlineColor()

This action gets the font outline color value.

Return

Libraries.Game.Graphics.ColorGroup: the font outline color value.

GetFontOutlineThickness()

This action returns the font outline thickness value.

Return

number: the font outline thickness value.

GetFontSize()

This action returns the base Font size to be used by this Control, if the Control uses a Font.

Return

integer:

GetForce()

This action gets the total force on this item. The units are kilogram units per second per second. Physics must be enabled on this item before using this action.

Return

Libraries.Compute.Vector2: The total force in kilogram units per second per second

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
force:Set(300, 350)
item:SetForce(force)
Vector2 totalForce = item:GetForce()

GetForegroundColor()

This action gets the color of the Control foreground color.

Return

Libraries.Game.Graphics.ColorGroup: the foreground color.

GetForegroundSelectionColor()

This action gets the color of the Control foreground selection color.

Return

Libraries.Game.Graphics.ColorGroup: the foreground selection color.

GetFriction()

This action applies a force to this item at the center of the item. The force is in kilogram units per second per second. No torque is introduced to the item when using this action. Physics must be enabled on this item before using this action.

Return

number:

Example

use Libraries.Compute.Vector2
use Libraries.Interface.Item2D

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

force:Set(300, 350)

item:ApplyForce(force)

GetGestureListeners()

This action returns an Iterator containing all of the GestureListeners that have been added to this Item using the AddGestureListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered GestureListeners.

GetGlobalX()

This action returns the Item's global x coordinate. This is the actual world coordinate that the item exists at after it has been offset by its parent's position. If this Item doesn't have a parent, and the offset hasn't been set manually, this is the same as GetX().

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetX(100)
myItem:SetX(30)
number globalX = myItem:GetGlobalX()

GetGlobalY()

This action returns the Item's global y coordinate. This is the actual world coordinate that the item exists at after it has been offset by its parent's position. If this Item doesn't have a parent, and the offset hasn't been set manually, this is the same as GetY().

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetY(60)
myItem:SetX(90)
number globalY = myItem:GetGlobalY()

GetGlobalZ()

This action returns the Item's global z value. For an Item2D, this simply returns the Item2D's current z value.

Return

number:

GetGlowColor()

This action gets the glow color from the control.

Return

Libraries.Game.Graphics.ColorGroup: the glow color.

GetGradient()

This action returns the gradient stored in the Drawable. To see if it's currently in use, use the UsingCustomGradient action. If the Drawable is using a different type of filter (such as a Color) this will return undefined. To get whatever filter the Drawable is using regardless of type, use the GetColorGroup action.

Return

Libraries.Game.Graphics.Gradient:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Gradient
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    Gradient gradient
    Color color

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        Gradient gradient
        gradient:Set(color:Red(), color:Green(), color:Blue(), color:White())
        drawable:SetGradient(gradient)

        drawGradient = drawable:GetGradient()
    end

end

GetGridHeight()

The GetGridHeight action returns how many cells in a column this Control occupies. By default, this value is 1. This value is only used for GridLayouts, and is ignored by other layouts.

Return

integer:

GetGridWidth()

The GetGridWidth action returns how many cells in a row this Control occupies. By default, this value is 1. This value is only used for GridLayouts, and is ignored by other layouts.

Return

integer:

GetGridX()

This action returns this Control's cell x-coordinate within a GridLayout. This indicates which column this Control is located within. If the Control's parent container isn't using a GridLayout, this value is ignored.

Return

integer:

GetGridY()

This action returns this Control's cell y-coordinate within a GridLayout. This indicates which row this Control is located within. If the Control's parent container isn't using a GridLayout, this value is ignored.

Return

integer:

GetGroup()

Gets the group. The group is the label on the chart associated with this drawable. In most cases the groups are created by unique factors. GroupPanel is used to position, locate, and name the drawable on the chart.

Return

Libraries.Interface.Controls.Charts.GroupPanel: the GroupPanel .

GetHashCode()

This action gets the hash code for an object.

Return

integer: The integer hash code of the object.

Example

Object o
integer hash = o:GetHashCode()

GetHeight()

This action will return the currently set height of the Item2D.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
number height = myItem:GetHeight()

GetHorizontalLayoutMode()

The GetHorizontalLayoutMode is used to determine how the width of a Control is calculated. It should be one of the following constants: STANDARD, which will calculate the width as a set number of pixels plus a percentage of the container's width. FILL, which will make the width fill the remaining width of the container. FIT_CONTENTS, which will calculate the width to fit the children contents.

Return

integer: the integer that maps to the layout mode constant, one of STANDARD, FILL, or FILL_CONTENTS.

GetIcon()

This action gets the Icon (typically an image or texture) used by this Control. Different Controls use this Icon differently, depending on their purpose.

Return

Libraries.Game.Graphics.TextureRegion:

GetIconColor()

This action gets the Icon color from the control.

Return

Libraries.Game.Graphics.ColorGroup: the icon color.

GetIndicesCount()

This action is used internally by the rendering system to determine how many indices a Drawable uses in a Mesh. Most users will never need to call this action directly.

Return

integer:

GetInertia()

This action gets the rotational inertia of this item. The inertia is in kilogram units squared.

Return

number: The inertia of this item in kilogram units squared

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inertia = item:GetInertia()

GetInputGroup()

This action returns the input group for this Item. When used with the Game libraries, this tag describes what InputTable (if any) can interact with this Item due to input.

Return

text: The input group tag being used by this Item.

Example

use Libraries.Interface.Item

Item item
item:SetInputGroup("arrowKeys")
output "My item's input group is : " + item:GetInputGroup()

GetInputTable()

GetInterfaceOptionsKey()

This action sets the base Font size to be used by this Control, if the Control uses a Font.

Return

text:

GetInterfaceScale()

This action sets the interface scale for the control.

Return

number: the scale, a number between 0 and 1 that scales the control.

GetInverseInertia()

This action gets the inverse inertia of this item (i.e., one divided by the inertia of this item). Physics must be enabled on this item before using this action.

Return

number: The inverse inertia of this item

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inverseInertia = item:GetInverseInertia()

GetInverseMass()

This action gets the inverse mass of the item (i.e., one divided by the mass of this item). Physics must be enabled on this item before using this action.

Return

number: The inverse mass of this item

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inverseMass = item:GetInverseMass()

GetItem(integer index)

This action returns an Item2D that was previously added to this Item2D by finding it at the given index in the internal array of children Items.

Parameters

  • integer index

Return

Libraries.Interface.Item2D:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child1
Item2D child2
parentItem:Add(child1)
parentItem:Add(child2)
Item temp = parentItem:GetItem(0)

GetItemAt(number x, number y)

This action searches through all Items stored in this Item2D and finds the deepest Item which contains the given point in global coordinates.

Parameters

  • number x
  • number y

Return

Libraries.Interface.Item2D: The deepest item in the children hierarchy at the given point.

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
Item2D grandchild
parentItem:Add(child)
child:Add(grandchild)
grandchild:SetHeight(100)
grandchild:SetWidth(100)
Item2D temp = parentItem:GetItemAt(75, 75)

GetItemCount()

This action returns the number of items contained in this Item2D.

Return

integer:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child1
Item2D child2
parentItem:Add(child1)
parentItem:Add(child2)
integer size = parentItem:GetItemCount()

GetItems()

This action returns an iterator containing all the items contained in this Item2D.

Return

Libraries.Containers.Iterator:

Example

use Libraries.Interface.Item2D
use Libraries.Containers.Iterator

Item2D parentItem
Item2D child1
Item2D child2
parentItem:Add(child1)
parentItem:Add(child2)
Iterator<Item2D> iterator = parentItem:GetItems()

GetJointList()

This is an action used internally to retrieve the head of the liked list of joints connected to this item. This action is used internally and users should not need to use this action.

Return

Libraries.Game.Physics.Joints.JointEdge2D: The head of the linked list of connected joints

GetLabelText()

This action returns the text used for this Control's label, if it has one.

Return

text: The text of this Control's label.

GetLayer()

This action returns the current Layer2Dthat this Item2D is a part of in the Game libraries.

Return

Libraries.Game.Layer2D:

GetLayout()

Returns true if rendering the selection event.

Return

Libraries.Interface.Layouts.Layout:

GetLayoutProperties(number containerWidth, number containerHeight)

This action returns the best suited LayoutProperties stored by the Control for use with the given container width and height. The Control will attempt to find the most restricted LayoutProperties that is still valid, prioritizing width over height in case of equal values.

Parameters

  • number containerWidth: The width of the container the LayoutProperties must be legal for.
  • number containerHeight: The height of the container the LayoutProperties must be legal for.

Return

Libraries.Interface.Layouts.LayoutProperties: The LayoutProperties contained in the Control that is best suited to the requested container dimensions.

GetLayoutProperties()

This action is fired if the item lost the focus.

Return

Libraries.Containers.Iterator:

GetLayoutRows()

This action returns how many rows this element should occupy, if the layout supports it. This effectively makes the control taller. This is most commonly used in conjunction with FormRowLayout (or StackedRowPage which uses that layout).

Return

number:

GetLeftItem()

Returns the Item accessed to the left of this Item in the chart selection.

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetLeftMargin()

This action gets the left margin size. The left margin is the space outside of the left border.

Return

number: the number amount of left margin.

GetLeftPadding()

This action gets the left padding size. The left padding is the space inside of the left border.

Return

number: the number amount of left padding.

GetLeftSide()

This action returns where the TextureRegion begins the left edge of its region on the stored texture, where 0 is the far left of the texture and 1 is the far right side of the texture.

Return

number:

GetLinearDamping()

Given the local coordinates of a vector, this action computes the screen coordinates of the corresponding vector.

Return

number: The coordinates of the corresponding global vector Attribute Example use Libraries.Interface.Item2D use Libraries.Compute.Vector2 Item2D item Vector2 localVector item:SetWidth(100) item:SetHeight(100) item:SetPosition(400, 250) localVector:Set(0, 0) // Get the coordinates of the center of the item Vector2 worldVector = item:GetWorldVector(localVector)

GetLinearVelocity()

This action gets the linear velocity of this item in units per second. Physics must be enabled on this item before using this action.

Return

Libraries.Compute.Vector2: The vector representing the linear velocity of this item in units per second

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 velocity

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
velocity:Set(100, 0)
item:SetLinearVelocity(velocity)

Vector2 currentVelocity = item:GetLinearVelocity()

GetLinearVelocityFromLocalPoint(Libraries.Compute.Vector2 localPoint)

Given a global point (i.e., the screen coordinates of the point), this action computes the corresponding point relative to the center of this item.

Parameters

Return

Libraries.Compute.Vector2: The coordinates of the point relative to the center of this item

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 worldPoint

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 350)

worldPoint:Set(400, 350)    // the lower left corner of the item

Vector2 localPoint = item:GetLocalPoint(worldPoint)

GetLinearVelocityFromWorldPoint(Libraries.Compute.Vector2 worldPoint)

Given the screen coordinates of a vector, this action computes the local coordinates of the vector (i.e., the coordinates of the vector relative to the center of this item)

Parameters

Return

Libraries.Compute.Vector2: The local coordinates of the corresponding vector

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 worldVector

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 350)

worldVector:Set(400, 350)    // the lower left corner of the item

Vector2 localVector = item:GetLocalVector(worldVector)

GetLocalCenter()

This action gets the position of the center of this item in local coordinates (i.e., with respect to itself).

Return

Libraries.Compute.Vector2: The vector representing the center of this item in local coordinates

GetLocalPoint(Libraries.Compute.Vector2 worldPoint)

Given a global point (i.e., the screen coordinates of the point), this action computes the corresponding point relative to the center of this item.

Parameters

Return

Libraries.Compute.Vector2: The coordinates of the point relative to the center of this item

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 worldPoint

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 350)

worldPoint:Set(400, 350)    // the lower left corner of the item

Vector2 localPoint = item:GetLocalPoint(worldPoint)

GetLocalVector(Libraries.Compute.Vector2 worldVector)

Given the screen coordinates of a vector, this action computes the local coordinates of the vector (i.e., the coordinates of the vector relative to the center of this item)

Parameters

Return

Libraries.Compute.Vector2: The local coordinates of the corresponding vector

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 worldVector

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 350)

worldVector:Set(400, 350)    // the lower left corner of the item

Vector2 localVector = item:GetLocalVector(worldVector)

GetMass(Libraries.Game.Physics.Mass2D mass)

This action is used to advance the item forward in time in physics space to synchronize it for time of impact solving. This action is used internally and users should not need to use this action. Attribute Parameter time The amount of seconds to advance the item forward in time

Parameters

GetMass()

This action returns the mass of the item in kilograms. Physics must be enabled on this item before using this action. If the item is non-responsive or unmovable, the mass is zero.

Return

number: The mass in kilograms

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number mass = item:GetMass()

GetMesh()

This action will create a new Texture with a solid black circle with the given radius. This texture is then loaded into the Drawable.

Return

Libraries.Game.Graphics.Mesh:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable circle
        circle:LoadFilledCircle(75)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

GetMeshIndex()

This action is used internally by the rendering system to determine what index a Drawable starts at in a Mesh. Most users will never need to call this action directly.

Return

integer:

GetMouseDownColor()

This action gets the mouse down font color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse over font color value.

GetMouseDownFontColor()

This action gets the mouse down font color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse down font color.

GetMouseDownGlowColor()

This action gets the mouse down glow color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse down glow color.

GetMouseListeners()

This action returns an Iterator containing all of the MouseListeners that have been added to this Item using the AddMouseListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered MouseListeners.

GetMouseMovementListeners()

This action returns an Iterator containing all of the MouseMovementListeners that have been added to this Item using the AddMouseMovementListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered MouseMovementListeners.

GetMouseOverColor()

This action gets the mouse over color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse over color.

GetMouseOverFontColor()

This action gets the mouse over font color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse over font color value.

GetMouseOverGlowColor()

This action gets the mouse over glow color.

Return

Libraries.Game.Graphics.ColorGroup: the mouse over glow color.

GetMouseWheelListeners()

This action returns an Iterator containing all of the MouseWheelListeners that have been added to this Item using the AddMouseWheelListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered MouseWheelListeners.

GetName()

This action returns the current internal name of the Item.

Return

text:

Example

use Libraries.Interface.Item

Item item
item:SetName("My Item")
output "My item's name is " + item:GetName()

GetNextFocus()

This action returns the next focus item. When this Item has the focus and the user requests the focus to advance (e.g. by pressing the tab key), the returned value is the next item to receive that focus, if it is defined. If it isn't defined, the focus can not advance from this Item.

Return

Libraries.Interface.Item: The next Item to receive focus after this one.

GetNodeCount()

This action gets the number of broadphase nodes this item has. This action is used internally and users should not need to use this action.

Return

integer: The number of broadphase nodes attached to this item

GetNodes()

This action returns all of the broadphase nodes attached to this item in an array. This action is used internally and users should not need to use this action.

Return

Libraries.Containers.Array: The broadphase nodes attached to this item in an array

GetNumberProperty(text property)

This action gets a generic property with a specified name from the control.

Parameters

  • text property: the property name.

Return

number: the number value of the property.

GetOffsetX()

This action returns the X offset of the Item. The offset tells the Item where to relate its X position to. In other words, the X offset is where an X coordinate of 0 is for this Item. This is automatically set when using an action to add an Item to another Item.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetX(100)
number offset = myItem:GetOffsetX()

GetOffsetY()

This action returns the Y offset of the item. The offset tells the Item where to relate its Y position to. In other words, the Y offset is where a Y coordinate of 0 is for this item. This is automatically set when using an action to add an Item to another Item.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetY(75)
number offset = myItem:GetOffsetY()

GetOffsetZ()

This action returns the Z offset of the item. The offset tells the Item where to relate its Z position to. In other words, the Z offset is where a Z coordinate of 0 is for this item. This is automatically set when using an action to add an Item to another Item.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetZ(75)
number offset = myItem:GetOffsetZ()

GetOriginX()

This action will return the current X origin of this Item2D. By default, the origin is at the coordinates 0, 0.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetOriginCenter()
number xOrigin = myItem:GetOriginX()

GetOriginY()

This action will return the current Y origin of this Item2D. By default, the origin is at the coordinates 0, 0.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetOriginCenter()
number yOrigin = myItem:GetOriginY()

GetParent()

This action returns the parent of this Item2D. An Item2D gets a parent when it is added to another Item using the Add action.

Return

Libraries.Interface.Item2D:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(child)
Item2D item = child:GetParent()

GetParentChart()

Try to get the chart this is attached to via the parent hierarchy.

Return

Libraries.Interface.Controls.Charts.Chart:

GetPattern()

This action sets the selection arrow verticies (Array) drawable object.

Return

integer:

GetPatternName()

This action gets chart drawables selection arrow drawable object.

Return

text: the charts slection arrow object.

GetPercentageHeight()

This action returns the height of the Control relative to the size of its container, if the container's Layout supports it.

Return

number: The target height as a percentage (as a value between 0.0 and 1.0) of the container's height.

GetPercentageOriginX()

This action returns the x-coordinate of the "origin" of the Control, as a percentage of its width. The origin is the point that the Control is positioned by. For example, by default, the origin is at 0% x and 0% y, or the bottom-left corner of the Control. Changing the percentage origin x and y to 0.5 (50%) would mean the Control should be positioned using its center instead. The origin point is used by layouts that allow for specific positioning, such as ManualLayout or GridLayout. It is ignored by layouts that have special positioning rules, such as FlowLayout.

Return

number:

GetPercentageOriginY()

This action returns the y-coordinate of the "origin" of the Control, as a percentage of its width. The origin is the point that the Control is positioned by. For example, by default, the origin is at 0% x and 0% y, or the bottom-left corner of the Control. Changing the percentage origin x and y to 0.5 (50%) would mean the Control should be positioned using its center instead. The origin point is used by layouts that allow for specific positioning, such as ManualLayout or GridLayout. It is ignored by layouts that have special positioning rules, such as FlowLayout.

Return

number:

GetPercentageWidth()

This action returns the width of the Control relative to the size of its container, if the container's Layout supports it.

Return

number: The target width as a percentage (as a value between 0.0 and 1.0) of the container's width.

GetPercentageX()

This action returns the x position of the Control relative to the size of its container, if the container's Layout supports it.

Return

number: The target x position as a percentage (as a value between 0.0 and 1.0) of the container's width.

GetPercentageY()

This action returns the y position of the Control relative to the size of its container, if the container's Layout supports it.

Return

number: The target y position as a percentage (as a value between 0.0 and 1.0) of the container's height.

GetPhysicsProperties()

This action computes the distance of the passed point from the collision shape attached to this item. This action is used internally and users should not need to use this action.

Return

Libraries.Game.Physics.PhysicsProperties2D: The distance of the point from the collision shape of this item

GetPixelHeight()

This action returns the target height of the Control in pixels. Note that this may not be used by some layouts (such as FlowLayout).

Return

number: The target height of this Control in pixels.

GetPixelWidth()

This action returns the target width of the Control in pixels. Note that this may not be used by some layouts (such as FlowLayout).

Return

number: The target height of this Control in pixels.

GetPixelX()

This action returns the target x position of the Control in pixels. Note that this may not be used by some layouts (such as FlowLayout).

Return

number: The target x position of this Control in pixels.

GetPixelY()

This action returns the target y position of the Control in pixels. Note that this may not be used by some layouts (such as FlowLayout).

Return

number: The target y position of this Control in pixels.

GetPopupMenu()

The GetContextMenu action returns this Control's context menu, if it has one. A context menu is a PopupMenu which appears when a user wants additonal context about this Control (most commonly by right-clicking on the Control).

Return

Libraries.Interface.Controls.PopupMenu:

GetPreviousFocus()

This action returns the previous focus item. When this Item has the focus and the user requests the focus to move backwards (e.g. by pressing shift & tab), the returned value is the previous item to receive that focus, if it is defined. If it isn't defined, the focus can not move backwards from this Item.

Return

Libraries.Interface.Item: The previous Item to receive focus before this one.

GetPropertiesSize()

Return

integer

GetProperty(text key)

GetPropertyKeyIterator()

GetRawInertia()

This action is used to update this items position in physics space after physics solving is finished for this item. This action is used internally and users should not need to use this action.

Return

number:

GetRegionHeight()

This action returns the height of the region.

Return

integer:

GetRegionWidth()

This action returns the width of the TextureRegion.

Return

integer:

GetRegionX()

This action returns the x coordinate where the region begins on the Texture.

Return

integer:

GetRegionY()

This action returns the y coordinate where the region begins on the Texture.

Return

integer:

GetResponsiveness()

This action gets the inverse mass of the item (i.e., one divided by the mass of this item). Physics must be enabled on this item before using this action.

Return

integer: The inverse mass of this item

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inverseMass = item:GetInverseMass()

GetRestitution()

This action gets the total torque on this item. The units are kilogram units squared per second per second. Physics must be enabled on this item before using this action.

Return

number: The total torque in kilogram units squared per second per second

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetTorque(200)
number totalTorque = item:GetTorque()

GetRightItem()

Returns the Item accessed to the right of this Item in the chart selection.

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetRightMargin()

This action gets the right margin size. The right margin is the space outside of the right border.

Return

number: the number amount of right margin.

GetRightPadding()

This action gets the right padding size. The right padding is the space inside of the right border.

Return

number: the number amount of right padding.

GetRightSide()

This action returns where the TextureRegion begins the right edge of its region on the stored texture, where 0 is the far left of the texture and 1 is the far right side of the texture.

Return

number:

GetRotation()

Gets the current degree of rotation of this Item.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetRotation(90)
number rotation = myItem:GetRotation()

GetRotationInRadians()

Gets the current rotation of this Item in radians.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetRotation(90)
number rotation = myItem:GetRotationInRadians()

GetScaleX()

This action will return the current x-scaling value of this Item2D. By default, the x-scaling value of an Item is 1.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:Scale(1.25)
number scaleX = myItem:GetScaleX()

GetScaleY()

This action will return the current y-scaling value of this Item2D. By default, the y-scaling value of an Item is 1.

Return

number:

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:Scale(1.25)
number scaleY = myItem:GetScaleY()

GetScreenX()

This action returns the x coordinate of the Item on the screen. If the Item hasn't been attached to a Layer, this will return a "Not a Number" value instead.

Return

number:

GetScreenY()

This action returns the y coordinate of the Item on the screen. If the Item hasn't been attached to a Layer, this will return a "Not a Number" value instead.

Return

number:

GetSelectionArrow()

This action gets chart drawables selection arrow drawable object.

Return

Libraries.Game.Graphics.Drawable: the charts slection arrow object.

GetSelectionArrowVertices()

This action gets the selection arrow verticies (Array) drawable object.

Return

Libraries.Containers.Array: the Array of the selection arrow vertices.

GetSelectionBorderColor()

This action gets the border color for the selected bar.

Return

Libraries.Game.Graphics.ColorGroup: a color of the selected bar border.

GetSelectionBracket()

This action gets the selection bracket (Array).

Return

Libraries.Containers.Array: the Array of the selection bracket.

GetSelectionColor()

This action gets the background color for the bar.

Return

Libraries.Game.Graphics.ColorGroup: a color of the bar background.

GetSelectionFontColor()

This action gets the selection font color on the control.

Return

Libraries.Game.Graphics.ColorGroup: the selection font color.

GetSelectionListeners()

This action return an iterator of all SelectionListeners which have been added to the Control of the given SelectionEvent.

Return

Libraries.Containers.Iterator: All SelectionListeners registered with the Control.

GetSeries()

This action gets the chart drawables series. The series is the entry in the legend associated with this drawable. Series is used to locate, name, and color the drawable unless manually colored.

Return

Libraries.Interface.Controls.Charts.Series: Series from the ChartDrawable.

GetShaderData()

This action will create a new Texture with a solid black triangle that is made of the points identified by the three given points. The three points are relative to the origin of the Drawable. This texture is then loaded into the Drawable.

Return

Libraries.Language.Object:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable triangle
        triangle:LoadFilledTriangle(0, 0, 200, 200, 400, 0)
        triangle:SetPosition(50, 50)
        Add(triangle)
    end
end

GetShadowColor()

This action gets the shaddow color from the control.

Return

Libraries.Game.Graphics.ColorGroup: the shaddow color.

GetShadowEdgeFade()

This action returns the shadow edge fade property.

Return

number: the shadow edge fade number.

GetShadowHeight()

This action returns the shadow height property.

Return

number: the shadow height number.

GetShadowWidth()

This action returns the shadow width property.

Return

number: the shadow width number.

GetShadowX()

This action returns the shadow X value.

Return

number: the shadow X value.

GetShadowY()

This action returns the shadow Y value.

Return

number: the shadow Y value.

GetShape()

This item returns the collision shape of this item. The collision shape is the shape the collision system will use to test for collisions with this item. Note that this may be different from the shape drawn on the screen.

Return

Libraries.Game.Collision.Shapes.CollisionShape2D: The collision shape for this item

Example

use Libraries.Game.Drawable
use Libraries.Game.Collision.Shapes.Circle

Drawable ball
ball:Load("ball.png")
Circle circle
circle:SetRadius(30)
ball:SetShape(circle)
CollisionShape2D shape = ball:GetShape()

GetShapeType()

This action returns an integer representing the type of collision shape currently attached to this item.

Return

integer: The integer representing the type of collision shape for this item

GetSleepTime()

This action gets the children of this item in an array.

Return

number: The children of this item in an array

Example

use Libraries.Interface.Item2D

Item2D parent
Item2D child1
Item2D child2

parent:Add(child1)
parent:Add(child2)

Array<Item2D> children = parent:GetChildren()

GetSweep()

This action returns the swept movement of this item used for time of impact solving for the physics system. This action is used internally and users should not need to call this action.

Return

Libraries.Game.Collision.Sweep2D: The swept motion of this item

GetTexture()

This action returns the texture that is currently loaded into the Drawable.

Return

Libraries.Game.Graphics.Texture:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        drawable:LoadFilledCircle(75)
        Texture circle = drawable:GetTexture()
    end

end

GetTextureField()

This action returns the texture held by this TextureRegion.

Return

Libraries.Game.Graphics.Texture:

GetTopLeftPixelRounding()

This action returns the top left pixel rounding value.

Return

number: the top left pixel rounding value.

GetTopLeftRounding()

This action returns the top left rounding value.

Return

number: the top left rounding value.

GetTopMargin()

This action gets the top margin size. The top margin is the space outside of the top border.

Return

number: the number amount of top margin.

GetTopPadding()

This action gets the top padding size. The top padding is the space inside of the top border.

Return

number: the number amount of top padding.

GetTopRightPixelRounding()

This action returns the top right pixel rounding value.

Return

number: the top right pixel rounding value.

GetTopRightRounding()

This action returns the top right rounding value.

Return

number: the top right rounding value.

GetTopSide()

This action returns where the TextureRegion begins the top edge of its region on the stored texture, where 0 is the far bottom of the texture and 1 is the far top side of the texture.

Return

number:

GetTorque()

This action gets the total torque on this item. The units are kilogram units squared per second per second. Physics must be enabled on this item before using this action.

Return

number: The total torque in kilogram units squared per second per second

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetTorque(200)
number totalTorque = item:GetTorque()

GetTouchListeners()

This action returns an Iterator containing all of the TouchListeners that have been added to this Item using the AddTouchListener action.

Return

Libraries.Containers.Iterator: An iterator containing all of the registered TouchListeners.

GetTransform()

This action returns the position of the item in physical space. This acction is used internally and should not be used by users to get the position of this item on the screen.

Return

Libraries.Game.Collision.PhysicsPosition2D: The position and angle of this item in physics space

GetTransform0()

This action gets the position of the item in physics space from the previous frame. This action is used internally and users should not need to use this action

Return

Libraries.Game.Collision.PhysicsPosition2D: The position and angle of the item in physics space in the previous frame

GetUnfocusedSelectionBorderColor()

This action gets the unfocused selection border color on the control.

Return

Libraries.Game.Graphics.ColorGroup: the unfocused selection border color.

GetUnfocusedSelectionColor()

This action gets the unfocused selection color on the control.

Return

Libraries.Game.Graphics.ColorGroup: the unfocused selection color.

GetUnfocusedSelectionFontColor()

This action gets the unfocused selection font color on the control.

Return

Libraries.Game.Graphics.ColorGroup: the unfocused selection font color.

GetUpItem()

Returns the Item accessed "above" (via the UP arrow) this Item in the chart selection.

Return

Libraries.Interface.Controls.Charts.ChartItem:

GetValue()

This action returns the actual value associated with this bar. The parent Chart axis has a total value to which this value will be compared to get a percent for the appropriate size.

Return

number: a number value

GetVerticalLayoutMode()

The SetVerticalLayoutMode is used to determine how the height of a Control is calculated. It should be one of the following constants: STANDARD, which will calculate the height as a set number of pixels plus a percentage of the container's height. FILL, which will make the height fill the remaining height of the container. FIT_CONTENTS, which will calculate the height to fit the children contents. FIT_FONT, which will fit the height of the Control to the line height of the Font set in this LayoutProperties.

Return

integer: the integer that maps to the layout mode constant, one of STANDARD, FILL, FILL_CONTENTS, or FIT_FONT.

GetView2D()

The SetClipping action is used to enable or disable clipping. If it is enabled, when the Item and its children are drawn as part of the QueueForDrawing action, any pixels that would be drawn outside of the unrotated dimensions of the Item are not rendered. In other words, the Item will only draw inside the exact rectangle formed by its x, y position and its width and height.

Return

Libraries.Interface.Views.View2D:

GetVisibleItemAt(number x, number y)

This action searches through all Items stored in this Item2D and finds the deepest Item which contains the given point in global coordinates. This action will only return items which are visible (that is, IsShowing() returns true).

Parameters

  • number x
  • number y

Return

Libraries.Interface.Item2D: The deepest visible item in the children hierarchy at the given point.

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
Item2D grandchild
parentItem:Add(child)
child:Add(grandchild)
grandchild:SetHeight(100)
grandchild:SetWidth(100)
Item2D temp = parentItem:GetVisibleItemAt(75, 75)

GetWidth()

This action will return the currently set width of the Item2D.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
number width = myItem:GetWidth()

GetWorldCenter()

This action gets the position of the center of this item in global (world) coordinates.

Return

Libraries.Compute.Vector2: The vector representing the center of this item in global coordinates

GetWorldPoint(Libraries.Compute.Vector2 localPoint)

Given a point relative to the center of this item, this action computes and returns that point in screen coordinates.

Parameters

Return

Libraries.Compute.Vector2: The screen coordinates of the passed local point

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 localPoint

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 250)

localPoint:Set(0, 0)    // Get the coordinates of the center of the item

Vector2 worldPoint = item:GetWorldPoint(localPoint)

GetWorldVector(Libraries.Compute.Vector2 localVector)

Given the local coordinates of a vector, this action computes the screen coordinates of the corresponding vector.

Parameters

Return

Libraries.Compute.Vector2: The coordinates of the corresponding global vector Attribute Example use Libraries.Interface.Item2D use Libraries.Compute.Vector2 Item2D item Vector2 localVector item:SetWidth(100) item:SetHeight(100) item:SetPosition(400, 250) localVector:Set(0, 0) // Get the coordinates of the center of the item Vector2 worldVector = item:GetWorldVector(localVector)

GetX()

This action returns the currently set X coordinate of the Item.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
number value = myItem:GetX()

GetY()

This action returns the currently set Y coordinate of the Item.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
number value = myItem:GetY()

GetZ()

This action returns the currently set Z value of this Item2D.

Return

number:

Example

use Libraries.Interface.Item2D
Item2D myItem
number value = myItem:GetZ()

HasBorderThickness()

This action returns true when the border thickness on the control has been set.

Return

boolean: true when the border has thickness on the control.

HasBottomBorder()

This action returns true if the bottom border is present on the bar.

Return

boolean: true when the bar has a bottom border.

HasBottomLeftPixelRounding()

This action returns the current status of the bottom left pixel rounding value.

Return

boolean: true if the control has a bottom left pixel rounding value.

HasBottomLeftRounding()

This action returns the current status of the bottom left rounding value.

Return

boolean: true if the control has a bottom left rounding value.

HasBottomRightPixelRounding()

This action returns the current status of the bottom right pixel rounding value.

Return

boolean: true if the control has a bottom right pixel rounding value.

HasBottomRightRounding()

This action returns the current status of the bottom right rounding value.

Return

boolean: true if the control has a bottom right rounding value.

HasColorPropertyOverride(text property)

This action gets whether the color property override is activated.

Parameters

  • text property

Return

boolean: true if the color property is overridden.

HasFontOutlineThickness()

This action returns the current status of the font outline thickness.

Return

boolean: true if the control has a font outline thickness set.

HasLeftBorder()

This action returns true if the left border is present on the bar.

Return

boolean: true when the bar has a left border.

HasMoved()

This action returns an integer representing the type of collision shape currently attached to this item.

Return

boolean: The integer representing the type of collision shape for this item

HasNumberPropertyOverride(text property)

This action gets whether the number property override is activated.

Parameters

  • text property

Return

boolean: true if the number property is overridden.

HasPattern()

This action gets the selection bracket (Array).

Return

boolean: the Array of the selection bracket.

HasProperties()

Return

boolean

HasProperty(text key)

Parameters

  • text key

Return

boolean

HasRightBorder()

This action returns true if the right border is present on the bar.

Return

boolean: true when the bar has a right border.

HasShadowEdgeFade()

This action returns the current status of the shadow edge fade.

Return

boolean: true if the control has a shadow edge fade.

HasShadowHeight()

This action returns the current status of the shadow height.

Return

boolean: true if the control has a shadow height.

HasShadowWidth()

This action returns the current status of the shadow width.

Return

boolean: true if the control has a shadow width.

HasShadowX()

This action returns the current status of the shadow X value.

Return

boolean: true if the control has a shadow X value.

HasShadowY()

This action returns the current status of the shadow Y value.

Return

boolean: true if the control has a shadow Y value.

HasSpecialNavigation(integer navigationType)

This action indicates if this Control has special behavior when asked to navigate in a specific direction. The parameter should be one of ChartItem's navigation constants, e.g. UP, DOWN, ENTER, etc. By default this always returns false, but some classes may override this with different values.

Parameters

  • integer navigationType

Return

boolean:

HasTopBorder()

This action returns true if the top border is present on the bar.

Return

boolean: true when the bar has a top border.

HasTopLeftPixelRounding()

This action returns the current status of the top left pixel rounding value.

Return

boolean: true if the control has a top left pixel rounding value.

HasTopLeftRounding()

This action returns the current status of the top left rounding value.

Return

boolean: true if the control has a top left rounding value.

HasTopRightPixelRounding()

This action returns the current status of the top right pixel rounding value.

Return

boolean: true if the control has a top right pixel rounding value.

HasTopRightRounding()

This action returns the current status of the top right rounding value.

Return

boolean: true if the control has a top right rounding value.

Hide()

This action is used to indicate that an Item and all Items that were added to it should not be visible on the screen. Note that the Item class on its own cannot be drawn on the screen, but classes that inherit from it such as Libraries.Game.Graphics.Drawable can be. By default, Items are considered visible.

Example

use Libraries.Interface.Item

Item item
item:Hide()

IsAcceptingMouseInput()

This action returns whether or not this Item accepts mouse input. If the value is true, this will intercept incoming mouse events, triggering any related MouseListeners and InputSets and preventing the mouse event from propagating to other Items on the Layer. The default value is true.

Return

boolean: True if this Item can receive mouse events, or false otherwise.

IsAccessibleParent()

This action returns the nearest parent object that is accessible. This can be anything that the programmer wants to be accessible, from user interface components in a 2D interface to 3D components relative in 3-space on screen. By default, items have no accessible parent and are self-contained, but user interface components normally override the behavior so that controls can be logically nested within each other. attribute: returns Item

Return

boolean:

IsAnnotationLocationBottom()

Gets the location of the annotation. If the annotation is located on the bottom true is returned. If it is located somewhere else this action returns false.

Return

boolean: true when the annotation is located at the bottom.

IsAnnotationLocationLeft()

Gets the location of the annotation. If the annotation is located on the left true is returned. If it is located somewhere else this action returns false.

Return

boolean: true when the annotation is located at the left.

IsAnnotationLocationRight()

Gets the location of the annotation. If the annotation is located on the right true is returned. If it is located somewhere else this action returns false.

Return

boolean: true when the annotation is located at the right.

IsAnnotationLocationTop()

Gets the location of the annotation. If the annotation is located on the top true is returned. If it is located somewhere else this action returns false.

Return

boolean: true when the annotation is located at the top.

IsClipping()

The IsClipping action returns true if pixel clipping is enabled, or false if it is disabled. If it is enabled, when the Item and its children are drawn as part of the QueueForDrawing action, any pixels that would be drawn outside of the unrotated dimensions of the Item are not rendered. In other words, the Item will only draw inside the exact rectangle formed by its x, y position and its width and height.

Return

boolean: Whether or not pixel clipping is enabled for this Item.

IsCollidable()

This action determines whether this item is collidable.

Return

boolean: True if this item is collidable, false otherwise

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:SetCollidable(true)
boolean result = circle:IsCollidable

IsCustomDrawing()

The IsCustomDrawing action returns whether or not this Item is directly managing how itself and its children are drawn. When this value is true, the Item is responsible for determining its rendering via the Draw(Painter2D) action -- if this action isn't overridden, the Item and its children won't be drawn. This is an advanced feature only necessary for complex custom components, and most users will not need to use this functionality.

Return

boolean: Whether or not this Item is currently using custom drawing rules.

IsEmpty()

This action returns whether or not any items are contained in this Item.

Return

boolean:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child1
parentItem:Add(child1)
boolean wasEmpty = parentItem:IsEmpty()

IsEscapingToLastItem()

This action enables or disables escape to last item functionality. If enabled, this object's Escape Item will be the last ChartItem that accessed this Item via the Enter key. That means that if this is enabled, the escape item will be dynamically adjusted, instead of a static value.

Return

boolean:

IsFastMoving()

This action sets this item's angular velocity in radians per second. Physics must be enabled in this item before using this action.

Return

boolean:

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetAngularVelocity(0.1)

IsFlippedX()

This action will return true if the Drawable has been flipped across the x-axis, or false if it has not.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable line
        line:LoadLine(20, 100)
        line:FlipX()
        boolean flipX = line:IsFlippedX()
    end
end

IsFlippedY()

This action will return true if the Drawable has been flipped across the y-axis, or false if it has not.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable line
        line:LoadLine(20, 100)
        line:FlipY()
        boolean flipY = line:IsFlippedY()
    end
end

IsFocusable()

This action returns whether or not the Item can currently receive focus. This property can be set with SetFocusable().

Return

boolean:

IsFocused()

The IsFocused action determines if this Item is currently focused, returning true if it is, or false if it is not.

Return

boolean:

IsLoaded()

This action returns true if there is a texture currently loaded into the Drawable, otherwise it returns false.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Drawable drawable
        output "Drawable is loaded = " + drawable:IsLoaded()
        drawable:LoadFilledCircle(75)
        output "Drawable is now loaded = " + drawable:isLoaded()
    end

end

IsNonResponsive()

This action gets the number of broadphase nodes this item has. This action is used internally and users should not need to use this action.

Return

boolean: The number of broadphase nodes attached to this item

IsOnLayer()

This action returns true if the item has been added to a Layer, or false otherwise.

Return

boolean: True if the item is on a Layer, or false otherwise.

IsPassingThroughSelection()

Sets the escape Item accessed from this Item in the chart selection (by default using the ESCAPE key).

Return

boolean:

IsPhysicsEnabled()

This action determines whether physics is currently enabled for this item.

Return

boolean: True if physics is enabled for this item, false otherwise

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:EnablePhysics(true)
boolean result = circle:IsPhysicsEnabled()

IsRenderingFocus()

Returns true if rendering the focus event.

Return

boolean:

IsRenderingMouseDown()

Returns true if rendering the mouse down event.

Return

boolean:

IsRenderingMouseOver()

Returns true if rendering the mouse over event.

Return

boolean:

IsRenderingSelection()

Returns true if rendering the selection event.

Return

boolean:

IsResponsive()

This action sets this item to be collidable. Passing true turns on collision for this item while passing false turns off collision for this item.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:SetCollidable(true)

IsRotationAllowed()

This action determines whether physics is currently enabled for this item.

Return

boolean: True if physics is enabled for this item, false otherwise

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:EnablePhysics(true)
boolean result = circle:IsPhysicsEnabled()

IsShowing()

This action returns whether the Item is currently set to be visible on the screen.

Return

boolean: A boolean representing whether or not the Item is currently visible.

Example

use Libraries.Interface.Item

Item item
item:Hide()
boolean visible = item:IsShowing()

IsSimulated()

This action gets the position of the center of this item in local coordinates (i.e., with respect to itself).

Return

boolean: The vector representing the center of this item in local coordinates

IsSimulationRequired()

This action sets the x-component of this item's linear velocity in units per second. Physics must be enabled on this item before using this action.

Return

boolean:

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetLinearVelocityX(100)

IsUnmovable()

This action creates the nodes for this item for the broadphase collision. This action is needed in order to add the item to the collision detection system. This action is used internally and users should not need to use this action.

Return

boolean:

Load(Libraries.Game.Graphics.TextureRegion region)

This action will load the given TextureRegion into this Drawable, which will set its appearance when drawn on screen.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Graphics.TextureRegion
use Libraries.Game.Game

class Main is Game

    Drawable circle
    Texture circleTexture
    TextureRegion circleRegion

    action Main
        StartGame()
    end

    action CreateGame
        circleTexture:LoadFilledCircle(50)
        circleRegion:LoadTextureRegion(circleTexture)
        circle:Load(circleRegion)
        circle:SetPosition(250, 100)
        Add(circle)
    end
end

Load(text filePath)

This action will create a new texture from the image file located at the given file path. This texture will then be loaded into this Drawable. This sets the Drawable's appearance when it is drawn on the screen.

Parameters

  • text filePath

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game

    Drawable bunny

    action Main
        StartGame()
    end

    action CreateGame
        // Assuming that we have a file in our project named "Rabbit.png"
        bunny:Load("Rabbit.png")
        Add(bunny)
    end
end

Load(Libraries.Compute.Matrix matrix)

This action will load a matrix into a Texture to create a monochrome (black and white) image, then load the Texture into this Drawable. Each value is assumed to be between 0 and 1, where 0 represents a black pixel and 1 represents a white pixel.

Parameters

Example

use Libraries.Game.Game
use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Compute.Matrix

class Main is Game

    Texture texture
    Drawable drawable

    action Main
        StartGame()
    end

    action CreateGame
        Matrix matrix

        // 7x7 square that is black at edges and lightens as it goes towards the center.
        matrix:Fill(7, 7, 0)
        matrix:Set(1, 1, 0.33)
        matrix:Set(2, 1, 0.33)
        matrix:Set(3, 1, 0.33)
        matrix:Set(4, 1, 0.33)
        matrix:Set(5, 1, 0.33)
        matrix:Set(5, 2, 0.33)
        matrix:Set(5, 3, 0.33)
        matrix:Set(5, 4, 0.33)
        matrix:Set(5, 5, 0.33)
        matrix:Set(4, 5, 0.33)
        matrix:Set(3, 5, 0.33)
        matrix:Set(2, 5, 0.33)
        matrix:Set(1, 5, 0.33)
        matrix:Set(1, 4, 0.33)
        matrix:Set(1, 3, 0.33)
        matrix:Set(1, 2, 0.33)

        matrix:Set(2, 2, 0.66)
        matrix:Set(3, 2, 0.66)
        matrix:Set(4, 2, 0.66)
        matrix:Set(4, 3, 0.66)
        matrix:Set(4, 4, 0.66)
        matrix:Set(3, 4, 0.66)
        matrix:Set(2, 4, 0.66)
        matrix:Set(2, 3, 0.66)

        matrix:Set(3, 3, 1)

        // Loading the Drawable and making it larger so that it's easier to see.
        drawable:Load(matrix)
        Add(drawable)

        drawable:SetPosition(200, 200)
        drawable:SetSize(100, 100)
    end
end

Load(Libraries.Game.Graphics.Texture texture, integer sourceWidth, integer sourceHeight)

This action will load the given texture into this Drawable, loading from the lower left corner of the texture to the given width and height.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Game

class Main is Game

    Drawable semicircle1
    Drawable semicircle2
    Texture circleTexture

    action Main
        StartGame()
    end

    action CreateGame
        circleTexture:LoadFilledCircle(50)
        semicircle1:Load(circleTexture, circleTexture:GetWidth()/2, circleTexture:GetHeight())
        semicircle2:Load(circleTexture, circleTexture:GetWidth(), circleTexture:GetHeight()/2)
        semicircle1:SetPosition(50, 100)
        semicircle2:SetPosition(250, 100)
        Add(semicircle1)
        Add(semicircle2)
    end
end

Load(Libraries.Game.Graphics.Texture newTexture, integer sourceX, integer sourceY, integer sourceWidth, integer sourceHeight)

This action will load the given texture into this Drawable, loading from the given x,y coordinates of the texture to the given width and height.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Game

class Main is Game

    Drawable circlePiece
    Texture circleTexture

    action Main
        StartGame()
    end

    action CreateGame
        circleTexture:LoadFilledCircle(50)
        circlePiece:Load(circleTexture, circleTexture:GetWidth()/4, 0, circleTexture:GetWidth()/2, circleTexture:GetHeight())
        circlePiece:SetPosition(250, 100)
        Add(circlePiece)
    end
end

Load(Libraries.System.File file)

This action will create a new texture from provided image file. This texture will then be loaded into this Drawable. This sets the Drawable's appearance when it is drawn on the screen.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.System.File
use Libraries.Game.Game

class Main is Game

    Drawable bunny
    File imageFile

    action Main
        StartGame()
    end

    action CreateGame
        // Assuming that we have a folder in our project called
        // "Assets" containing a file named "hare.jpg"
        imageFile:SetWorkingDirectory("Assets")
        imageFile:SetPath("hare.jpg")
        bunny:Load(imageFile)
        Add(bunny)
    end
end

Load(Libraries.Game.Graphics.Texture texture)

This action will load the given texture into this Drawable. This sets the Drawable's appearance when it is drawn on the screen.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Game

class Main is Game

    Drawable circle1
    Drawable circle2
    Texture circleTexture

    action Main
        StartGame()
    end

    action CreateGame
        circleTexture:LoadFilledCircle(50)
        circle1:Load(circleTexture)
        circle2:Load(circleTexture)
        circle1:SetPosition(50, 100)
        circle2:SetPosition(250, 100)
        Add(circle1)
        Add(circle2)
    end
end

Load(Libraries.Game.Graphics.TextureRegion region, integer sourceX, integer sourceY, integer sourceWidth, integer sourceHeight)

This action will load the given TextureRegion into this Drawable, loading from the given x,y coordinates of the texture to the given width and height.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Texture
use Libraries.Game.Graphics.TextureRegion
use Libraries.Game.Game

class Main is Game

    Drawable circlePiece
    Texture circleTexture
    TextureRegion circleRegion

    action Main
        StartGame()
    end

    action CreateGame
        circleTexture:LoadFilledCircle(50)
        circleRegion:LoadTextureRegion(circleTexture)
        circlePiece:Load(circleRegion, circleTexture:GetWidth()/4, 0, circleTexture:GetWidth()/2, circleTexture:GetHeight())
        circlePiece:SetPosition(250, 100)
        Add(circlePiece)
    end
end

LoadCircle(integer radius, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a hollow circle of the given color with the given radius. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color red
        red:SetColor(1, 0, 0, 1)
        Drawable circle
        circle:LoadCircle(75, red)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

LoadCircle(integer radius)

This action will create a new Texture with a hollow black circle with the given radius. This texture is then loaded into the Drawable.

Parameters

  • integer radius

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable circle
        circle:LoadCircle(75)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

LoadFilledCircle(integer radius)

This action will create a new Texture with a solid black circle with the given radius. This texture is then loaded into the Drawable.

Parameters

  • integer radius

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable circle
        circle:LoadFilledCircle(75)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

LoadFilledCircle(integer radius, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a solid circle of the given color with the given radius. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color blue
        blue:SetColor(0, 0, 1, 1)
        Drawable circle
        circle:LoadFilledCircle(75, blue)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

LoadFilledRectangle(integer width, integer height)

This action will create a new Texture with a solid black rectangle with the given width and height. This texture is then loaded into the Drawable.

Parameters

  • integer width
  • integer height

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable rectangle
        rectangle:LoadFilledRectangle(20, 100)
        rectangle:SetPosition(50, 50)
        Add(rectangle)
    end
end

LoadFilledRectangle(integer width, integer height, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a solid rectangle of the given color with the given width and height. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color green
        green:SetColor(0, 1, 0, 1)
        Drawable rectangle
        rectangle:LoadFilledRectangle(20, 100, green)
        rectangle:SetPosition(50, 50)
        Add(rectangle)
    end
end

LoadFilledTriangle(integer x1, integer y1, integer x2, integer y2, integer x3, integer y3)

This action will create a new Texture with a solid black triangle that is made of the points identified by the three given points. The three points are relative to the origin of the Drawable. This texture is then loaded into the Drawable.

Parameters

  • integer x1
  • integer y1
  • integer x2
  • integer y2
  • integer x3
  • integer y3

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable triangle
        triangle:LoadFilledTriangle(0, 0, 200, 200, 400, 0)
        triangle:SetPosition(50, 50)
        Add(triangle)
    end
end

LoadFilledTriangle(integer x1, integer y1, integer x2, integer y2, integer x3, integer y3, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a solid triangle of the given color that is made of the points identified by the three given points. The three points are relative to the origin of the Drawable. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color purple
        purple:SetColor(0.5, 0, 0.5, 1)
        Drawable triangle
        triangle:LoadFilledTriangle(0, 0, 200, 200, 400, 0, purple)
        triangle:SetPosition(50, 50)
        Add(triangle)
    end
end

LoadGraphics(Libraries.Interface.Layouts.LayoutProperties properties)

Link to the parent BarGroup.

Parameters

LoadLine(integer x, integer y)

This action will create a new Texture with a black line that connects an imaginary point at 0,0 to the provided x,y coordinates. This texture is then loaded into the Drawable.

Parameters

  • integer x
  • integer y

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable line
        line:LoadLine(20, 100)
        line:SetPosition(50, 50)
        Add(line)
    end
end

LoadLine(integer x, integer y, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a line of the given color that connects between an imaginary point at 0,0 to the provided x,y coordinates. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 1, 1, 1)
        Drawable line
        line:LoadLine(20, 100, cyan)
        line:SetPosition(50, 50)
        Add(line)
    end
end

LoadRectangle(integer width, integer height, Libraries.Game.Graphics.ColorGroup color)

This action will create a new Texture with a hollow rectangle of the given color with the given width and height. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color yellow
        yellow:SetColor(1, 1, 0, 1)
        Drawable rectangle
        rectangle:LoadRectangle(20, 100, yellow)
        rectangle:SetPosition(50, 50)
        Add(rectangle)
    end
end

LoadRectangle(integer width, integer height)

This action will create a new Texture with a hollow black rectangle with the given width and height. This texture is then loaded into the Drawable.

Parameters

  • integer width
  • integer height

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable rectangle
        rectangle:LoadRectangle(20, 100)
        rectangle:SetPosition(50, 50)
        Add(rectangle)
    end
end

LoadShape(Libraries.Containers.Array<number> points)

LoadShape(Libraries.Containers.Array<number> points, Libraries.Game.Graphics.ColorGroup color)

LoadShape(Libraries.Containers.Array<number> points, Libraries.Containers.Array<Libraries.Game.Graphics.Color> colors)

LoadTextureRegion(Libraries.Game.Graphics.Texture newTexture)

This action loads an entire texture into the TextureRegion.

Parameters

LoadTextureRegion(Libraries.Game.Graphics.Texture newTexture, integer x, integer y, integer width, integer height)

This action loads part of a texture into this TextureRegion, starting from the given x,y coordinates of the Texture to the given width and height.

Parameters

LoadTextureRegion(Libraries.Game.Graphics.Texture newTexture, integer width, integer height)

This action loads part of a texture into the TextureRegion, starting from the bottom left corner to the given width and height.

Parameters

LoadTextureRegion(Libraries.Game.Graphics.Texture newTexture, number left, number right, number top, number bottom)

This action loads part of a texture into this TextureRegion, using the given percentage coordinates from 0 to 1 of the texture to load.

Parameters

LostFocus(Libraries.Interface.Events.FocusEvent event)

This action is fired if the item lost the focus.

Parameters

LostSelection()

This action is used when a Chart Drawable loses the selection. Selection elements are then hidden.

Move(Libraries.Compute.Vector2 movement)

This action will increase the x and y coordinates of this Item by the values stored in the provided Vector2.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D myItem
myItem:SetX(50)
myItem:SetY(80)
Vector2 vector
vector:Set(25, -20)
myItem:Move(vector)

Move(number xAmount, number yAmount)

This action will increase the x and y coordinates of this Item by the given amounts.

Parameters

  • number xAmount
  • number yAmount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetX(50)
myItem:SetY(80)
myItem:Move(25, -20)

MoveX(number xAmount)

This action will increase the x-coordinate of this Item by the given amount.

Parameters

  • number xAmount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetX(50)
myItem:MoveX(25)

MoveY(number yAmount)

This action will increase the y-coordinate of this Item by the given amount.

Parameters

  • number yAmount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetY(50)
myItem:MoveY(25)

MoveZ(number zAmount)

This action will increase the z-coordinate of this Item by the given amount.

Parameters

  • number zAmount

Example

use Libraries.Interface.Item@D

Item2D myItem
myItem:SetZ(5)
myItem:MoveZ(2)

NeedsLayout()

This action returns whether or not the Control is in need of laying out by its container (or the parent Layer2D, if no container Control exists).

Return

boolean:

NotifyControlActivationListeners(Libraries.Interface.Events.ControlActivationEvent event)

This action adds a different Item2D into this one, storing the added Item2D at a specific index in the internal array.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)

NotifySelectionListeners(Libraries.Interface.Events.SelectionEvent event)

This action will notify all SelectionListeners which have been added to the Control of the given SelectionEvent.

Parameters

OnTextureLoad(Libraries.Interface.Events.TextureLoadEvent event)

This action removes all TextureLoadListeners that have been added to the texture.

Parameters

PrepareVertices()

Checks to see if the Item2D's internal vertices are up to date, and updates them if they are not. This is used primarily internally to ensure that the item's vertices are properly aligned before use, e.g. to project an image on the screen at the coordinates of the vertices. Most users will never need to use this action directly.

ProcessGestureEvent(Libraries.Interface.Events.GestureEvent event)

This action takes a gesture event and handles it. It will first test to see if the gesture event took place within the bounds of this Item. If so, it will notify any GestureListeners of the event. If the event was not contained within this Item, or if there are no GestureListeners on this Item, the Item will ask its parent Item to process the event, if there is a parent.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Interface.Events.GestureEvent
use Libraries.Interface.Events.GestureListener
Item2D myItem
GestureListener listener
myItem:AddGestureListener(listener)
GestureEvent event
event:eventType = event:DOUBLE_TAP
myItem:ProcessGestureEvent(event)

ProcessMouseEvent(Libraries.Interface.Events.MouseEvent event)

This action takes a mouse event and handles it. It will first test to see if the mouse event took place within the bounds of this Item. If so, it will notify any MouseListeners of the event. If the event was not contained within this Item, or if there are no MouseListeners on this Item, the Item will ask its parent Item to process the mouse event, if there is a parent.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Interface.Events.MouseEvent
use Libraries.Interface.Events.MouseListener
Item2D myItem
MouseListener listener
myItem:AddMouseListener(listener)
MouseEvent event
event:eventType = event:CLICKED_MOUSE
myItem:ProcessMouseEvent(event)

ProcessTouchEvent(Libraries.Interface.Events.TouchEvent event)

This action takes a touch event and handles it. It will first test to see if the touch event took place within the bounds of this Item. If so, it will notify any TouchListeners of the event. If the event was not contained within this Item, or if there are no TouchListeners on this Item, the Item will ask its parent Item to process the touch event, if there is a parent.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Interface.Events.TouchEvent
use Libraries.Interface.Events.TouchListener
Item2D myItem
TouchListener listener
myItem:AddTouchListener(listener)
TouchEvent event
event:eventType = event:BEGAN
myItem:ProcessTouchEvent(event)

QueueForDrawing(Libraries.Game.Graphics.Painter2D painter)

The QueueForDrawing action is what makes a Drawable appear on the screen. This action will automatically be called by the Game class if the Drawable has been added to the Game with the Add(Item) action.

Parameters

ReleasedMouse()

This action is used when a control is released by the mouse.

Remove(integer index)

This action removes an Item2D at a specifed index from the internal array.

Parameters

  • integer index

Return

Libraries.Interface.Item2D:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)
parentItem:Remove(0)

Remove(Libraries.Interface.Item2D item)

This action removes an Item2D from the internal array.

Parameters

Return

boolean:

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)
parentItem:Remove(child)

RemoveControlActivationListener(Libraries.Interface.Events.ControlActivationListener listener)

This action removes an Item2D from the internal array.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(0, child)
parentItem:Remove(child)

RemoveFocusListener(Libraries.Interface.Events.FocusListener listener)

This action removes a FocusListener from the Item. The listener will no longer receive notification if the Item gets a FocusEvent.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.FocusListener
Item myItem
FocusListener listener
myItem:AddFocusListener(listener)
myItem:RemoveFocusListener(listener)

RemoveGestureListener(Libraries.Interface.Events.GestureListener listener)

This action removes a GestureListener from the Item. The listener will no longer receive notification if the Item gets a GestureEvent.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.GestureListener
Item myItem
GestureListener listener
myItem:AddGestureListener(listener)
myItem:RemoveGestureListener(listener)

RemoveLayoutProperties(Libraries.Interface.Layouts.LayoutProperties properties)

Returns true if rendering the mouse over event.

Parameters

RemoveMouseListener(Libraries.Interface.Events.MouseListener listener)

This action removes a MouseListener from the Item. The listener will no longer receive notification if the Item gets a mouse click event.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseListener
Item myItem
MouseListener listener
myItem:AddMouseListener(listener)
myItem:RemoveMouseListener(listener)

RemoveMouseMovementListener(Libraries.Interface.Events.MouseMovementListener listener)

This action removes a MouseMovementListener from the Item. The listener will no longer receive notification if the Item gets a mouse movement event.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseMovementListener
Item myItem
MouseMovementListener listener
myItem:AddMouseMovementListener(listener)
myItem:RemoveMouseMovementListener(listener)

RemoveMouseWheelListener(Libraries.Interface.Events.MouseWheelListener listener)

This action removes a MouseWheelListener from the Item. The listener will no longer receive notification if the Item gets a mouse wheel event.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.MouseWheelListener
Item myItem
MouseWheelListener listener
myItem:AddMouseWheelListener(listener)
myItem:RemoveMouseWheelListener(listener)

RemoveSelectionListener(Libraries.Interface.Events.SelectionListener listener)

This action removes the given SelectionListeners from the Control.

Parameters

Return

boolean: true if the selectionListener is removed.

RemoveTextureLoadListener(Libraries.Interface.Events.TextureLoadListener listener)

This action removes a TextureLoadListener from the texture. If the listener was not previously added to this texture, this does nothing.

Parameters

RemoveTouchListener(Libraries.Interface.Events.TouchListener listener)

This action removes a TouchListener from the Item. The listener will no longer receive notification if the Item gets a TouchEvent.

Parameters

Example

use Libraries.Interface.Item
use Libraries.Interface.Events.TouchListener
Item myItem
TouchListener listener
myItem:AddTouchListener(listener)
myItem:RemoveTouchListener(listener)

RequestLayout()

This action requests that this Control should be laid out by its container (or the Layer2D if there is no containing Control) during the next Update.

RequestReloadGraphics()

This action requests that this Control (as well as all of its descendents) should reload their graphics during the next Update.

RequestVerticesUpdate()

This action informs the engine that this Item needs to recalculate its vertex values before they can be used (most commonly, to be drawn to the screen). Most users will never need to call this directly. If you are using a custom ShaderProgram with this Item, you can use this action to indicate that the shader mapping should reset the vertex values for this Item before its drawn again.

RequireSimulation(boolean flag)

This action sets the y-component of this item's linear velocity in units per second. Physics must be enabled on this item before using this action.

Parameters

  • boolean flag

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetLinearVelocityY(100)

ResetLayoutFlag()

This action is used to indicate that the Control no longer needs to be laid out. This is called internally by the system as needed, and shouldn't be necessary for most users.

ResetMass()

This action sets the mass, mass moment of inertia, and how the 2D item should move (via linear velocity) to be at the desired location.

Resize()

The Resize action is used to recalculate the size and position of Controls that are being controlled by a Layout. Calling Resize on an Item2D won't have a direct effect on it, but if the Item's children hierarchy contains any Controls, those Controls will be resized.

Rotate(number degrees)

Rotates this Item2D by the given number of degrees. This will also rotate all Items in the children hierarchy of this Item.

Parameters

  • number degrees

Example

use Libraries.Interface.Item

Item myItem
myItem:Rotate(65)

Scale(number amount)

This action will multiply the current scaling value by the given number. A parameter of 0 or less will be ignored.

Parameters

  • number amount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.5)
myItem:Scale(1.1)

Scale(number xAmount, number yAmount)

This action will multiply the x scaling and y scaling values, respectively, by the given numbers. A parameter of 0 or less will be ignored.

Parameters

  • number xAmount
  • number yAmount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.5)
myItem:Scale(1.1, 0.9)

ScaleFromCenter(number amount)

This action will multiply the current scaling value by the given number. A parameter of 0 or less will be ignored. This action will increase or decrease the scale of the object from the center, and update the Item's x,y coordinates to reflect the new bottom-left corner of the Item.

Parameters

  • number amount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.5)
myItem:ScaleFromCenter(1.1)

ScaleFromCenter(number xAmount, number yAmount)

This action will multiply the current scaling values of the x and y planes by the given number. A parameter of 0 or less will be ignored. This action will increase or decrease the scale of the object from the center, and update the Item's x,y coordinates to reflect the new bottom-left corner of the Item.

Parameters

  • number xAmount
  • number yAmount

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.5)
myItem:ScaleFromCenter(1.1, 0.9)

SelectByFirstLetters(text firstLetter)

This action selects an item in the Control using first letter navigation, if the Control supports it. If the Control doesn't support first letter navigation, this will do nothing.

Parameters

  • text firstLetter

SetAccentColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the accent color on the control.

Parameters

SetAcceptsMouseInput(boolean accepts)

This action sets whether or not this Item accepts mouse input. If set to true, this will intercept incoming mouse events, triggering any related MouseListeners and InputSets and preventing the mouse event from propagating to other Items on the Layer. The default value is true.

Parameters

  • boolean accepts: True to set this Item to receive mouse events, or false to ignore them.

SetAccessibilityCode(integer newAccessibilityCode)

This action changes the accessibility code for this Item. This should be done with care because setting the accessiblity code to the incorrect type can cause accessibility to stop functioning or, in some cases, cause the program to crash.

Parameters

  • integer newAccessibilityCode: the new accessibility code for this Item.

SetAccessibilityRoleDescription(text newRoleDescription)

This action sets a custom accessibility role description for this item. This should only be done if there is not a standard accessibility code for the type of item being implemented. If the item behaves very similarly to a standard control type, then set the accessibility code to that standard type while also setting the role description. For example, if implementing an item that extends Control, is keyboard focusable, and responds to activation via both mouse clicks and the Space key, like a button, but it shouldn't be described as a button, then set the accessibility code to BUTTON and the custom role description to whatever is appropriate. If there isn't a suitable accessibility code, or if in doubt, set the accessibility code to CUSTOM.

Parameters

  • text newRoleDescription: the new custom role description for this Item.

SetAlpha(number alpha)

Sets the alpha of the Drawable. The alpha represents how transparent the Drawable is. The given value should be between 0 and 1, where a value of 0 is totally transparent, and a value of 1 is totally opaque.

Parameters

  • number alpha

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game

    Drawable circle

    action Main
        StartGame()
    end

    action CreateGame
        circle:LoadFilledCircle(50)
        circle:SetAlpha(0.5)
        circle:SetPosition(50, 100)
        Add(circle)
    end
end

SetAngularDamping(number angularDamping)

This action gets the rotational inertia of this item. The inertia is in kilogram units squared.

Parameters

  • number angularDamping

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number inertia = item:GetInertia()

SetAngularVelocity(number angularVelocity)

This action sets this item's angular velocity in radians per second. Physics must be enabled in this item before using this action.

Parameters

  • number angularVelocity: The angular velocity of this item in radians per second

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetAngularVelocity(0.1)

SetAnnotation(Libraries.Interface.Controls.Charts.ChartLabel annotation)

Annotation is a control label that can be shown appended to this drawable It can show things like a name, value, equation or custom text.

Parameters

SetAnnotationLocationToBottom()

Set the location of the annotation to the bottom of the chart drawable.

SetAnnotationLocationToLeft()

Set the location of the annotation to the left of the chart drawable.

SetAnnotationLocationToRight()

Set the location of the annotation to the right of the chart drawable.

SetAnnotationLocationToTop()

Set the location of the annotation to the top of the chart drawable.

SetBackgroundColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the background color in the Control.

Parameters

SetBorderColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the border color of the control.

Parameters

SetBorderStyle(integer style)

This action sets the border style either, LayoutProperties.TOP, LayoutProperties.BOTTOM, LayoutProperties.LEFT, LayoutProperties.RIGHT, and LayoutProperties.ALL.

Parameters

  • integer style

SetBorderThickness(number value)

This action sets the border thickness on the control.

Parameters

  • number value: the border thickness.

SetBottomLeftPixelRounding(number value)

This action sets the bottom left pixel rounding value.

Parameters

  • number value: the bottom left pixel rounding value.

SetBottomLeftRounding(number value)

This action sets the bottom left rounding value.

Parameters

  • number value: the bottom left rounding value.

SetBottomMargin(number padding)

This action sets the bottom margin size. The bottom margin is the space outside of the bottom border.

Parameters

  • number padding: the amount of bottom margin.

SetBottomPadding(number padding)

This action sets the bottom padding size. The bottom padding is the space inside of the bottom border.

Parameters

  • number padding: the amount of bottom margin.

SetBottomRightPixelRounding(number value)

This action sets the bottom right pixel rounding value.

Parameters

  • number value: the bottom right pixel rounding value.

SetBottomRightRounding(number value)

This action sets the bottom right rounding value.

Parameters

  • number value: the bottom right rounding value.

SetBottomSide(number bottom)

This action selects a point on the loaded texture that this Drawable will consider to be the bottom edge of the image to be drawn. 0 represents the bottom edge of the base texture, and 1 represents the top edge of the base texture.

Parameters

  • number bottom

SetBoundingBox(number newX, number newY, number newWidth, number newHeight)

This action will set the x coordinate, y coordinate, width, and height of the Item2D, respectively.

Parameters

  • number newX
  • number newY
  • number newWidth
  • number newHeight

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetBoundingBox(50, 200, 100, 75)

SetCenter(number setX, number setY)

This action will set the X and Y coordinates of the Item so that the center of the Item is located at the given X, Y coordinates.

Parameters

  • number setX
  • number setY

Example

use Libraries.Interface.Item
Item myItem
myItem:SetCenter(70, 40)

SetCenterX(number setX)

This action will set the X coordinate of the Item so that the center of the Item is aligned with the given X coordinate value.

Parameters

  • number setX

Example

use Libraries.Interface.Item
Item myItem
myItem:SetCenterX(70)

SetCenterY(number setY)

This action will set the Y coordinate of the Item so that the center of the Item is aligned with the given Y coordinate value.

Parameters

  • number setY

Example

use Libraries.Interface.Item
Item myItem
myItem:SetCenterY(65)

SetChartArea(Libraries.Interface.Controls.Charts.ChartAreaPanel chartArea)

A link to the parent chart area of this drawable.

Parameters

SetChildrenProcessingMouseEvents(boolean shouldProcess)

The SetChildrenProcessingMouseEvents action is used to set whether or not children items should receive mouse events if this Item is using custom drawing. This affects only custom drawing Items -- if the Item isn't drawing, children objects will always receive the mouse events first. This value is false by default. This is an advanced feature only necessary for complex custom components, and most users will not need to use this.

Parameters

  • boolean shouldProcess

SetClipCoordinates(Libraries.Game.Graphics.Painter2D painter)

This action sets the clipping coordinates of the given painter to respect the coordinates of this Item (if it's clipping) as well as any clipping being performed by parent Items. This action is called automatically by the Game engine as necessary, and most users will never need to use this action directly.

Parameters

SetClipping(boolean clip)

The SetClipping action is used to enable or disable clipping. If it is enabled, when the Item and its children are drawn as part of the QueueForDrawing action, any pixels that would be drawn outside of the unrotated dimensions of the Item are not rendered. In other words, the Item will only draw inside the exact rectangle formed by its x, y position and its width and height.

Parameters

  • boolean clip: True to enable pixel clipping, false to disable.

SetCollidable(boolean flag)

This action sets this item to be collidable. Passing true turns on collision for this item while passing false turns off collision for this item.

Parameters

  • boolean flag: Whether or not to turn collision on for this item

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:SetCollidable(true)

SetCollideWithChildren(boolean flag)

This action gets the position of the item in physics space from the previous frame. This action is used internally and users should not need to use this action

Parameters

  • boolean flag

SetCollisionGroupFlag(boolean flag)

This action sets the total torque on this item. The units are kilogram units squared per second per second. This action should be used to set the total torque on this item. If we want to apply a torque to this item, we should use the ApplyTorque actions instead. Physics must be enabled on this action before using this action.

Parameters

  • boolean flag

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetTorque(200)

SetCollisionGroupIndex(integer index)

This action sets the total force on this item. The units are kilogram units per second per second. This action should be used to set the total force on this item. If we want to apply a force to this item, we should use the ApplyForce actions instead. Physics must be enabled on this item before using this action.

Parameters

  • integer index

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
force:Set(300, 350)
item:SetForce(force)

SetCollisionList(Libraries.Game.Collision.CollisionEdge2D edge)

This is an action used internally by the physics system to keep track of the collisions with this item in a linked list structure. This action sets the head of the linked list of collisions to the passed CollisionEdge2D object. This action is used internally and users should not need to use this action.

Parameters

SetColor(Libraries.Game.Graphics.ColorGroup tint)

Sets the color filter on this Drawable. This will reduce the intensity of colors in the Drawable that are not part of the filter, while leaving the other colors that are part of the filter as the same.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    Drawable circle
    Color red
    Color yellow

    action Main
        StartGame()
    end

    action CreateGame
        red:SetColor(1, 0, 0, 1)
        yellow:SetColor(1, 1, 0, 1)
        circle:LoadFilledCircle(50, yellow)
        circle:SetColor(red)
        circle:SetPosition(50, 100)
        Add(circle)
    end
end

SetColor(Libraries.Game.Graphics.Color color)

Manual Color is used to override the series coloring if the user wants to display a different color for only this item of the series/group.

Parameters

SetColor(number red, number green, number blue, number alpha)

Sets the color filter of the Drawable from the given components of red, green, blue, and alpha. The values for the components should be between 0 and 1, representing 0% to 100% of that color or alpha.

Parameters

  • number red
  • number green
  • number blue
  • number alpha

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    Drawable circle
    Color white

    action Main
        StartGame()
    end

    action CreateGame
        white:SetColor(1, 1, 1, 1)
        circle:LoadFilledCircle(50, white)
        circle:SetColor(0.5, 1, 0.25, 1)
        circle:SetPosition(50, 100)
        Add(circle)
    end
end

SetColorProperty(text property, Libraries.Game.Graphics.ColorGroup value)

This action sets the color and property in the Control.

Parameters

SetContainer(Libraries.Interface.Controls.Charts.Chart container)

SetContainerGridHeight(integer containerGridHeight)

This action sets how many rows this Control should be divided into when using a GridLayout. This will have no effect if this Control is not a container or if it is using a different layout. If this value is 0 or less, then the GridLayout will use its default grid height and ignore this value.

Parameters

  • integer containerGridHeight

SetContainerGridWidth(integer containerGridWidth)

This action sets how many columns this Control should be divided into when using a GridLayout. This will have no effect if this Control is not a container or if it is using a different layout. If this value is 0 or less, then the GridLayout will use its default grid width and ignore this value.

Parameters

  • integer containerGridWidth

SetCornerPixelRounding(number bottomLeft, number bottomRight, number topLeft, number topRight)

This action sets how much rounding to apply to the four corners of a rectangular control. This action takes the amount of rounding to apply as a number of pixels.

Parameters

  • number bottomLeft: The rounding value to be applied to the bottom left corner, in pixels.
  • number bottomRight: The rounding value to be applied to the bottom right corner, in pixels.
  • number topLeft: The rounding value to be applied to the top left corner, in pixels.
  • number topRight: The rounding value to be applied to the top right corner, in pixels.

SetCornerRounding(number bottomLeft, number bottomRight, number topLeft, number topRight)

This action sets how much rounding to apply to the four corners of a rectangular control. The expected values are between 0 and 1, where 0 indicates no rounding, and 1 indicates full rounding. (If all four corners are set to have full rounding, the result will appear to be a circle.)

Parameters

  • number bottomLeft: The rounding value to be applied to the bottom left corner (between 0 and 1).
  • number bottomRight: The rounding value to be applied to the bottom right corner (between 0 and 1).
  • number topLeft: The rounding value to be applied to the top left corner (between 0 and 1).
  • number topRight: The rounding value to be applied to the top right corner (between 0 and 1).

SetCustomColor(Libraries.Game.Graphics.Color color)

Manual Color is used to override the series coloring if the user wants to display a different color for only this item of the series/group.

Parameters

SetCustomDrawing(boolean isCustom)

The SetCustomDrawing action is used to indicate that this Item wants to directly manage how itself and its children are drawn. When this is set to true, the Item must be responsible for determining this rendering via the Draw(Painter2D) action -- if this action isn't overridden, the Item and its children won't be drawn. This is an advanced feature only necessary for complex custom components, and most users will not need to use this functionality.

Parameters

  • boolean isCustom: True if this Item should use custom drawing, or false to use default drawing rules.

SetDensity(number density)

This action applies an angular impulse to this item. The units are in kilogram units squared per second. This modifies the angular velocity of this item. Physics must be enabled on this item before using this action.

Parameters

  • number density

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:ApplyAngularImpulse(80)

SetDescription(text newDescription)

This action sets the internal description of the Item.

Parameters

  • text newDescription

Example

use Libraries.Interface.Item

Item item
item:SetDescription("Used for demo purposes.")

SetDisplayName(text info)

This action sets the display name of the chart item.

Parameters

  • text info

SetDownItem(Libraries.Interface.Controls.Charts.ChartItem downItem)

Sets the Item accessed "below" (via the DOWN arrow) this Item in the chart selection.

Parameters

SetDrawableShape(Libraries.Game.Graphics.DrawableShape shape)

This action will create a new Texture with a hollow black circle with the given radius. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Drawable circle
        circle:LoadCircle(75)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

SetDrawableType(integer type)

This action sets an integer code representing the type of graphics that's been loaded into this Drawable. The type values can be found in the SceneProperties class. This action is used internally by the engine as needed, and most users won't ever need to call this directly.

Parameters

  • integer type

SetEnterItem(Libraries.Interface.Controls.Charts.ChartItem enterItem)

Sets the Item accessed within (default: ENTER key) this Item in the chart selection.

Parameters

SetEscapeItem(Libraries.Interface.Controls.Charts.ChartItem escapeItem)

Sets the escape Item accessed from this Item in the chart selection (by default using the ESCAPE key).

Parameters

SetEscapeToLastItem(boolean escape)

This action enables or disables escape to last item functionality. If enabled, this object's Escape Item will be the last ChartItem that accessed this Item via the Enter key. That means that if this is enabled, the escape item will be dynamically adjusted, instead of a static value.

Parameters

  • boolean escape

SetFlipX(boolean flip)

This action will set the Item2D to be flipped across the X-axis according to the boolean. If the boolean value is false, the Item2D will be set to its unflipped state. If it is true, the Item will be set to its flipped state.

Parameters

  • boolean flip

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetFlipX(true)

SetFlipY(boolean flip)

This action will set the Item2D to be flipped across the Y-axis according to the boolean. If the boolean value is false, the Item2D will be set to its unflipped state. If it is true, the Item will be set to its flipped state.

Parameters

  • boolean flip

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetFlipY(true)

SetFocusBorderColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the focus border color.

Parameters

SetFocusColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the focus color.

Parameters

SetFocusFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets focus font color.

Parameters

SetFocusable(boolean focus)

The SetFocusable action sets whether or not this Item should be focusable. If the Item is currently focused and made unfocusable, then it will lose focus, and there will be no focused element.

Parameters

  • boolean focus

SetFont(Libraries.Game.Graphics.Font font)

This action sets the Font to be used by this Control. How this Font is used varies between Controls, and in some cases the Control will ignore it entirely (for example, ScrollPanes), but typically this sets the font that's used for the default label on many Controls, such as Buttons. If the Font is undefined, many Controls will omit their default label.

Parameters

SetFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the font color of the font contained in the Control.

Parameters

SetFontOutlineColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the font outline color value.

Parameters

SetFontOutlineThickness(number value)

This action sets the font outline thickness value.

Parameters

  • number value: the font outline thickness value.

SetFontSize(integer size)

This action sets the base Font size to be used by this Control, if the Control uses a Font.

Parameters

  • integer size

SetForce(Libraries.Compute.Vector2 force)

This action sets the total force on this item. The units are kilogram units per second per second. This action should be used to set the total force on this item. If we want to apply a force to this item, we should use the ApplyForce actions instead. Physics must be enabled on this item before using this action.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 force

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
force:Set(300, 350)
item:SetForce(force)

SetForegroundColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the foreground color in the Control.

Parameters

SetForegroundSelectionColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the foreground selection color in the Control.

Parameters

SetFriction(number friction)

This action applies a torque to this item. The units are kilogram units squared per second per second. Physics must be enabled on this item before using this action.

Parameters

  • number friction

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:ApplyTorque(350)

SetGlowColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the glow color on the control.

Parameters

SetGridHeight(integer gridHeight)

The SetGridHeight action sets how many cells in a column this Control occupies. By default, this value is 1. This value is only used for GridLayouts, and is ignored by other layouts.

Parameters

  • integer gridHeight

SetGridPosition(integer gridX, integer gridY)

This action sets this Control's cell coordinates within a GridLayout. This indicates which column and row this Control is located within. If the Control's parent container isn't using a GridLayout, these values are ignored.

Parameters

  • integer gridX
  • integer gridY

SetGridSize(integer gridWidth, integer gridHeight)

The SetGridSize action sets how many cells wide and tall this Control is within a grid. By default, each of these values are 1. These values are only used for GridLayouts, and are ignored by other layouts.

Parameters

  • integer gridWidth
  • integer gridHeight

SetGridWidth(integer gridWidth)

The SetGridWidth action sets how many cells in a row this Control occupies. By default, this value is 1. This value is only used for GridLayouts, and is ignored by other layouts.

Parameters

  • integer gridWidth

SetGridX(integer gridX)

This action sets this Control's cell x-coordinate within a GridLayout. This indicates which column this Control is located within. If the Control's parent container isn't using a GridLayout, this value is ignored.

Parameters

  • integer gridX

SetGridY(integer gridY)

This action sets this Control's cell y-coordinate within a GridLayout. This indicates which row this Control is located within. If the Control's parent container isn't using a GridLayout, this value is ignored.

Parameters

  • integer gridY

SetGroup(Libraries.Interface.Controls.Charts.GroupPanel group)

The group is the label on the chart associated with this drawable. In most cases the groups are created by unique factors. GroupPanel is used to position, locate, and name the drawable on the chart.

Parameters

SetHasMoved(boolean flag)

This action returns the swept movement of this item used for time of impact solving for the physics system. This action is used internally and users should not need to call this action.

Parameters

  • boolean flag

SetHeight(number newHeight)

This action will set the height of the Item2D.

Parameters

  • number newHeight

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetHeight(70)

SetHorizontalLayoutMode(integer mode)

The SetHorizontalLayoutMode is used to determine how the width of a Control is calculated. It should be one of the following constants: STANDARD, which will calculate the width as a set number of pixels plus a percentage of the container's width. FILL, which will make the width fill the remaining width of the container. FIT_CONTENTS, which will calculate the width to fit the children contents.

Parameters

  • integer mode: A layout mode constant, one of STANDARD, FILL, or FILL_CONTENTS.

SetIcon(Libraries.Game.Graphics.TextureRegion icon)

This action sets the Icon used by this Control. Different Controls use this Icon differently, depending on their purpose.

Parameters

SetIconColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the Icon color on the control.

Parameters

SetIndicesCount(integer indicesCount)

This action is used internally by the rendering system to set how many indices a Drawable uses in a Mesh. Most users will never need to call this action directly.

Parameters

  • integer indicesCount

SetInputGroup(text group)

This action sets the input group for this Item. When used with the Game libraries, this tag describes what InputTable (if any) can interact with this Item due to input.

Parameters

  • text group: The new input group to use.

Example

use Libraries.Interface.Item

Item item
item:SetInputGroup("arrowKeys")
output "My item's input group is : " + item:GetInputGroup()

SetInterfaceOptionsKey(text key)

This action returns the base Font size to be used by this Control, if the Control uses a Font.

Parameters

  • text key

SetInterfaceScale(number scale)

This action sets the interface scale for the control.

Parameters

  • number scale: a number between 0 and 1 that scales the control.

SetItem(integer index, Libraries.Interface.Item2D newItem)

This action sets a value inside the internal item array of this Item2D.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child1
Item2D child2
parentItem:Add(child1)
parentItem:SetItem(0, child2)

SetJointList(Libraries.Game.Physics.Joints.JointEdge2D edge)

This is an action used internally by the physics system to keep track of the joints connected to this item in a linked list structure. This action sets the head of the linked list of collisions to the passed CollisionEdge2D object. This action is used internally and users should not need to use this action.

Parameters

SetLabelText(text labelText)

This action sets the text in this Control's label, if it has one.

Parameters

  • text labelText: The text to use for this Control's label.

SetLayer(Libraries.Game.Layer2D parentLayer)

This action is used by the Game libraries to create a reference to the layer that this Item2D exists on. It is automatically called as needed by the Layer2Dclass. Most users will never need to use this action directly.

Parameters

SetLayout(Libraries.Interface.Layouts.Layout layout)

This action adds a different Item2D into this one. This makes a few things happen. 1. The added item will get this item as its parent. 2. The added item's x and y coordinates will become relative to this Item. 3. Most actions on this Item will also affect the added Item.

Parameters

Example

use Libraries.Interface.Item2D

Item2D parentItem
Item2D child
parentItem:Add(child)

SetLayoutRows(number layoutRows)

This action sets how many rows this element should occupy, if the layout supports it. This effectively makes the control taller. This is most commonly used in conjunction with FormRowLayout (or StackedRowPage which uses that layout).

Parameters

  • number layoutRows

SetLeftItem(Libraries.Interface.Controls.Charts.ChartItem leftItem)

Sets the Item accessed to the left of this Item in the chart selection.

Parameters

SetLeftMargin(number padding)

This action sets the left margin size. The left margin is the space outside of the left border.

Parameters

  • number padding: the amount of left margin.

SetLeftPadding(number padding)

This action sets the left padding size. The left padding is the space inside of the left border.

Parameters

  • number padding: the amount of left margin.

SetLeftSide(number left)

This action selects a point on the loaded texture that this Drawable will consider to be the left edge of the image to be drawn. 0 represents the left edge of the base texture, and 1 represents the right edge of the base texture.

Parameters

  • number left

SetLinearDamping(number linearDamping)

Given a point relative to the center of this item, this action computes and returns that point in screen coordinates.

Parameters

  • number linearDamping

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 localPoint

item:SetWidth(100)
item:SetHeight(100)
item:SetPosition(400, 250)

localPoint:Set(0, 0)    // Get the coordinates of the center of the item

Vector2 worldPoint = item:GetWorldPoint(localPoint)

SetLinearVelocity(Libraries.Compute.Vector2 linearVelocity)

This action sets the linear velocity of this item in units per second. Physics must be enabled on this item before using this action.

Parameters

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 velocity

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
velocity:Set(100, 0)
item:SetLinearVelocity(velocity)

SetLinearVelocityX(number linearVelocityX)

This action sets the x-component of this item's linear velocity in units per second. Physics must be enabled on this item before using this action.

Parameters

  • number linearVelocityX: The x-component of this item's linear velocity in units per second

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetLinearVelocityX(100)

SetLinearVelocityY(number linearVelocityY)

This action sets the y-component of this item's linear velocity in units per second. Physics must be enabled on this item before using this action.

Parameters

  • number linearVelocityY: The y-component of this item's linear velocity in units per second

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetLinearVelocityY(100)

SetMass(number mass)

This action is used to syncronize the item's position in physics space with its position in the tree used for broadphase collision. This action is used internally and users should not need to use this action.

Parameters

  • number mass

SetMass(Libraries.Game.Physics.Mass2D mass)

This action sets the position of the item in physics space from the previous frame. This action is used internally and users should not need to use this action.

Parameters

SetMesh(Libraries.Game.Graphics.Mesh mesh)

This action will create a new Texture with a hollow circle of the given color with the given radius. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color red
        red:SetColor(1, 0, 0, 1)
        Drawable circle
        circle:LoadCircle(75, red)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

SetMeshIndex(integer meshIndex)

This action is used internally by the rendering system to set what index a Drawable starts at in a Mesh. Most users will never need to call this action directly.

Parameters

  • integer meshIndex

SetMouseDownColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse down color.

Parameters

SetMouseDownFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse down font color.

Parameters

SetMouseDownGlowColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse down glow color.

Parameters

SetMouseOverColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse over color.

Parameters

SetMouseOverFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse over font color.

Parameters

SetMouseOverGlowColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the mouse over glow color.

Parameters

SetName(text newName)

This action sets the internal name of the Item.

Parameters

  • text newName

Example

use Libraries.Interface.Item

Item item
item:SetName("My Item")

SetNextFocus(Libraries.Interface.Item next)

This action sets the next focus item. When this Item has the focus and the user requests the focus to advance (e.g. by pressing the tab key), the focus will move to the next focus item, if it is defined.

Parameters

SetNonResponsive()

This action returns all of the broadphase nodes attached to this item in an array. This action is used internally and users should not need to use this action.

SetNumberProperty(text property, number value)

This action sets a generic property with a specified name and number value.

Parameters

  • text property: the property name.
  • number value: the number value for the generic property.

SetOffset(number xAmount, number yAmount, number zAmount)

This action will set X, Y, and Z offsets of the item, respectively.

Parameters

  • number xAmount
  • number yAmount
  • number zAmount

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffset(100, 75, 2)

SetOffset(number xAmount, number yAmount)

This action will set both the X and Y offsets of the item, respectively.

Parameters

  • number xAmount
  • number yAmount

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffset(100, 75)

SetOffsetX(number xAmount)

This action sets the X offset of the Item. The offset tells the Item where to relate its X position to. In other words, the X offset is where an X coordinate of 0 is for this Item. This is automatically set when using an action to add an Item to another Item.

Parameters

  • number xAmount

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetX(100)

SetOffsetY(number yAmount)

This action sets the Y offset of the item. The offset tells the Item where to relate its Y position to. In other words, the Y offset is where a Y coordinate of 0 is for this item. This is automatically set when using an action to add an Item to another Item.

Parameters

  • number yAmount

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetY(75)

SetOffsetZ(number zAmount)

This action sets the Z offset of the item. The offset tells the Item where to relate its Z position to. In other words, the Z offset is where a Z coordinate of 0 is for this item. This is automatically set when using an action to add an Item to another Item.

Parameters

  • number zAmount

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetOffsetZ(75)

SetOrigin(number setX, number setY)

This action will set the origin of the Item to be at the given location in the Item. This is used when projecting the Item's vertices onto the screen, i.e. when determining where to draw a picture on the screen.

Parameters

  • number setX
  • number setY

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetOrigin(20, 20)

SetOriginCenter()

This action will set the origin of the Item to be at the current center of the Item's width and height bounds.

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(50, 80)
myItem:SetOriginCenter()

SetParent(Libraries.Interface.Item2D newItem)

This action sets a reference to the parent item. It is called automatically when an Item2D is added as a child to another Item2D. Most users will not need to use this action directly.

Parameters

SetPassThroughSelection(boolean passThroughSelection)

If pass through selection is enabled, attempting to enter or escape into this item will instead try to pass the selection through to the following enter/escape item.

Parameters

  • boolean passThroughSelection

SetPattern(integer pattern)

This action gets the selection arrow verticies (Array) drawable object.

Parameters

  • integer pattern

SetPatternToDiagonalCrosshatch()

SetPatternToDiagonalDownLines()

SetPatternToDiagonalUpLines()

SetPatternToHollowBoxes()

SetPatternToHollowCircles()

SetPatternToHollowTriangles()

SetPatternToHorizontalLines()

SetPatternToPinpointDashes()

SetPatternToPlainCrosshatch()

SetPatternToSolidBoxes()

SetPatternToSolidCircles()

SetPatternToSolidTriangles()

SetPatternToVerticalLines()

Color the item as gray in case it never gets added to a series.

SetPercentageHeight(number height)

This action sets the height of the Control relative to the size of its container, if the container's Layout supports it.

Parameters

  • number height: The target height as a percentage (as a value between 0.0 and 1.0) of the container's height.

SetPercentageOriginX(number x)

This action sets the x-coordinate of the "origin" of the Control, as a percentage of its width. The origin is the point that the Control is positioned by. For example, by default, the origin is at 0% x and 0% y, or the bottom-left corner of the Control. Changing the percentage origin x and y to 0.5 (50%) would mean the Control should be positioned using its center instead. The origin point is used by layouts that allow for specific positioning, such as ManualLayout or GridLayout. It is ignored by layouts that have special positioning rules, such as FlowLayout.

Parameters

  • number x

SetPercentageOriginY(number y)

This action sets the y-coordinate of the "origin" of the Control, as a percentage of its width. The origin is the point that the Control is positioned by. For example, by default, the origin is at 0% x and 0% y, or the bottom-left corner of the Control. Changing the percentage origin x and y to 0.5 (50%) would mean the Control should be positioned using its center instead. The origin point is used by layouts that allow for specific positioning, such as ManualLayout or GridLayout. It is ignored by layouts that have special positioning rules, such as FlowLayout.

Parameters

  • number y

SetPercentageWidth(number width)

This action sets the width of the Control relative to the size of its container, if the container's Layout supports it.

Parameters

  • number width: The target width as a percentage (as a value between 0.0 and 1.0) of the container's width.

SetPercentageX(number x)

This action sets the x position of the Control relative to the size of its container, if the container's Layout supports it.

Parameters

  • number x: The target x position as a percentage (as a value between 0.0 and 1.0) of the container's width.

SetPercentageY(number y)

This action sets the y position of the Control relative to the size of its container, if the container's Layout supports it.

Parameters

  • number y: The target y position as a percentage (as a value between 0.0 and 1.0) of the container's width.

SetPhysicsProperties(Libraries.Game.Physics.PhysicsProperties2D properties)

This action is used to get the bounding box of the item. A bounding box is an axis-alligned rectangle containing the shape used for broadphase collision. This action is used internally and users should not need to use this action.

Parameters

SetPixelHeight(number height)

This action sets the height of the Control in pixels, if the container's Layout supports it. If the Control has also been set to use a percentage of the container's height to set the height, then the two values will be added together.

Parameters

  • number height: The target height of this Control in pixels.

SetPixelWidth(number width)

This action sets the width of the Control in pixels, if the container's Layout supports it. If the Control has also been set to use a percentage of the container's width to set the width, then the two values will be added together.

Parameters

  • number width

SetPixelX(number x)

This action sets the x position of the Control in pixels, if the container's Layout supports it. If the Control has also been set to use a percentage of the container's width to set the x position, then the two values will be added together.

Parameters

  • number x: The target x position of this Control in pixels.

SetPixelY(number y)

This action sets the y position of the Control in pixels, if the container's Layout supports it. If the Control has also been set to use a percentage of the container's height to set the y position, then the two values will be added together.

Parameters

  • number y: The target y position of this Control in pixels.

SetPopupMenu(Libraries.Interface.Controls.PopupMenu menu)

The SetPopupMenu action attaches a PopupMenu to this Control, which can be opened by interacting with it (most commonly by right-clicking on the Control).

Parameters

SetPosition(number setX, number setY)

This action will set both the X coordinate and the Y coordinate of the Item, in that order.

Parameters

  • number setX
  • number setY

Example

use Libraries.Interface.Item
Item myItem
myItem:SetPosition(30, 70)

SetPosition(number setX, number setY, number setZ)

This action will set both the X and Y coordinates of this Item2D, and will additionally set the Z value of this Item2D.

Parameters

  • number setX
  • number setY
  • number setZ

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetPosition(30, 70, 3)

SetPreviousFocus(Libraries.Interface.Item previous)

This action sets the previous focus item. When this Item has the focus and the user requests the focus to move backwards (e.g. by pressing shift & tab), the focus will move to the previous focus item, if it is defined.

Parameters

SetProperty(text key, Libraries.Data.Formats.JavaScriptObjectNotation value)

SetRegion(Libraries.Game.Graphics.TextureRegion region)

Sets the region of this TextureRegion to be the same as the region of a different TextureRegion.

Parameters

SetRegion(number left, number top, number right, number bottom)

This action selects the portion of the loaded texture to use when drawing. The four parameters represent the left, top, right, and bottom sides of the texture, respectively. For the left and right parameters, 0 represents the left of the base texture, and 1 represents the right of the base texture. For the top and bottom parameters, 0 represents the bottom, and 1 represents the top.

Parameters

  • number left
  • number top
  • number right
  • number bottom

SetRegion(integer x, integer y, integer width, integer height)

Sets the region of this TextureRegion to start at the given x,y coordinates and go to the given width and height.

Parameters

  • integer x
  • integer y
  • integer width
  • integer height

SetRegion(Libraries.Game.Graphics.TextureRegion region, integer x, integer y, integer width, integer height)

Sets the region of this TextureRegion to begin at the start of the given TextureRegion's plus an offset by the given x,y values, and stretching to the given width and height.

Parameters

SetRegionHeight(integer height)

This action sets the height of the region.

Parameters

  • integer height

SetRegionWidth(integer width)

This action sets the width of the TextureRegion.

Parameters

  • integer width

SetRegionX(integer x)

This action sets the x coordinate where the region begins on the Texture.

Parameters

  • integer x

SetRegionY(integer y)

This action sets the y coordinate where the region begins on the Texture.

Parameters

  • integer y

SetResponsive()

This action determines whether this item is collidable.

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:SetCollidable(true)
boolean result = circle:IsCollidable

SetResponsiveness(integer type)

This action returns the mass of the item in kilograms. Physics must be enabled on this item before using this action. If the item is non-responsive or unmovable, the mass is zero.

Parameters

  • integer type

Example

use Libraries.Interface.Item2D

Item2D item
item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetMass(20)
number mass = item:GetMass()

SetRestitution(number restitution)

This action applies a force to this item at the passed point. The force is in kilogram units per second per second. The point is the screen coordinates where the point will be applied. If the point is not on the center of the item, then a torque will be introduced causing the item to rotate. Physics must be enabled on this item before using this action.

Parameters

  • number restitution

Example

use Libraries.Compute.Vector2
use Libraries.Interface.Item2D

Item2D item
Vector2 force
Vector2 point

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)

force:Set(300, 350)
point:Set(100, 100)    // apply the force to the top right corner of the item

item:ApplyForce(force, point)

SetRightItem(Libraries.Interface.Controls.Charts.ChartItem rightItem)

Sets the Item accessed to the right of this Item in the chart selection.

Parameters

SetRightMargin(number padding)

This action sets the right margin size. The right margin is the space outside of the right border.

Parameters

  • number padding: the amount of right margin.

SetRightPadding(number padding)

This action sets the right padding size. The right padding is the space inside of the right border.

Parameters

  • number padding: the amount of right margin.

SetRightSide(number right)

This action selects a point on the loaded texture that this Drawable will consider to be the right edge of the image to be drawn. 0 represents the left edge of the base texture, and 1 represents the right edge of the base texture.

Parameters

  • number right

SetRotation(number degrees)

Sets this Item2D to be rotated to an angle of the given number of degrees. This will also rotate all Items in the children hierarchy of this Item.

Parameters

  • number degrees

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetRotation(90)

SetScale(number scale)

This action sets the scale of this Item2D, causing the vertices of the item to be calculated based on a scaled percentage of the width and height. The default scaling values are 1.0, or 100% of the Item's width and height.

Parameters

  • number scale

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.25)

SetScale(number newX, number newY)

This action sets separate scaling values for the x and y planes on this Item2D. This will cause the vertices of this Item to be calculated based on a scaled percentage of the width and height. The default scaling values are 1.0, or 100% of the Item's width and height.

Parameters

  • number newX
  • number newY

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScale(1.5, 0.75)

SetScaleFromCenter(number scale)

This action sets the scale of this Item2D, causing the vertices of the item to be calculated based on a scaled percentage of the width and height. The default scaling values are 1.0, or 100% of the Item's width and height. This action will increase or decrease the scale of the object from the center, and update the Item's x,y coordinates to reflect the new bottom-left corner of the Item.

Parameters

  • number scale

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScaleFromCenter(1.25)

SetScaleFromCenter(number newX, number newY)

This action sets separate scaling values for the x and y planes on this Item2D. This will cause the vertices of this Item to be calculated based on a scaled percentage of the width and height. The default scaling values are 1.0, or 100% of the Item's width and height. This action will increase or decrease the scale of the object from the center, and update the Item's x,y coordinates to reflect the new bottom-left corner of the Item.

Parameters

  • number newX
  • number newY

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScaleFromCenter(1.5, 0.75)

SetScaleX(number scaleX)

This action sets the scaling value of the x plane on this Item2D. This will cause the vertices of this Item to be calculated based on a scaled percentage of the width. The default scaling values are 1.0, or 100% of the Item's width and height.

Parameters

  • number scaleX

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScaleX(1.5)

SetScaleY(number scaleY)

This action sets the scaling value of the y plane on this Item2D. This will cause the vertices of this Item to be calculated based on a scaled percentage of the height. The default scaling values are 1.0, or 100% of the Item's width and height.

Parameters

  • number scaleY

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 200)
myItem:SetScaleY(0.75)

SetScreenPositionFromPhysicsPosition()

This item returns the collision shape of this item. The collision shape is the shape the collision system will use to test for collisions with this item. Note that this may be different from the shape drawn on the screen.

Example

use Libraries.Game.Drawable
use Libraries.Game.Collision.Shapes.Circle

Drawable ball
ball:Load("ball.png")
Circle circle
circle:SetRadius(30)
ball:SetShape(circle)
CollisionShape2D shape = ball:GetShape()

SetSelectionArrowVertices(Libraries.Containers.Array<number> vertices)

This action sets the selection arrow verticies (Array) drawable object.

Parameters

SetSelectionBorderColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the selection border color.

Parameters

SetSelectionColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the selection color on the control.

Parameters

SetSelectionFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the selection font color on the control.

Parameters

SetSeries(Libraries.Interface.Controls.Charts.Series series)

The series is the entry in the legend associated with this drawable. Series is used to locate, name, and color the drawable unless manually colored.

Parameters

SetShaderData(Libraries.Language.Object shaderData)

This action will create a new Texture with a solid circle of the given color with the given radius. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color blue
        blue:SetColor(0, 0, 1, 1)
        Drawable circle
        circle:LoadFilledCircle(75, blue)
        circle:SetPosition(50, 50)
        Add(circle)
    end
end

SetShaderMapping(Libraries.Game.Graphics.Shaders.ShaderMapping shaderMapping)

This action will create a new Texture with a solid triangle of the given color that is made of the points identified by the three given points. The three points are relative to the origin of the Drawable. This texture is then loaded into the Drawable.

Parameters

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game
    
    action Main
        StartGame()
    end

    action CreateGame
        Color purple
        purple:SetColor(0.5, 0, 0.5, 1)
        Drawable triangle
        triangle:LoadFilledTriangle(0, 0, 200, 200, 400, 0, purple)
        triangle:SetPosition(50, 50)
        Add(triangle)
    end
end

SetShaderProgram(Libraries.Game.Graphics.Shaders.ShaderProgram shaderProgram)

SetShadowColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the shaddow color on the control.

Parameters

SetShadowEdgeFade(number value)

This action sets the shadow edge fade percent. A value between 0 and 1.

Parameters

  • number value: the shadow edge fade percent.

SetShadowHeight(number value)

This action sets the shadow height percent. A value between 0 and 1.

Parameters

  • number value: the shadow height.

SetShadowWidth(number value)

This action sets the shadow width percent. A value between 0 and 1.

Parameters

  • number value: the shadow width.

SetShadowX(number value)

This action sets the shadow X value.

Parameters

  • number value: the shadow X value.

SetShadowY(number value)

This action sets the shadow Y value.

Parameters

  • number value: the shadow Y value.

SetShape(Libraries.Game.Collision.Shapes.CollisionShape2D shape)

This action sets the collision shape of this item. The collision shape is the shape the collision system will use to test for collisions with this item. Note that this may be different from the shape drawn on the screen. A copy of the passed shape is used for the collison shape for this item.

Parameters

Example

use Libraries.Game.Drawable
use Libraries.Game.Collision.Shapes.Circle

Drawable ball
ball:Load("ball.png")
Circle circle
circle:SetRadius(30)
ball:SetShape(circle)

SetSize(number newWidth, number newHeight)

This action will set the width and height of the Item2D, respectively.

Parameters

  • number newWidth
  • number newHeight

Example

use Libraries.Interface.Item2D

Item2D myItem
myItem:SetSize(100, 50)

SetSleepTime(number time)

This action enables physics for this item. Passing true turns on physics for this item while passing false turns off physics for this item.

Parameters

  • number time

Example

use Libraries.Game.Graphics.Drawable

Drawable circle
circle:LoadFilledCircle(30)
circle:EnablePhysics(true)

SetTexture(Libraries.Game.Graphics.Texture newTexture)

This action sets the texture used by this TextureRegion to the given texture.

Parameters

SetToDefaultFontSize()

This action sets the font size to the system's specified default size for Forms. By default, this is font size 20, the same as the medium font size.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToDefaultFontSize()

form:Display()

SetToHugeFont()

This action sets the font size to the system's specified "huge" size for Forms. By default, this is font size 60.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToHugeFont()

form:Display()

SetToLargeFont()

This action sets the font size to the system's specified "large" size for Forms. By default, this is font size 32.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToLargeFont()

form:Display()

SetToMediumFont()

This action sets the font size to the system's specified "medium" size. By default, this is font size 20.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToMediumFont()

form:Display()

SetToSmallFont()

This action sets the font size to the system's specified "small" size. By default, this is font size 14.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToSmallFont()

form:Display()

SetToTinyFont()

This action sets the font size to the system's specified "tiny" size. By default, this is font size 10.

Example

use Libraries.Interface.Forms.Form
use Libraries.Interface.Forms.Page
use Libraries.Interface.Controls.Button

Form form
Page page = form:GetMainPage()

Button button = page:AddButton("Click for Bacon")
button:SetToTinyFont()

form:Display()

SetTopLeftPixelRounding(number value)

This action sets the top left pixel rounding value.

Parameters

  • number value: the top left pixel rounding value.

SetTopLeftRounding(number value)

This action sets the top left rounding value.

Parameters

  • number value: the top left rounding value.

SetTopMargin(number padding)

This action sets the top margin size. The top margin is the space outside of the top border.

Parameters

  • number padding: the amount of top margin.

SetTopPadding(number padding)

This action sets the top padding size. The top padding is the space inside of the top border.

Parameters

  • number padding: the amount of top margin.

SetTopRightPixelRounding(number value)

This action sets the top right pixel rounding value.

Parameters

  • number value: the top right pixel rounding value.

SetTopRightRounding(number value)

This action sets the top right rounding value.

Parameters

  • number value: the top right rounding value.

SetTopSide(number top)

This action selects a point on the loaded texture that this Drawable will consider to be the top edge of the image to be drawn. 0 represents the bottom edge of the base texture, and 1 represents the top edge of the base texture.

Parameters

  • number top

SetTorque(number torque)

This action sets the total torque on this item. The units are kilogram units squared per second per second. This action should be used to set the total torque on this item. If we want to apply a torque to this item, we should use the ApplyTorque actions instead. Physics must be enabled on this action before using this action.

Parameters

  • number torque

Example

use Libraries.Interface.Item2D

Item2D item

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
item:SetTorque(200)

SetTransform(Libraries.Compute.Vector2 position, number angle)

This action is used internally by the physics system to set the position of this item in the physics world. This action is used internally and users users should not need to use this action.

Parameters

  • Libraries.Compute.Vector2: The vector representing the position of the center of the item in physics space
  • number angle: The rotation in radians of the item in physics space

SetTransform(Libraries.Game.Collision.PhysicsPosition2D transform)

This action sets the position of the item in physical space. This action is used internally and should not be used by users to set the position of this item on the screen.

Parameters

SetTransform0(Libraries.Game.Collision.PhysicsPosition2D transform)

This action sets the position of the item in physics space from the previous frame. This action is used internally and users should not need to use this action.

Parameters

SetUnfocusedSelectionBorderColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the unfocused selection border color.

Parameters

SetUnfocusedSelectionColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the unfocused selection color on the control.

Parameters

SetUnfocusedSelectionFontColor(Libraries.Game.Graphics.ColorGroup value)

This action sets the unfocused selection font color on the control.

Parameters

SetUnmovable()

This action destroys the nodes for this item for the broadphase collision, essentially removing it from the collision detection system. This action is used internally and users should not need to use this action.

SetUpItem(Libraries.Interface.Controls.Charts.ChartItem upItem)

Sets the Item accessed "above" (via the UP arrow) this Item in the chart selection.

Parameters

SetUpdateTransform(boolean flag)

This item is used to test whether a passed point is on the collision shape of this item.

Parameters

  • boolean flag

Example

use Libraries.Interface.Drawable
use Libraries.Compute.Vector2

Drawable circle
circle:LoadFilledCircle(30)
circle:SetPosition(350, 400)
Vector2 point
point:Set(365, 410)
boolean result = circle:TestPoint(point)

SetValue(number value)

This action sets the actual value associated with this bar. The parent Chart axis has a total value to which this value will be compared to get a percent for the appropriate size.

Parameters

  • number value: a number value associated with the bar.

SetVerticalLayoutMode(integer mode)

The GetVerticalLayoutMode is used to determine how the height of a Control is calculated. It should be one of the following constants: STANDARD, which will calculate the height as a set number of pixels plus a percentage of the container's height. FILL, which will make the height fill the remaining height of the container. FIT_CONTENTS, which will calculate the height to fit the children contents. FIT_FONT, which will fit the height of the Control to the line height of the Font set in this LayoutProperties.

Parameters

  • integer mode: A layout mode constant, one of STANDARD, FILL, FILL_CONTENTS, or FIT_FONT.

SetView2D(Libraries.Interface.Views.View2D content)

The IsClipping action returns true if pixel clipping is enabled, or false if it is disabled. If it is enabled, when the Item and its children are drawn as part of the QueueForDrawing action, any pixels that would be drawn outside of the unrotated dimensions of the Item are not rendered. In other words, the Item will only draw inside the exact rectangle formed by its x, y position and its width and height.

Parameters

SetWidth(number newWidth)

This action will set the width of the Item2D.

Parameters

  • number newWidth

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetWidth(50)

SetX(number setX)

This action sets the X coordinate of the Item.

Parameters

  • number setX

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetX(35.0)

SetY(number setY)

This action sets the Y coordinate of the Item.

Parameters

  • number setY

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetY(210.0)

SetZ(number setZ)

This action sets the Z value of the Item2D. For Item2D, the z value is used during layer sorting to determine ordering, where lower z values will be placed first.

Parameters

  • number setZ

Example

use Libraries.Interface.Item2D
Item2D myItem
myItem:SetZ(3)

ShouldCollide(Libraries.Interface.Item2D otherItem)

get the old target global center of the object

Parameters

Return

boolean:

Show()

This action is used to indicate that an Item and all Items that were added to it should be visible on the screen. Note that the Item class on its own cannot be drawn on the screen, but classes that inherit from it such as Libraries.Game.Graphics.Drawable can be. By default, Items are considered visible.

Example

use Libraries.Interface.Item

Item item
item:Show()

ShowAnnotation()

This action gets the chart drawables annotation (ChartLabel) visibility setting. Annotation is a control label that can be shown appended to this drawable. It can show things like a name, value, equation or custom text.

Return

boolean: true if the ChartLabel of ChartDrawable object is displayed.

ShowAnnotation(boolean show)

This action sets the chart drawables annotation (ChartLabel) to visable (true) or hidden (false). Annotation is a control label that can be shown appended to this drawable. It can show things like a name, value, equation or custom text.

Parameters

  • boolean show: if true ChartLabel of ChartDrawable object is displayed.

Simulate(boolean flag)

This action sets the linear velocity of this item in units per second. Physics must be enabled on this item before using this action.

Parameters

  • boolean flag

Example

use Libraries.Interface.Item2D
use Libraries.Compute.Vector2

Item2D item
Vector2 velocity

item:SetWidth(100)
item:SetHeight(100)
item:EnablePhysics(true)
velocity:Set(100, 0)
item:SetLinearVelocity(velocity)

SynchronizeNodes()

This action is used to syncronize the item's position in physics space with its position in the tree used for broadphase collision. This action is used internally and users should not need to use this action.

SynchronizeTransform()

This action is used to update this items position in physics space after physics solving is finished for this item. This action is used internally and users should not need to use this action.

TestPoint(Libraries.Compute.Vector2 point)

This item is used to test whether a passed point is on the collision shape of this item.

Parameters

Return

boolean: True if the passed point is on the collisoin shape, false otherwise

Example

use Libraries.Interface.Drawable
use Libraries.Compute.Vector2

Drawable circle
circle:LoadFilledCircle(30)
circle:SetPosition(350, 400)
Vector2 point
point:Set(365, 410)
boolean result = circle:TestPoint(point)

Update(number secondsSinceUpdate)

This action updates the item. It takes a number parameter that should indicate how many seconds have passed since the last time this action was called. This action does nothing in the Item class, but any class that inherits from Item may override it.

Parameters

  • number secondsSinceUpdate: The number of seconds that have passed since the last time Update was called.

Example

use Libraries.Interface.Item
use Libraries.System.DateTime

class Main is Item

    action Main
        // We'll use a DateTime object to count seconds.
        DateTime time
        number currentTime = time:GetEpochTime()
        number newTime = 0

        repeat while GetX() < 300
            // Check what the time is now.
            newTime = time:GetEpochTime()

            // Calculate how many seconds have passed, then call Update.
            Update( (newTime - currentTime)/1000 )

            // Store the old time.
            currentTime = newTime
        end
    end

    // Our update action will move our Item to the right at 200 units a second.
    action Update(number secondsSinceUpdate)
        SetX(GetX() + 200 * secondsSinceUpdate)
    end
end

UpdateAll(number seconds)

Update all behaviors elements.

Parameters

  • number seconds

UpdateTransformAngle()

This action is used internally by the physics system to set the position of this item in the physics world. This action is used internally and users users should not need to use this action.

UpdateTransformX()

This action sets the position of the item in physical space. This action is used internally and should not be used by users to set the position of this item on the screen.

UpdateTransformY()

This action returns the position of the item in physical space. This acction is used internally and should not be used by users to get the position of this item on the screen.

UseDefaultColor()

This action removes the color filter from a Drawable.

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 1, 1, 1)

        Drawable drawable
        drawable:LoadFilledCircle(100, cyan)
        drawable:SetColor(0, 1, 0, 1)
        output "Drawable has custom color filter = " + drawable:UsingCustomColor()
        
        drawable:UseDefaultColor()
        output "Drawable now has custom color filter = " + drawable:UsingCustomColor()
    end

end

UsingCustomColor()

This action returns whether or not the Drawable has a custom Color filter. This will return false if a different type of filter, such as a Gradient, is in use. To check for a filter regardless of type, use the UsingCustomTint action.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 1, 1, 1)

        Drawable drawable
        drawable:LoadFilledCircle(100, cyan)
        output "Drawable has custom color filter = " + drawable:UsingCustomColor()
        
        drawable:SetColor(0, 1, 0, 1)
        output "Drawable now has custom color filter = " + drawable:UsingCustomColor()
    end

end

UsingCustomGradient()

This action returns whether or not the Drawable is using a gradient. This will return false if a different type of filter, such as a Gradient, is in use. To check for a filter regardless of type, use the UsingCustomTint action.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Gradient
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 1, 1, 1)

        Drawable drawable
        drawable:LoadFilledCircle(100, cyan)
        output "Drawable has custom color gradient? " + drawable:UsingCustomGradient()
        
        Gradient gradient
        Color color
        gradient:Set(color:Red(), color:Green(), color:Blue(), color:White())
        drawable:SetGradient(gradient)
        output "Drawable now has custom color gradient? " + drawable:UsingCustomGradient()
    end
end

UsingCustomTint()

This action returns whether or not the Drawable is being tinted by a ColorGroup, such as a Color or Gradient.

Return

boolean:

Example

use Libraries.Game.Graphics.Drawable
use Libraries.Game.Graphics.Gradient
use Libraries.Game.Graphics.Color
use Libraries.Game.Game

class Main is Game

    action Main
        StartGame()
    end

    action CreateGame
        Color cyan
        cyan:SetColor(0, 1, 1, 1)

        Drawable drawable
        drawable:LoadFilledCircle(100, cyan)
        // This will return true - the circle is using a cyan tint.
        output "Is the Drawable tinted with a color? " + drawable:UsingCustomTint()
        
        Gradient gradient
        Color color
        gradient:Set(color:Red(), color:Green(), color:Blue(), color:White())
        drawable:SetGradient(gradient)
        // This will return true because the circle is tinted with a gradient.
        output "After using a gradient, is the Drawable tinted? " + drawable:UsingCustomTint()

        drawable:UseDefaultColor()
        // This should return false. The Drawable is no longer using a tint.
        output "After resetting the color, is the Drawable still tinted? " + drawable:UsingCustomTint()
    end
end