public void registerListeners(BlockBreakersController controller1, 
            BlockBreakersResizeController controller2,
            BlockBreakersMenuController controller3,
            BlockBreakersPopupController controller4, 
            BlockBreakersKeyBoardController controller5) {
        blockBreakerPanel.addMouseListener(controller1);
        blockBreakerPanel.addMouseMotionListener(controller1);
        blockBreakerPanel.addComponentListener(controller2);
        blockBreakerPanel.addKeyListener(controller3);
        this.addMouseListener(controller4);
        blockBreakerPanel.addKeyListener(controller5);

        Component[] components = blockBreakerMenu.getMenuComponents();
        for (Component component : components) {
            if (component instanceof AbstractButton) {
                AbstractButton button = (AbstractButton) component;
                button.addActionListener(controller3);
            }
        }

        components = popupMenu.getComponents();
        for (Component component : components) {
            if (component instanceof AbstractButton) {
                AbstractButton button = (AbstractButton) component;
                button.addActionListener(controller3);
            }
        }
    }