code: int addElement(Object element, int column) {
          if (element == null) throw new NullPointerException("addCell - null argument");
          if ((column < 0) || (column > columns)) throw new IndexOutOfBoundsException("addCell - illegal column argument");
          if ( !((getObjectID(element) == CELL) || (getObjectID(element) == TABLE)) ) throw new IllegalArgumentException("addCell - only Cells or Tables allowed");
          
          int lColspan = ( (Cell.class.isInstance(element)) ? ((Cell) element).getColspan() : 1);
          
          if (!reserve(column, lColspan)) {
              return -1;
          }
          
          cells[column] = element;
          currentColumn += lColspan - 1;
          
          return column;
      }
docs: Adds an element to the <CODE>Row</CODE> at the position given.
  
  @param       element the element to add. (currently only Cells and Tables supported
  @param       column  the position where to add the cell.
  @return      the column position the <CODE>Cell</CODE> was added,
  or <CODE>-1</CODE> if the <CODE>Cell</CODE> couldn't be added.