Skip to content

BaseFrame ​

Extends: Container

Functions ​

MethodReturnsDescription
BaseFrame:initializeStateBaseFrameInitializes a new state

BaseFrame:initializeState(self, name, default, persist?, path?) ​

Initializes a new state for this element

Parameters ​

  • self BaseFrame The element to initialize state for
  • name string The name of the state
  • default any The default value of the state
  • persist (optional) boolean Whether to persist the state to disk
  • path (optional) string Custom file path for persistence

Returns ​

  • BaseFrame self The element instance

BaseElement ​

This is the state plugin. It provides a state management system for UI elements with support forpersistent states, computed states, and state sharing between elements.

Functions ​

MethodReturnsDescription
BaseElement:setStateBaseElementSets a state value
BaseElement:getStateanyGets a state value
BaseElement:onStateChangeBaseElementWatches for state changes
BaseElement:removeStateChangeBaseElementRemoves a state change observer
BaseElement:bindBaseElementBinds a property to a state

BaseElement:setState(self, name, value) ​

Sets the value of a state

Parameters ​

  • self BaseElement The element to set state for
  • name string The name of the state
  • value any The new value for the state

Returns ​

  • BaseElement self The element instance

BaseElement:getState(self, name) ​

Gets the value of a state

Parameters ​

  • self BaseElement The element to get state from
  • name string The name of the state

Returns ​

  • any value The current state value

BaseElement:onStateChange(self, stateName, callback) ​

Registers a callback for state changes

Parameters ​

  • self BaseElement The element to watch
  • stateName string The state to watch
  • callback function Called with (element, newValue, oldValue)

Returns ​

  • BaseElement self The element instance

BaseElement:removeStateChange(self, stateName, callback) ​

Removes a state change observer

Parameters ​

  • self BaseElement The element to remove observer from
  • stateName string The state to remove observer from
  • callback function The callback function to remove

Returns ​

  • BaseElement self The element instance

BaseElement:bind(self, propertyName, stateName) ​

Binds a property to a state

Parameters ​

  • self BaseElement The element to bind
  • propertyName string The property to bind
  • stateName string The state to bind to (optional, uses propertyName if not provided)

Returns ​

  • BaseElement self The element instance

Released under the MIT License.