public MenuController(GameFrame frame) {

    angryFrame = frame;
    angryModel = angryFrame.getAngryModel();
    angryPlayers = angryModel.getPlayers();

    // on recupere les differentes vues du menu
    angryMenuHomeView = frame.getAngryMenuHomeView();
    angryMenuNewView = frame.getAngryMenuNewView();
    angryMenuLoadView = frame.getAngryMenuLoadView();
    angryMenuOptionsView = frame.getAngryMenuOptionsView();
    angryMenuDifficultyView = frame.getAngryMenuDifficultyView();
    angryMenuLevelView = frame.getAngryMenuLevelView();

    // on recupere les objets du menu necessaires
    // et on leur ajoute  un actionlistener

    backfromNewButton = angryMenuNewView.getBackButton();
    backfromNewButton.addActionListener(this);
    backfromLoadButton = angryMenuLoadView.getBackButton();
    backfromLoadButton.addActionListener(this);
    backfromOptionsButton = angryMenuOptionsView.getBackButton();
    backfromOptionsButton.addActionListener(this);
    backfromDifficultyButton = angryMenuDifficultyView.getBackButton();
    backfromDifficultyButton.addActionListener(this);
    backfromLevelButton = angryMenuLevelView.getBackButton();
    backfromLevelButton.addActionListener(this);

    newButton = angryMenuHomeView.getNewButton();
    newButton.addActionListener(this);
    loadButton = angryMenuHomeView.getLoadButton();
    loadButton.addActionListener(this);
    optionsButton = angryMenuHomeView.getOptionsButton();
    optionsButton.addActionListener(this);
    exitButton = angryMenuHomeView.getExitButton();
    exitButton.addActionListener(this);

    playerNameField = angryMenuNewView.getPlayerNameField();
    okNewButton = angryMenuNewView.getOkNewButton();
    okNewButton.addActionListener(this);

    playersList = angryMenuLoadView.getPlayersList();
    deleteButton = angryMenuLoadView.getDeleteButton();
    deleteButton.addActionListener(this);
    okLoadButton = angryMenuLoadView.getOkLoadButton();
    okLoadButton.addActionListener(this);

    easyButton = angryMenuDifficultyView.getEasyButton();
    easyButton.addActionListener(this);
    mediumButton = angryMenuDifficultyView.getMediumButton();
    mediumButton.addActionListener(this);
    hardButton = angryMenuDifficultyView.getHardButton();
    hardButton.addActionListener(this);
    extremeButton = angryMenuDifficultyView.getExtremeButton();
    extremeButton.addActionListener(this);

    lvlButtons = angryMenuLevelView.getLvlButtons();
    for (JButton button : lvlButtons) {
      button.addActionListener(this);
    }

    JOptionPane.setDefaultLocale(Locale.ENGLISH);
  }