You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This document defines all available property types for Mendix pluggable widgets. Use this reference when defining properties in the JSON schema for XML generation.
4
4
5
+
> **Note:** XML is generated automatically by the `generate-widget-code` tool. You only need to provide JSON property definitions — no XML knowledge required.
6
+
5
7
## Property Definition Schema
6
8
7
9
When defining properties for the XML generator, use this JSON structure:
@@ -489,18 +386,6 @@ System properties are predefined by Mendix. Reference them by key only.
489
386
-`TabIndex` - Tab order for accessibility
490
387
-`Visibility` - Conditional visibility settings
491
388
492
-
**XML Output:**
493
-
494
-
```xml
495
-
<propertyGroupcaption="Common">
496
-
<systemPropertykey="Name" />
497
-
<systemPropertykey="TabIndex" />
498
-
</propertyGroup>
499
-
<propertyGroupcaption="Visibility">
500
-
<systemPropertykey="Visibility" />
501
-
</propertyGroup>
502
-
```
503
-
504
389
---
505
390
506
391
## Property Groups
@@ -524,6 +409,31 @@ Properties can be organized into groups for better Studio Pro UI.
524
409
525
410
---
526
411
412
+
## Property Organization
413
+
414
+
### Auto-Grouping Behavior
415
+
416
+
If `propertyGroups` is omitted from the widget definition, the `generate-widget-code` tool applies automatic grouping:
417
+
418
+
- Non-action properties (all types except `action`) are placed in a **"General"** group.
419
+
- Action properties (`type: "action"`) are placed in an **"Events"** group.
420
+
421
+
This means you rarely need to define `propertyGroups` explicitly for simple widgets. Only add it when you need custom group names or a specific ordering of groups.
422
+
423
+
### Incrementally Updating Properties
424
+
425
+
Once a widget has been generated with `generate-widget-code`, you do not need to regenerate all files to change the property list. Use the `update-widget-properties` tool to:
426
+
427
+
-**Add** new properties to an existing widget
428
+
-**Remove** properties that are no longer needed
429
+
-**Modify** property attributes (e.g., change a caption or default value)
430
+
431
+
The `update-widget-properties` tool reads the `.widget-definition.json` snapshot saved during `generate-widget-code` and applies only the requested delta, then regenerates the affected files.
432
+
433
+
> **Requirement:**`generate-widget-code` must have been run at least once before `update-widget-properties` can be used, because it depends on the `.widget-definition.json` snapshot.
434
+
435
+
---
436
+
527
437
## Full Widget Definition Example
528
438
529
439
```json
@@ -586,3 +496,4 @@ Properties can be organized into groups for better Studio Pro UI.
0 commit comments