From: Erik V. <eri...@hc...> - 2007-07-16 21:02:48
|
I have uploaded another bunch of changes, with which I think Undo/Redo is now about complete. I have tested fairly extensively, but certainly not exhaustively. In separate posts I will comment on some special cases and aspects that now have taken a different and, I hope, final form. The UI has hardly changed. The Status window now has a separate Moderator menu that contains the Forced Undo (which can cross player turns, unlike the normal player undo). The Redo items in the old Move and the new Moderator menu are still identical. The StartRound window no longer has a Move menu, and I am considering to remove the Undo/Redo buttons from the OR Window as well. Undo/Redo handling has been completely centralised and can always be triggered form the Status window, regardless the current round. A new class GameUIManager combines the old GameUILoader and the now centralised handling of user actions at the UI side. Also round changes, causing window switching, is detected there. Its counterpart on the server side is the existing GameManager class, which now catches all player actions and hands these to the current Round subclass, except Undo/Redo, which are processed immediately. The intention is to centralise all traffic between client/UI/View and server/Back-end/Model between these two classes in the future. Erik Vos |