K Miller wrote:I've managed to piece this together with what little I know...
And therein, I suspect, lies the problem.
I'm afraid I don't even want to try and untangle what you've written; save to say that it's WRONG.
Even if it works, nobody in his/her right mind would even try to maintain it.
If it's an attempt at a 'fluid interface' (and I suspect it isn't), it's ill-conceived, because the idea of fluid interfaces is
(a) readability
(b) simplicity of methods
neither of which you've achieved.
My suggestion: Back up, and work out what you want to do. And do it with your computer turned OFF, and in English (or your native language).
Programming is NOT about coding; it's about
thinking; and what you've written qualifies for the Jean-Paul Sartres School of Programming:
"I've got a problem; let's start coding and see if a solution simply materializes."
Be advised: the school is very large; but contains very few professional programmers.
Winston