// USER_INPUT
VerticalPanel assertionPanel = new VerticalPanel();
assertionPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Tidy Settings"));
//doctype
HorizontalPanel docTypePanel = new HorizontalPanel();
docTypeBox = new JComboBox(new Object[] { "omit", "auto", "strict", "loose" });
docTypeBox.addFocusListener(this);
//docTypePanel.add(new JLabel(JMeterUtils.getResString("duration_assertion_label")));
docTypePanel.add(new JLabel("Doctype:"));
docTypePanel.add(docTypeBox);
assertionPanel.add(docTypePanel);
//format (HMTL, XHTML, XML)
VerticalPanel formatPanel = new VerticalPanel();
formatPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(), "Format"));
htmlRadioButton = new JRadioButton("HTML", true);
xhtmlRadioButton = new JRadioButton("XHTML", false);
xmlRadioButton = new JRadioButton("XML", false);
ButtonGroup buttonGroup = new ButtonGroup();
buttonGroup.add(htmlRadioButton);
buttonGroup.add(xhtmlRadioButton);
buttonGroup.add(xmlRadioButton);
formatPanel.add(htmlRadioButton);
formatPanel.add(xhtmlRadioButton);
formatPanel.add(xmlRadioButton);
assertionPanel.add(formatPanel);
//errors only
errorsOnly = new JCheckBox("Errors only", false);
errorsOnly.addFocusListener(this);
errorsOnly.addActionListener(this);
assertionPanel.add(errorsOnly);
//thresholds
HorizontalPanel thresholdPanel = new HorizontalPanel();
thresholdPanel.add(new JLabel("Error threshold:"));
errorThresholdField = new JTextField("0", 5);
errorThresholdField.addFocusListener(this);
thresholdPanel.add(errorThresholdField);
thresholdPanel.add(new JLabel("Warning threshold:"));
warningThresholdField = new JTextField("0", 5);
warningThresholdField.addFocusListener(this);
thresholdPanel.add(warningThresholdField);
assertionPanel.add(thresholdPanel);
//file panel
filePanel = new FilePanel(JMeterUtils.getResString("file_visualizer_output_file"), ".txt");
filePanel.addChangeListener(this);