>>100103007
Yep, that's why for my custom retained-mode GUI library I chose to make it load the widget trees and styles from JSON.
This is the bottom UI bit for it, you can just tweak and restart without recompiling:
{
"type": "Window",
"id": "Inventory",
"style": "Label",
"size": [400, 400],
"layout": "anchor",
"anchors": {
"bottom": "parent.bottom",
"horizontalCenter": "parent.horizontalCenter"
},
"margins": {
"bottom": 5
},
"children": [
{
"id": "experience",
"type": "ProgressBar",
"size": [180, 14],
"anchors": {
"bottom": "parent.bottom",
"horizontalCenter": "parent.horizontalCenter"
},
"fillColor": "Orange",
"format": "XP: |value|/|maximum| (|percent|%)",
"tooltip": "Click to change the display format."
},
{
"id": "life",
"type": "ProgressBar",
"size": [180, 14],
"anchors": {
"bottom": "parent.bottom",
"right": "experience.left"
},
"margins": {
"right": 5
},
"format": "Life: |value|/|maximum| (|percent|%)",
"tooltip": "Click to change the display format."
},
{
"id": "mana",
"type": "ProgressBar",
"size": [180, 14],
"anchors": {
"bottom": "parent.bottom",
"left": "experience.right"
},
"margins": {
"left": 5
},
"fillColor": "Blue",
"format": "Mana: |value|/|maximum| (|percent|%)",
"tooltip": "Click to change the display format."
}
]
}