Habe deine vorgeschlagene Lösung gerade auch gefunden, und zwar
hier. Ist zwar nicht unbedingt so toll, aber wenn ich mir da zu Beginn der Anwendung einen entsprechenden Baum bastle, dann ist das eine ausreichend gute Lösung für mich.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)