private boolean promptForNew(boolean brandNew)
    {
        // SO NOW ASK THE USER FOR A LEVEL NAME
        String levelName = JOptionPane.showInputDialog(
                view,
                LEVEL_NAME_REQUEST_TEXT,
                LEVEL_NAME_REQUEST_TITLE_TEXT,
                JOptionPane.QUESTION_MESSAGE);

        // IF THE USER CANCELLED, THEN WE'LL GET A fileName
        // OF NULL, SO LET'S MAKE SURE THE USER REALLY
        // WANTS TO DO THIS ACTION BEFORE MOVING ON
        if ((levelName != null)
                && (levelName.length() > 0))
        {
            // WE ARE STILL IN DANGER OF AN ERROR DURING THE WRITING
            // OF THE INITIAL FILE, SO WE'LL NOT FINALIZE ANYTHING
            // UNTIL WE KNOW WE CAN WRITE TO THE FILE
            String fileNameToTry = levelName + LEVEL_FILE_EXTENSION;
            File fileToTry = new File(LEVELS_PATH + fileNameToTry);
            if (fileToTry.isDirectory())
            {
                return false;
            }
            int selection = JOptionPane.OK_OPTION;
            if (fileToTry.exists())
            {
                selection = JOptionPane.showConfirmDialog(view,
                        OVERWRITE_FILE_REQUEST_TEXT_A + fileNameToTry + OVERWRITE_FILE_REQUEST_TEXT_B,
                        OVERWRITE_FILE_REQUEST_TITLE_TEXT,
                        JOptionPane.OK_CANCEL_OPTION,
                        JOptionPane.QUESTION_MESSAGE);
            }
            if (selection == JOptionPane.OK_OPTION)
            {
                // MAKE OUR NEW LEVEL
                if (brandNew)
                {
                    model.startNewLevel(levelName);
                }

                // NOW SAVE OUR NEW LEVEL
                save(fileToTry);

                // NO ERROR, SO WE'RE HAPPY
                saved = true;

                // UPDATE THE FILE NAMES AND FILE
                currentFileName = fileNameToTry;
                currentFile = fileToTry;

                // SELECT THE ROOT NODE, WHICH SHOULD FORCE A
                // TRANSITION INTO THE REGION VIEWING STATE
                // AND PUT THE FILE NAME IN THE TITLE BAR
                view.setTitle(APP_NAME + APP_NAME_FILE_NAME_SEPARATOR + currentFileName);

                // WE DID IT!
                return true;
            }
        }
        // USER DECIDED AGAINST IT
        return false;
    }