fireValueChanged(new TreeSelectionEvent(this, path, false, leadPath, path));
TreePath oldLead = leadPath; if (path!=null && leadPath!=null && path.equals(leadPath)) leadPath = null;  fireValueChanged(new TreeSelectionEvent(this, path, false, oldLead, leadPath)); insureRowContinuity();
	public void removeSelectionPath(TreePath path)  {    int index = - 1;		if (isPathSelected(path))		{			for (int i = 0; i < selection.length; i++)			{				if (selection[i].equals(path))				{					index = i;					break;				}			}			TreePath[] temp = new TreePath[selection.length - 1];			System.arraycopy(selection, 0, temp, 0, index);        System.arraycopy(selection, index + 1, temp, index, selection.length                                                            - index - 1);			selection = new TreePath[temp.length];			System.arraycopy(temp, 0, selection, 0, temp.length);        fireValueChanged(new TreeSelectionEvent(this, path, false, leadPath,                                                path));		}  }