@Override public void update(final Observable o,final Object arg){
  if (!SwingUtilities.isEventDispatchThread()) {
    SwingUtilities.invokeLater(null);
    return;
  }
 else {
    loadAll();
    layoutComponents();
  }
}

@ Override public void update ( final Observable o , final Object arg ) { if ( ! SwingUtilities . isEventDispatchThread ( ) ) { SwingUtilities . invokeLater ( null ) ; return ; } else { loadAll ( ) ; layoutComponents ( ) ; } }
is called in response to the gameselectionmodel being updated . it means the we have to reload the form
