public void updateParseTreeFromDoc(VirtualFile grammarFile) {
   ANTLRv4PluginController controller = ANTLRv4PluginController.getInstance(project);
   PreviewState previewState = controller.getPreviewState(grammarFile);
   LOG.info("updateParseTreeFromDoc " + grammarFile + " rule " + previewState.startRuleName);
   try {
     final String inputText = previewState.getEditor().getDocument().getText();
     ParsingResult results = controller.parseText(grammarFile, inputText);
     if (results != null) {
       updateTreeViewer(previewState, results);
     } else if (previewState.startRuleName == null) {
       indicateNoStartRuleInParseTreePane();
     } else {
       indicateInvalidGrammarInParseTreePane();
     }
   } catch (IOException ioe) {
     ioe.printStackTrace();
   }
 }