Skip to main content
Skip to main content

HUDSliderElement

HUDSliderElement

Description

Slider Element Slider for touch devices Creates a touch area from an overlay which is slideable

Parent

HUDElement

Functions

new

Description

Create a new instance of FrameElement.

Definition

new(float posX, float posY, float width, float height, table? parent, , , , , )

Arguments

floatposXInitial X position in screen space
floatposYInitial Y position in screen space
floatwidthFrame width in screen space
floatheightFrame height in screen space
table?parent[optional] Parent HUDElement which will receive this frame as its child element
anytransAxis
anyminTrans
anycenterTrans
anymaxTrans
anylockTrans

Code

function HUDSliderElement.new(overlay, backgroundOverlay, touchAreaOffsetX, touchAreaOffsetY, touchAreaPressedGain, transAxis, minTrans, centerTrans, maxTrans, lockTrans)
local self = HUDSliderElement:superClass().new(overlay, nil , HUDSliderElement _mt)

self.position = { overlay.x, overlay.y }
self.size = { overlay.width, overlay.height }
self.transAxis = transAxis
self.minTrans = minTrans
self.centerTrans = centerTrans
self.maxTrans = maxTrans
self.lockTrans = lockTrans
self.speed = 0.0002

self.backgroundOverlay = backgroundOverlay
self.overlay = overlay

self.moveToCenterPosition = false
self.moveToCenterSpeedFactor = 1

self.snapPositions = { }

self.touchAreaDown = g_touchHandler:registerTouchAreaOverlay(backgroundOverlay, touchAreaOffsetX, touchAreaOffsetY, TouchHandler.TRIGGER_DOWN, self.onSliderDown, self )
self.touchAreaAlways = g_touchHandler:registerTouchAreaOverlay(backgroundOverlay, touchAreaOffsetX, touchAreaOffsetY, TouchHandler.TRIGGER_ALWAYS, self.onSliderAlways, self )
self.touchAreaUp = g_touchHandler:registerTouchAreaOverlay(backgroundOverlay, touchAreaOffsetX, touchAreaOffsetY, TouchHandler.TRIGGER_UP, self.onSliderUp, self )

g_touchHandler:setAreaPressedSizeGain( self.touchAreaDown, touchAreaPressedGain)
g_touchHandler:setAreaPressedSizeGain( self.touchAreaAlways, touchAreaPressedGain)
g_touchHandler:setAreaPressedSizeGain( self.touchAreaUp, touchAreaPressedGain)

return self
end