if (isSelectionEmpty())
if (selectionMode == SINGLE_TREE_SELECTION || isSelectionEmpty() || ! canPathBeAdded(path))
	public void addSelectionPath(TreePath path)  {    if (! isPathSelected(path))		{			if (isSelectionEmpty())				setSelectionPath(path);			else			{				TreePath[] temp = new TreePath[selection.length + 1];				System.arraycopy(selection, 0, temp, 0, selection.length);				temp[temp.length - 1] = path;				selection = new TreePath[temp.length];				System.arraycopy(temp, 0, selection, 0, temp.length);			}			leadPath = path;        fireValueChanged(new TreeSelectionEvent(this, path, true, leadPath,                                                path));		}  }