private void miNewActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_miNewActionPerformed
        if (story.isSomethingChanged()) {

            // Show save confirm window
            int n = JOptionPane.showConfirmDialog(null,
                    "You made one or several changes to the current story.\n"
                    + "Do you want to save this before starting a new one?\n",
                    "Save?",
                    JOptionPane.YES_NO_CANCEL_OPTION,
                    JOptionPane.WARNING_MESSAGE);

            if (n == JOptionPane.YES_OPTION) {
                // saveStory returns false if the user cancels
                if (!saveStory()) {
                    return;
                }
            } else if (n == JOptionPane.CANCEL_OPTION) {
                return;
            }
        }
        String storyName = JOptionPane.showInputDialog("Name of the new story", defaultStoryName);
        if (storyName != null) {
            if (!storyName.equals("")) {
                story = new Story(storyName, panelRoutes, this);
                map.Clear(story);
                panelRoutes.createStoryTree(story);
                panelRoutes.refreshList(story.getRoutes());

                this.setTitle(storyName + " - iStory designer " + Application.getVersion());
                return;
            }
        }
        miNewActionPerformed(evt);
    }//GEN-LAST:event_miNewActionPerformed