@Override
    public void exchangeRows(int index1, int index2) {
      ContainerUtil.swapElements(myTypeParameterInfos, index1, index2);
      ContainerUtil.swapElements(myBoundValueTypeCodeFragments, index1, index2);
      ContainerUtil.swapElements(myDefaultValueTypeCodeFragments, index1, index2);
      fireTableDataChanged();
      //fireTableRowsUpdated(Math.min(index1, index2), Math.max(index1, index2));
    }
@Override
    public void exchangeRows(int index1, int index2)