anchor.diff:    fMru.Free;
     inherited;
   end;
  +{$ENDREGION --------------------------------------------------------------------}
   
  +{$REGION ICESessionOptionsObserver ---------------------------------------------}
  +procedure TCEProcInputWidget.sesoptDeclareProperties(aFiler: TFiler);
  +begin
  +  inherited;
  +  aFiler.DefineProperty(Name + 'InputMru', @optset_InputMru, @optget_InputMru, true);
  +end;
  +
  +procedure TCEProcInputWidget.optset_InputMru(aReader: TReader);
  +begin
  +  fMru.DelimitedText := aReader.ReadString;
  +end;
  +
  +procedure TCEProcInputWidget.optget_InputMru(aWriter: TWriter);
  +begin
  +  aWriter.WriteString(fMru.DelimitedText);
  +end;
  +{$ENDREGION --------------------------------------------------------------------}
  +
  +{$REGION Process input things --------------------------------------------------}
   procedure TCEProcInputWidget.setProc(const aValue: TProcess);
   begin
     txtExeName.Caption := 'no process';
  
positive.code:     fProc: TProcess;
      procedure sendInput;
      procedure setProc(const aValue: TProcess);
    public
      constructor create(aOwner: TComponent); override;
      destructor destroy; override;
      property process: TProcess read fProc write setProc;
    end;
  
  
negative.code: uses
    ce_symstring, LCLType;
  
  {$REGION Standard Comp/Obj -----------------------------------------------------}
  constructor TCEProcInputWidget.create(aOwner: TComponent);
  begin
    inherited;
  