public void startParseInput(String string, UserParser newParser){
        if(string.equals("")) return;
		if (newParser == null) {
			try {
				myParser = UserParser.get(grammar, string);
			} catch (IllegalArgumentException e) {
				JOptionPane.showMessageDialog(this, e.getMessage(), "Bad Input",
						JOptionPane.ERROR_MESSAGE);
				return;
			}
		}
		else myParser = newParser;
		progress.setText("");
		myPreviousAction.setEnabled(false);
        stepAction.setEnabled(false);
        grammarTable.clearSelection();
        myStepCount=0;
        myPreviousCount=0;
		myParser.start();
		paintTree();
	}