setTitle("FindBugs results");
try { setTitle("FindBugs results [" + project.getName() + "]"); } catch (ProjectNotOpenException e) { setTitle("FindBugs results"); }
	public void update(final SortedBugCollection bugs, BProject project)	{		setTitle("FindBugs results");		try		{			setIconImage(ImageIO.read(ResultsFrame.class.getResource("/smallBuggy.png")));		}		catch (IOException e)		{			Log.recordBug(e);		}				currProject = project;		final ArrayList<BugInstance> bugList = new ArrayList<BugInstance>(bugs				.getCollection());		final JTable table = new JTable(new MyTableModel(bugList));		for (int i = 0; i < columnNames.length; i++)			table.getColumn(columnNames[i]).setPreferredWidth(columnWidths[i]);		table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);		table.addMouseListener(new MouseAdapter()		{			@Override			public void mouseClicked(MouseEvent evt)			{				if (evt.getClickCount() == 2)					showEditorAndHighlight(bugList.get(table.getSelectedRow()));				else				{					description.setText(bugList.get(table.getSelectedRow()).getBugPattern().getDetailHTML());					SwingUtilities.invokeLater(new Runnable()					{						public void run()						{							bottomScroll.getVerticalScrollBar().setValue(bottomScroll.getVerticalScrollBar().getMinimum());						}					});				}			} 		});		JScrollPane topScroll = new JScrollPane(table);		topScroll.setPreferredSize(new Dimension(675, 275));		description = new JEditorPane();		description.setContentType("text/html");		description.setEditable(false);		bottomScroll = new JScrollPane(description);		bottomScroll.setPreferredSize(new Dimension(675, 100));		JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT,				topScroll, bottomScroll);		setContentPane(splitPane);		pack();		setDefaultCloseOperation(HIDE_ON_CLOSE);		setVisible(true);	}