Absolutely spot on.vrld wrote:You could help keeping libraries active by using them and more importantly by giving feedback. When the authors get the feeling that no one uses their stuff they will most likely stop developing it. When the authors don't get bug reports/feature request they will think everything is fine and also stop developing.
The only real problem with your Gspot implementation is that parent is undefined.
Normally that would be a reference to a hidden or group element, from which the rest of the dialogue inherits its positioning etc.
You can also use :
Code: Select all
group = gui:hidden('', {64, 64})
ip = group:addchild(gui:input('IP', {w = 128}), 'vertical')
Also, I would use something like :
Code: Select all
ip.done = function() port:focus() end -- triggered when you hit enter while the element has focus
port.done = function() button:click() end
ip.next, port.next = port, ip -- sets tab ordering
ip:focus()
I think I'd disagree on intuitiveness - I think if you have an object, you intuitively expect it to be an object - but that one's, to some extent, at least, subjective.
I'm pretty sure you get more power with a stateful or retained object, but it does come at the cost of complexity.
I don't mean to undersell Quickie, it's just that you get less scope for manipulation if your objects are so ephemeral.
Edit : Tab ordering is now documented, and I'll be working on extending the focus mechanism in the next update.