
Additionally, in relation to the plugin discussions, the way I was intending Crowbar's toolkit to work was to have everything as a plugin - all tools right down to selection being a module located at runtime, with the possibility of inter-plugin dependencies and of utilising Qt's native support for JS scripts for the less performance-critical plugins. I've also so far implemented a clone of the console from the Source engine, complete with console variables and commands and support for command piping Unix-style, in order to help expose as much of the application to external configuration as possible. I don't know how realistic design choices in this direction would be for Sledge at this stage, considering you've got a fair amount of the core framework done already, but absolutely feel free to re-use any of the console code concepts (albeit physically written in C++) if you feel they'd be helpful.