Ну, если применять IC, то применять.
Add(MainForm,12632971,616,147) { Width=798 Height=306 link(onCreate,12651080:doWork2,[(655,167)(655,254)(228,254)(228,153)]) } Add(Memo,13721227,364,189) { Left=55 Top=1 Width=360 Height=260 ScrollBars=2 link(onChange,7875099:doEvent1,[]) } Add(BitBtn,11517881,161,133) { Top=5 link(onClick,6497433:doEvent1,[]) } Add(Hub,7875099,420,189) { OutCount=3 link(onEvent1,5765131:doStart,[(445,195)(445,146)]) link(onEvent2,8598429:doStart,[]) link(onEvent3,8598429:doSimvol,[]) } Add(RichEdit,8140962,532,182) { Left=420 Top=1 Width=360 Height=260 ScrollBars=3 InsertCRLF=1 } Add(TimeCounter,5765131,532,140) { link(onStop,15088095:doString,[]) } Add(Hub,6417071,497,196) { link(onEvent1,8140962:doText,[]) link(onEvent2,5765131:doStop,[(522,209)(522,153)]) } Add(Hub,6497433,210,133) { link(onEvent1,7345710:doClear,[(284,139)(284,160)]) link(onEvent2,12651080:doWork1,[]) } Add(MultiElement,12651080,238,140) { link(onEvent1,14156105:doData,[(279,146)(279,216)]) link(onEvent2,7345710:doAdd,[]) } BEGIN_SDK Add(EditMulti,6229223,21,21) { EventCount=2 WorkCount=2 Width=391 Height=151 link(doWork1,8604866:doFor,[(39,27)(39,55)]) link(doWork2,14358382:doRandSeed,[(214,34)(214,69)]) } Add(For,8604866,49,49) { End=5500 link(onEvent,3176202:doFor,[]) link(onStop,6229223:onEvent1,[(88,62)(88,27)]) } Add(For,3176202,105,49) { End=9 link(onEvent,8728549:doFor,[]) link(onStop,2882879:doEvent1,[(151,62)(151,146)]) } Add(For,8728549,161,49) { End=9 link(onEvent,14358382:doRandom,[]) link(onStop,15012832:doData,[(207,62)(207,97)]) } Add(Random,14358382,231,49) { Min=224 Max=255 link(onRandom,9397542:doConvert,[]) } Add(StrCat,14624114,336,49) { Point(doClear) link(Str1,7137491:Var3,[(342,40)(376,40)(376,91)]) } Add(Convertor,9397542,273,49) { Mode=4 link(onResult,8552071:doWork2,[]) } Add(DoData,15012832,273,91) { Data=String( ) link(onEventData,8552071:doWork3,[(319,97)]) } Add(HubEx,8552071,315,49) { link(onEvent,14624114:doStrCat,[]) } Add(Hub,2882879,287,140) { link(onEvent1,15495871:doData,[(333,146)(333,111)]) link(onEvent2,14624114:doClear,[(326,153)(326,62)]) } Add(DoData,15495871,343,105) { link(onEventData,6229223:onEvent2,[(391,111)(391,34)]) link(Data,7137491:Var2,[]) } Add(GetDataEx,7137491,343,86) { Angle=3 link(Data,14624114:Result,[(342,91)]) } END_SDK Add(FormatStr,15088095,574,147) { Mask="Обработано %1 символов за %2 мсек" link(onFString,12632971:doCaption,[]) link(Str1,8598429:Count,[(580,135)(571,135)(571,236)(461,236)]) } Add(StrList,7345710,308,147) { } Add(InlineCode,8598429,455,196) { WorkPoints=#7:doStart|8:doSimvol| EventPoints=#5:onRes| VarPoints=#5:Count| DataPoints=#3:str| Code=#15:unit HiAsmUnit;|17:// Author Tad 8-)|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|13: ss:string;|9: public|29: Str, onRes : THI_Event;|52: PROCEDURE doStart(var _Data:TData; Index:Word);|53: PROCEDURE doSimvol(var _Data:TData; Index:Word);|50: PROCEDURE Count(var _Data:TData; Index:Word);|5: end;|0:|14:implementation|0:|30:PROCEDURE THiAsmClass.doStart;|0:|5:BEGIN|9: ss:='';|4:END;|0:|31:PROCEDURE THiAsmClass.doSimvol;|24:var s:string; i:integer;|5:BEGIN|26: ss:= toStringEvent(Str);|27: For i:=1 to Length(ss) do|50: if (ss[i]<>#13) or (ss[i]<>#10) then s:=s+ss[i];|23: _hi_onEvent(onRes,s);|4:END;|0:|28:PROCEDURE THiAsmClass.Count;|5:BEGIN|30: dtInteger(_Data,Length(ss));|4:END;|0:|4:end.| link(onRes,6417071:doEvent1,[]) link(str,13721227:Text,[(461,184)(405,184)(405,247)(370,247)]) } Add(DoData,14156105,308,210) { link(onEventData,13721227:doText,[]) link(Data,7345710:Text,[]) }
|