AbstractTarget object
Property name
ProtectedobjectTarget object containing the property
ProtectedpropertyProperty name being controlled
Protected AbstracttypeController type (for internal discrimination)
ProtectedlabelDisplay label (defaults to property name)
Root DOM element for this controller
Optional$inputInput element (varies by controller type)
ProtectedchangeChange callbacks
ProtectedfinishFinish change callbacks
ProtectedeventEvent manager for cleanup
ProtectedisVisibility state
ProtectedinitializeInitialize DOM element (must be called by subclass after all properties are set)
Protected AbstractcreateCreate the DOM structure for this controller
Must be implemented by subclasses
Set the display label
Label text
this (for chaining)
Set value on target object and update display
NOTE: Does NOT trigger onChange callbacks (matches lil-gui behavior). Only user interaction triggers callbacks.
New value
this (for chaining)
AbstractupdateUpdate display to reflect current value
Must be implemented by subclasses
this (for chaining)
Register a change callback (fired on every change)
Change handler
this (for chaining)
Register a finish change callback (fired on blur/mouseup)
Finish change handler
this (for chaining)
ProtectedtriggerTrigger all change callbacks
ProtectedtriggerTrigger all finish change callbacks
Show the controller
this (for chaining)
Hide the controller
this (for chaining)
Set min value (number controllers only - overridden in NumberController)
Set max value (number controllers only - overridden in NumberController)
Set step value (number controllers only - overridden in NumberController)
Dispose the controller and clean up resources
CRITICAL: Must remove all event listeners to prevent memory leaks
ProtectedcreateCreate base DOM structure common to all controllers
Base controller element
Create a controller