Interaction Editor Working, Condition Triggers Next. And Thanksgiving!
I think I've just about finished the interaction editor component. The last few things I added were the ability to add a new link to another interaction (i.e. continuing the chain), breaking a link, breaking all incoming links (i.e. orphan an interaction), and delete an interaction from the data entirely (unlinks all, then deletes the data permanently).
With these in place, I think all the tools I need to author interactions are in place. I also added a small feature to improve user-friendliness: backtracing. Anytime an interaction is added to the screen, the editor will find any unrelated interactions that point to it and add those, as well. My thinking is that it'll be useful to see if an interaction is linked from elsewhere before editing or deleting it, as it could have repercussions in other interactions.
That all seems to work now, and is just missing something to save the data back out to XML. Before I do that, however, there are two other pieces to the editor that I'll need: editing conditions and condition triggers. Since interactions are largely collections of these condition and trigger objects, it makes sense to be able to quickly edit those data types while working on interactions.
Since triggers are a simpler data type, I set about tackling them first. And since I started that task at a little after 4pm, I didn't finish it. I'm actually pretty far along, though. I think most of the UI is authored, and the logic for the UI is in place. It's mainly fixing compiling errors and then testing it left, which I'll start next week.
Speaking of, Happy Thanksgiving! Canadian Thanksgiving is Monday, so I won't be in the office then. I'll probably be sitting lazily about the house, digesting and trying to play games and read in between baby-minding. Hope everyone has a good weekend, and see you Tuesday!