mjn: i need to call something like the following on you: layoutAll(bool tags) layoutSubset(bool tags, ObjectList) because i'm going to propagate everything that happens before any process takes place (i.e., asking for a filename, asking whether to take tags into account) up to the passiveUI. you'll only use the aggressiveUI to print error messages, if you have any... di: Make sure that in your constructor, you take in the components that's below you, such as HUDataManager. How else are you going to call functions on it?