Added a better startup routine

Project Page Next project post Post History

In preparations for doing my first project with The Dark Room, I've had to do a little maintenance on the program's startup routine. I had some issues with some interfaces not being correctly initialised when the first project was added into the system. And it meant some interfaces wouldn't draw some of their windows because their default state had not yet been set.

To improve the start-up routine, I re-ordered the way in which the interface initialisers were run before the projects are added to the system. It does take a second or two to run the first time, but after that run it doesn't need to run again. this means the main dialog opens fast and there's no waiting while the user opens the program. There is a small wait the first time a project is added/loaded, but after that it's quick.

I also started making a splash screen for the loading phase, but have decided not to implement this in practice. I thought it would be handy to see the steps being done on loading so you could see that it was doing something. But, in practice, after the first time the initialisers have been run, projects are added much quicker and there is no real reason to have a loading screen. So it's a little redundant. I'll leave it there in code for now though, I might find another use for it in the future.

Still working on that structure builder update!! And a few other little things.