I strongly advocate ditching Swing because it’s absolutely massively overpowered and complex to do a game GUI. Not only that but it’s closed source and difficult to bully into doing what you want. It’s like using an atom bomb to crack a nut.
I say this:
You don’t need MVC. You don’t even want it most of the time in a game. You just want widgets that do stuff and draw themselves. When was the last time you saw a game with a complex user interface? When was the last time you needed BIDI HTML rendering in an editing control for a game?
You are all very guilty of trying to be too clever by half here
Create what you need to make it work, and no more; or you’ll not create anything, or just as bad, you’ll create something that’s so complex and fiddly that no-one likes it (hah! rather like Swing). And while we’re at it let’s not forget the huge memory requirements and dependent APIs requirements of using Swing. Not to mention the vast catalogue of bugs you can’t fix because it’s not open source and you have no control of the deployment.
Cas 
