Skip to content

Allow simple math expressions (e.g. 3/2, 7.2+1, 360/8) in the Designer's Transform panel position fields#3111

Merged
breiler merged 1 commit into
winder:masterfrom
dnikodem84:MathInDesigner
May 15, 2026
Merged

Allow simple math expressions (e.g. 3/2, 7.2+1, 360/8) in the Designer's Transform panel position fields#3111
breiler merged 1 commit into
winder:masterfrom
dnikodem84:MathInDesigner

Conversation

@dnikodem84

Copy link
Copy Markdown
Contributor
  • New MathExpressionParser: ~150-line recursive-descent evaluator for + - * / and parens; strict whitelist, no ScriptEngine
  • New ExpressionAwareTextFieldFormatter: subclass of TextFieldUnitFormatter that runs the parser before falling back to super
  • TransformationSettingsPanel: X, Y, Width, Height, Rotation fields now build via createExpressionField helper using the new formatter
  • Tests: 38 unit + 5 integration cases covering grammar edges, unit/percent rounding, and field-wiring regression guard

…r's Transform panel position fields

  - New MathExpressionParser: ~150-line recursive-descent evaluator for + - * / and parens; strict whitelist, no ScriptEngine
  - New ExpressionAwareTextFieldFormatter: subclass of TextFieldUnitFormatter that runs the parser before falling back to super
  - TransformationSettingsPanel: X, Y, Width, Height, Rotation fields now build via createExpressionField helper using the new formatter
  - Tests: 38 unit + 5 integration cases covering grammar edges, unit/percent rounding, and field-wiring regression guard
@breiler breiler merged commit a3e0356 into winder:master May 15, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants