ProtectedobjectProtectedpropertyProperty name being controlled
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
ProtectedtypeController type (for internal discrimination)
PrivatebuttonProtectedinitializeInitialize DOM element (must be called by subclass after all properties are set)
Get current value from target object
Current value
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)
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
ProtectedcreateCreate the DOM structure for this controller
Must be implemented by subclasses
Update display to reflect current value
Must be implemented by subclasses
this (for chaining)
Set the display label
Label text
this (for chaining)
Target object containing the property