public MappingFiledRunnerDialog(Shell parent, Object in, TransMeta tr, String sname) {
    super(parent, (BaseStepMeta) in, tr, sname);
    mappingMeta = (MappingFiledRunnerMeta) in;
    transModified = false;

    // Make a copy for our own purposes...
    // This allows us to change everything directly in the classes with
    // listeners.
    // Later we need to copy it to the input class on ok()
    //
    mappingParameters = (MappingParameters) mappingMeta.getMappingParameters().clone();
    inputMappings = new ArrayList<MappingIODefinition>();
    outputMappings = new ArrayList<MappingIODefinition>();
    for (int i = 0; i < mappingMeta.getInputMappings().size(); i++)
      inputMappings.add((MappingIODefinition) mappingMeta.getInputMappings().get(i).clone());
    for (int i = 0; i < mappingMeta.getOutputMappings().size(); i++)
      outputMappings.add((MappingIODefinition) mappingMeta.getOutputMappings().get(i).clone());

    changeList = new ArrayList<ApplyChanges>();
  }