From 218287f7a0b8a14a7d49c1652de220b045ee68ac Mon Sep 17 00:00:00 2001 From: Basile Burg Date: Mon, 11 May 2015 05:50:35 +0200 Subject: [PATCH] process input widget, get rid of the centralized option system --- src/ce_procinput.pas | 35 ++++++++++++----------------------- 1 file changed, 12 insertions(+), 23 deletions(-) diff --git a/src/ce_procinput.pas b/src/ce_procinput.pas index ca32a8a7..c984de63 100644 --- a/src/ce_procinput.pas +++ b/src/ce_procinput.pas @@ -22,9 +22,6 @@ type fProc: TProcess; procedure sendInput; // - procedure optset_InputMru(aReader: TReader); - procedure optget_InputMru(aWriter: TWriter); - // function singleServiceName: string; procedure addProcess(aProcess: TProcess); procedure removeProcess(aProcess: TProcess); @@ -32,8 +29,6 @@ type public constructor create(aOwner: TComponent); override; destructor destroy; override; - // - procedure sesoptDeclareProperties(aFiler: TFiler); override; end; implementation @@ -42,40 +37,34 @@ implementation uses ce_symstring, LCLType; +const + OptsFname = 'procinput.txt'; + {$REGION Standard Comp/Obj -----------------------------------------------------} constructor TCEProcInputWidget.create(aOwner: TComponent); +var + fname: string; begin inherited; fMru := TCEMRUList.Create; fMru.maxCount := 25; EntitiesConnector.addSingleService(self); + fname := getCoeditDocPath + OptsFname; + if fileExists(OptsFname) then + fMru.LoadFromFile(fname); + if fMru.Count = 0 then + fMru.Insert(0, '(your input here)'); end; destructor TCEProcInputWidget.destroy; begin + // note that mru list max count is not saved. + fMru.SaveToFile(getCoeditDocPath + OptsFname); 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 ICEProcInputHandler ---------------------------------------------------} function TCEProcInputWidget.singleServiceName: string; begin