Changeset View
Changeset View
Standalone View
Standalone View
binaries/data/mods/test/gui/toto.js
- This file was added.
function reSizeChildren(object) | |||||
{ | |||||
let children = object.getChildren(); | |||||
let pos = 50; | |||||
for (let child of children) | |||||
{ | |||||
if (child.name === "addButton") | |||||
continue; | |||||
let size = child.size; | |||||
size.top = pos; | |||||
size.bottom = pos+30; | |||||
child.size = size; | |||||
pos += 50; | |||||
} | |||||
} | |||||
function init() | |||||
{ | |||||
Engine.GetGUIObjectByName("root").createChildFromXML(` | |||||
<object name="MainPanel" type="image" style="ModernWindow"> | |||||
<object | |||||
name="addButton" | |||||
type="button" | |||||
style="StoneButtonFancy" | |||||
size="100%-250 100%-50 100%-20 100%-20" | |||||
caption="Click me to add a button"/> | |||||
</object> | |||||
`); | |||||
Engine.GetGUIObjectByName("addButton").onMouseLeftPress = () => { | |||||
let obj = Engine.GetGUIObjectByName("MainPanel"); | |||||
let size = obj.getChildren().length; | |||||
let pos = 50 * size; | |||||
obj.createChildFromXML(` | |||||
<object type="button" name="button_${size}" | |||||
style="StoneButtonFancy" size="20 ${pos} 240 ${pos+30}" | |||||
caption="Delete me #${size}"/> | |||||
`); | |||||
Engine.GetGUIObjectByName(`button_${size}`).onMouseLeftRelease = () => { | |||||
Engine.GetGUIObjectByName(`button_${size}`).removeFromDOM(); | |||||
reSizeChildren(obj); | |||||
}; | |||||
}; | |||||
} |
Wildfire Games · Phabricator