The my post-reading week progress report. It's been an intense 9 days, and most of my work during the week is dedicated to the UI, and I'm happy to report that there's much progress made, although the amount of work done fell just short of my expectations.
I got the features we had in COMP2013 working in the first 3-4 days of the week - being able to see and control pre-registered rooms and items (sensors). The UI panels have been redesigned to support additional transmission status representation (update pending, disconnection, command sent and awaiting response etc.). Since we decided to discard the possibility of nesting rooms within rooms and grouped controls (at least in the Control View), much of the traversal algorithms aren't needed anymore.
Here's the regular screenshot update:
The most challenging part of the design is to actually account for server-client interactions, and to represent these events clearly. I had to think about what should happen for every single failed AJAX call, and what should happen during reconnection, and how to restore the UI and data to a normal running state. The first release milestone for the UI and my part of the project is to let users add and remove items as well as rooms from the house. My goal was to finish the release milestone by today, really, but what we have now does not yet handle adding / removing rooms. Item removal is fully supported now, and adding items can be fully implemented once the server-side accounts for the needed information.
There's not really that much else to explain. The new left contextual menu opens up if it's defined in its parent Stage. Currently it handles generating the form fields and buttons to take care of input and validation. The work on the Control View for the foreseeable future would mostly involve this contextual menu, since once I finish it, the UI would be primed for our first release.
We have a scheduled meeting with our supervisor at 10AM tomorrow morning, so I should wrap it up here - that's it for this week.