public void keyPressed(KeyEvent event)
    {
        if (event.getKeyCode() == KeyEvent.VK_CONTROL)
        {
            controlHeld = true;
        }
        else if (event.getKeyCode() == KeyEvent.VK_SHIFT)
        {
            shiftHeld = true;
        }
        else if (event.getKeyCode() == KeyEvent.VK_ALT)
        {
            altHeld = true;
        }
        
        for (int i = key_pressed_start; i < key_released_start; i++)
        {
            try
            {
                notifications.get(i).call(event);
            }
            catch (IllegalArgumentException ex)
            {
                ex.printStackTrace();
            }
            catch (IllegalAccessException ex)
            {
                ex.printStackTrace();
            }
            catch (InvocationTargetException ex)
            {
                ex.printStackTrace();
            }
        }
        event.consume();
    }