public void installListeners() {
        keyListener = new KeyAdapter() {
            @Override
            public void keyTyped(KeyEvent e) {
            }

            @Override
            public void keyPressed(KeyEvent e) {
                JediWindowModel model = window.model;
                if (e.getKeyCode() == KeyEvent.VK_DOWN) {
                    if (model.getJediFiles().size() > model.getSelectedElement() + 1) {
                        model.setSelectedElement(model.getSelectedElement() + 1);
                    }
                    if (model.getSelectedElement() > model.getFirstElement() + window.MAX_FILES -1) {
                        model.setFirstElement(model.getFirstElement()+1);

                    }
                }

                else if (e.getKeyCode() == KeyEvent.VK_UP) {
                    if (model.getSelectedElement() > 0 ) {
                        model.setSelectedElement(model.getSelectedElement() - 1);
                    }
                    if (model.getSelectedElement() < model.getFirstElement()) {
                        model.setFirstElement(model.getFirstElement() - 1);
                    }
                }

                else if (e.getKeyCode() == KeyEvent.VK_ENTER) {

                    if (!model.getJediFiles().get(model.getSelectedElement()).isFile()) {
                        window.currentPath = model.getJediFiles().get(model.getSelectedElement()).getPath();
                    }
                    model.setSelectedElement(0);
                    model.setFirstElement(0);
                    window.strategy.initJediFiles(window.currentPath, model.getJediFiles());
                }
                window.repaint();
            }

            @Override
            public void keyReleased(KeyEvent e) {
            }
        };
        window.addKeyListener(keyListener);

	}