If the user has changed any settings, they should be prompted to synchronize before they quit (like Emplode). The way Emptool did it was by tracking "dirtiness" in Console.java... The equivalent would be in Emplode.java (any updating operation needs to toggle "dirty"). We need to go over the code to make sure that everything goes _through_ Emplode, and never straight to the PlayerDatabase behind the scenes (where changes could be made without notifying Emplode)
It might make more sense (and be more modular) to have the PlayerDatabase itself keep track of its "dirty" state; that way, it can be reused elsewhere (such as a future Mac OS X-native front-end) without rewriting the state-tracking code.
(note that the previous comment was posted by me; I'd forgotten to sign in)
I agree ... And it actually has a Dirty property that is "kind of" tracked. I'm not sure why I didn't think to do it that way ... Oh well. At any rate, I agree.