public void setValueAt(Object o, int row, int col) {
        if (row != newRow) {
            if (col == 1 || o.toString().length() > 0) {
                int rowInModel = row < newRow ? row : row - 1;
                nodeAttributeModel.setValueAt(o, rowInModel, col);
            }
            return;
        } else {
            newRow = AFTER_LAST_ROW;
            fireTableRowsDeleted(row, row);
            if (col == 0 && o != null && o.toString().length() > 0) {
                nodeAttributeModel.insertRow(row, o.toString(), "");
            }
            return;
        }

    }