We now have a presentation. Also R# settings are right.
Start marking things as non-null.
Clean up the boilerplate a bit.
Break a little more code out of the App class.
The machine has brains. Nominally, pressing play will start a presentation. There is a bunch of redundant code, but it works.
Change name of the presentation player page.
I am now showing a background image, assuming that image is compiled in, and only in design view. Still some way to go for the rest.
Now the app shows the same background image / one slide preso as design view. I hooked up the brains and artificially started the presentation. Also we don't need a presentation abstraction. All we need in order to play is a current slide.
Put files in the right folders. MVVM naming.
Hard-code some text boxes on the slide. The layout looks not bad.
Now the slide presentation will show only messages that have something to say. Others won't even have the background box.
Fix some paths. ow everything looks good for a one slide presentation with text. Can't pull that in from a file or anything, but we do have that one slide showing.
Renaming the design data class. Better naming convention.
Helper method for showing a slide.
**Test intentionally failing, as am about to board plane**
Starting to build out commands that can verify what they are bound to.
We are binding commands correctly. Machine view binds to Pause on the brains correctly. Can verify bindings without executing them.
Nominally I should be able to advance slides now. Bt I'm ot getting called on keyboard input. Need to keep looking for right attach point for that event.
The keyboard works! I can advance a slide. Still a Poo of very little brain, but it is hooked up.
The KaraokeMachine can now start a presentation. Refactored to make the tests a little more sensible. The View Model operates entirely via bindings now, and both directions are tested.
The slides now advance and everything. Also I am now specifying the color choices & background image stretch in the Slide, so I can eventually put this in the document. For now, I just have it out of the view.