[XML] Remove hard-coded property whitelist #81
@@ -256,15 +256,6 @@ return {
|
|||||||
VisualObject = function(base, basalt)
|
VisualObject = function(base, basalt)
|
||||||
|
|
||||||
local object = {
|
local object = {
|
||||||
updateSpecifiedValuesByXMLData = function(self, data, valueNames)
|
|
||||||
for _, name in ipairs(valueNames) do
|
|
||||||
local value = xmlValue(name, data)
|
|
||||||
if (value ~= nil) then
|
|
||||||
self:setProperty(name, value)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end,
|
|
||||||
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
renderContext.env[self:getName()] = self
|
renderContext.env[self:getName()] = self
|
||||||
for prop, expression in pairs(data:reactiveProperties()) do
|
for prop, expression in pairs(data:reactiveProperties()) do
|
||||||
@@ -274,14 +265,9 @@ return {
|
|||||||
end
|
end
|
||||||
basalt.effect(update)
|
basalt.effect(update)
|
||||||
end
|
end
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
for _, prop in ipairs(data:properties()) do
|
||||||
"x",
|
self:setProperty(prop.name, prop.value)
|
||||||
"y",
|
end
|
||||||
"width",
|
|
||||||
"height",
|
|
||||||
"background",
|
|
||||||
"foreground"
|
|
||||||
})
|
|
||||||
registerFunctionEvents(self, data, {
|
registerFunctionEvents(self, data, {
|
||||||
"onClick",
|
"onClick",
|
||||||
"onClickUp",
|
"onClickUp",
|
||||||
@@ -309,9 +295,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"value"
|
|
||||||
})
|
|
||||||
registerFunctionEvent(self, data, {
|
registerFunctionEvent(self, data, {
|
||||||
"onChange"
|
"onChange"
|
||||||
}, renderContext)
|
}, renderContext)
|
||||||
@@ -410,239 +393,10 @@ return {
|
|||||||
return object
|
return object
|
||||||
end,
|
end,
|
||||||
|
|
||||||
BaseFrame = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"xOffset",
|
|
||||||
"yOffset"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Frame = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"xOffset",
|
|
||||||
"yOffset"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Flexbox = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"flexDirection",
|
|
||||||
"justifyContent",
|
|
||||||
"alignItems",
|
|
||||||
"spacing"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Button = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"text",
|
|
||||||
"horizontalAlign",
|
|
||||||
"verticalAlign"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Label = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"text",
|
|
||||||
"textAlign"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Input = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"defaultText",
|
|
||||||
"defaultFG",
|
|
||||||
"defaultBG",
|
|
||||||
"offset",
|
|
||||||
"textOffset",
|
|
||||||
"text",
|
|
||||||
"inputLimit"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Image = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"xOffset",
|
|
||||||
"yOffset",
|
|
||||||
"path",
|
|
||||||
"usePalette",
|
|
||||||
"play"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Checkbox = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"text",
|
|
||||||
"checked",
|
|
||||||
"textPosition",
|
|
||||||
"activeSymbol",
|
|
||||||
"inactiveSymbol"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Program = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"execute"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Progressbar = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"direction",
|
|
||||||
"activeBarColor",
|
|
||||||
"activeBarSymbol",
|
|
||||||
"activeBarSymbolColor",
|
|
||||||
"backgroundSymbol",
|
|
||||||
"progress"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Slider = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"symbol",
|
|
||||||
"symbolColor",
|
|
||||||
"index",
|
|
||||||
"maxValue",
|
|
||||||
"barType"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Scrollbar = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"symbol",
|
|
||||||
"symbolBG",
|
|
||||||
"symbolFG",
|
|
||||||
"symbolSize",
|
|
||||||
"scrollAmount",
|
|
||||||
"index",
|
|
||||||
"barType"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
MonitorFrame = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"monitor"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Switch = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"symbol",
|
|
||||||
"activeBackground",
|
|
||||||
"inactiveBackground"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Textfield = function(base, basalt)
|
Textfield = function(base, basalt)
|
||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"selectionBG",
|
|
||||||
"selectionFG",
|
|
||||||
"xOffset",
|
|
||||||
"yOffset"
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
if(data["lines"]~=nil)then
|
if(data["lines"]~=nil)then
|
||||||
local l = data["lines"]["line"]
|
local l = data["lines"]["line"]
|
||||||
if(l.properties~=nil)then l = {l} end
|
if(l.properties~=nil)then l = {l} end
|
||||||
@@ -703,10 +457,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"start",
|
|
||||||
"time"
|
|
||||||
})
|
|
||||||
registerFunctionEvents(self, data, {
|
registerFunctionEvents(self, data, {
|
||||||
"onCall"
|
"onCall"
|
||||||
}, renderContext)
|
}, renderContext)
|
||||||
@@ -720,14 +470,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"textAlign",
|
|
||||||
"offset",
|
|
||||||
"selectionBg",
|
|
||||||
"selectionFg",
|
|
||||||
"scrollable"
|
|
||||||
})
|
|
||||||
|
|
||||||
if(data["item"]~=nil)then
|
if(data["item"]~=nil)then
|
||||||
local tab = data["item"]
|
local tab = data["item"]
|
||||||
if(tab.properties~=nil)then tab = {tab} end
|
if(tab.properties~=nil)then tab = {tab} end
|
||||||
@@ -747,10 +489,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"dropdownWidth",
|
|
||||||
"dropdownHeight"
|
|
||||||
})
|
|
||||||
return self
|
return self
|
||||||
end,
|
end,
|
||||||
}
|
}
|
||||||
@@ -761,13 +499,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"selectionBg",
|
|
||||||
"selectionFg",
|
|
||||||
"defaultBg",
|
|
||||||
"defaultFg"
|
|
||||||
})
|
|
||||||
|
|
||||||
if(data["item"]~=nil)then
|
if(data["item"]~=nil)then
|
||||||
local tab = data["item"]
|
local tab = data["item"]
|
||||||
if(tab.properties~=nil)then tab = {tab} end
|
if(tab.properties~=nil)then tab = {tab} end
|
||||||
@@ -781,32 +512,10 @@ return {
|
|||||||
return object
|
return object
|
||||||
end,
|
end,
|
||||||
|
|
||||||
Menubar = function(base, basalt)
|
|
||||||
local object = {
|
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"space",
|
|
||||||
"scrollable"
|
|
||||||
})
|
|
||||||
return self
|
|
||||||
end,
|
|
||||||
}
|
|
||||||
return object
|
|
||||||
end,
|
|
||||||
|
|
||||||
Graph = function(base, basalt)
|
Graph = function(base, basalt)
|
||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"maxEntries",
|
|
||||||
"graphType",
|
|
||||||
"minValue",
|
|
||||||
"maxValue",
|
|
||||||
"graphSymbol",
|
|
||||||
"graphSymbolColor"
|
|
||||||
})
|
|
||||||
if(data["item"]~=nil)then
|
if(data["item"]~=nil)then
|
||||||
local tab = data["item"]
|
local tab = data["item"]
|
||||||
if(tab.properties~=nil)then tab = {tab} end
|
if(tab.properties~=nil)then tab = {tab} end
|
||||||
@@ -824,13 +533,6 @@ return {
|
|||||||
local object = {
|
local object = {
|
||||||
setValuesByXMLData = function(self, data, renderContext)
|
setValuesByXMLData = function(self, data, renderContext)
|
||||||
base.setValuesByXMLData(self, data, renderContext)
|
base.setValuesByXMLData(self, data, renderContext)
|
||||||
self:updateSpecifiedValuesByXMLData(data, {
|
|
||||||
"scrollable",
|
|
||||||
"selectionBg",
|
|
||||||
"selectionFg",
|
|
||||||
"xOffset",
|
|
||||||
"yOffset"
|
|
||||||
})
|
|
||||||
local function addNode(node, data)
|
local function addNode(node, data)
|
||||||
if(data["node"]~=nil)then
|
if(data["node"]~=nil)then
|
||||||
local tab = data["node"]
|
local tab = data["node"]
|
||||||
|
|||||||
Reference in New Issue
Block a user