Basalt
Basalt copied to clipboard
bug: Side-specific border coloring with .xml values does not work
Describe the bug
Side-specific border coloring when making the UI with .xml does not work properly.
To Reproduce
Steps to reproduce the behavior:
- Create a simple Basalt UI with .xml style
- Add an object with a side-specific border coloring:
<button x="2" y="2" text="Hello" borderBottom="blue" />
- Run the program
- See error:
Basalt error: .../basaltDraw.lua:202: bad argument (string expected, got nil)
Expected behavior
A button with the text "Hello" should appear with a blue border only along the bottom
Additional context
Changing these four lines (138-141) in Object.lua
seems to fix it! Just had to wrap the xmlValue(...)
return with colors[...]
, like the other surrounding code does.
if(xmlValue("borderLeft", data)~=nil)then borderColors["left"] = colors[xmlValue("borderLeft", data)] end
if(xmlValue("borderTop", data)~=nil)then borderColors["top"] = colors[xmlValue("borderTop", data)] end
if(xmlValue("borderRight", data)~=nil)then borderColors["right"] = colors[xmlValue("borderRight", data)] end
if(xmlValue("borderBottom", data)~=nil)then borderColors["bottom"] = colors[xmlValue("borderBottom", data)] end
Checklist
[x] I am running the latest version. Tick the box if you are running the latest version!
Hello! Thank you very much - also thanks for fixing it yourself and providing me the code! This issue got fixed in 6f0ddd6.