GUI Property
App: apps/gui_property/
Demonstrates propertyFloat and propertyInt — labeled numeric widgets that support click-drag editing and typed input — plus editStringFiltered with character whitelists.
Run from root
Section titled “Run from root”% ./plume3d gui_propertyWhat it shows
Section titled “What it shows”propertyFloat— labeled float with min/max clamp, drag sensitivity, and typed input. Shows the current value below.propertyInt— same for integers.editString— standard free-text edit (any characters).editStringFiltered— restricts input to a set of allowed characters:- Float input: allows
"0123456789.-" - Decimal input: allows only
"0123456789" - Hex input: allows
"0123456789ABCDEFabcdef"
- Float input: allows
Key patterns
Section titled “Key patterns”// Float property: name, min, value, max, step, incPerPixel_speed = Gui.propertyFloat("#Speed:", 0, _speed, 100, 0.1, 0.2)
// Int property_count = Gui.propertyInt("#Count:", 0, _count, 1000, 1, 1)
// Filtered edit — only digits and decimal point_textFloat = Gui.editStringFiltered(_textFloat, 16, "0123456789.")
// Commit on Enterif (Gui.lastEditCommitted()) Logger.info("Committed: %(_textFloat)")Note on property names
Section titled “Note on property names”Property names starting with # suppress the label but still act as the widget’s unique ID (required by Nuklear). To show a label, omit the #: "Speed:".