*Net-rooms - клиент чата в HiAsm, необходимо подключение к интернету! Make(delphi) ver(4.04 build 183) rep=137 rep=137 rep=137 Add(MainForm,2953706,308,252) { Width=200 Height=357 Caption="net-rooms" BorderStyle=5 SavePosName="net-rooms\main" Point(doVisible) link(onCreate,3722134:doEvent1,[]) } Add(StreamUnPack,15794671,462,273) { DataCount=#2:id| link(onUnPack,9142903:doEvent1,[]) } Add(IndexToChanel,7760146,546,280) { Count=9 Point(Index) link(onEvent2,8401495:doWork2,[(594,293)(594,392)(275,392)(275,356)]) link(onEvent3,9654895:doWork2,[(594,300)(594,506)(276,506)(276,475)]) link(onEvent4,12626945:doUnPack,[(594,307)(594,349)]) link(onEvent5,6641521:doUnPack,[(594,314)(594,762)]) link(onEvent6,9286146:doUnPack,[(594,321)(594,489)]) link(onEvent7,8122501:doUnPack,[(594,328)(594,580)]) link(onEvent8,5808344:doUnPack,[(594,335)(594,671)]) link(onEvent9,3513582:doText,[(590,342)(590,354)(486,354)(486,216)]) link(Index,2400098:Var2,[]) } Add(StreamUnPack,12626945,609,343) { DataCount=#2:id|5:state| link(onUnPack,1091490:doCompare,[(679,349)(679,419)]) } Add(If_else,1091490,700,413) { Op2=Integer(0) link(onTrue,8486843:doData,[(740,419)(740,342)]) link(onFalse,14834718:doCompare,[]) link(Op1,1258996:Var2,[]) } Add(HubEx,4709857,399,462) { Angle=3 link(onEvent,14241517:doWork3,[]) } Add(StreamUnPack,9286146,609,483) { DataCount=#3:rid|4:nick|4:text| link(onUnPack,3985819:doAdd,[(653,489)(653,505)(596,505)(596,531)]) } Add(MT_AddData,3985819,609,525) { Count=3 link(onAdd,120361:doMessage,[(787,531)(787,419)]) link(Data1,9286146:rid,[]) link(Data2,9286146:nick,[]) link(Data3,9286146:text,[]) } Add(ChildFormPoly,120361,903,406) { @Hint=#8:Messages| Childrens=#7:message| Selected="message" WorkScheme=1 link(onPack,11964169:doWork1,[(949,412)]) link(onTrue,9178765:doValue,[]) link(onWrite,15057491:doWork3,[(940,426)(940,259)(620,259)]) link(onUser,6317002:doWork3,[(940,433)(940,479)(457,479)]) link(id,12626945:id,[(909,390)(615,390)]) link(Name,8401495:Var1,[(916,387)(293,387)]) AddHint(-10,-121,63,13,@Hint) } BEGIN_SDK Add(EditPolyMulti,16543750,21,21) { WorkCount=#5:##add|9:doMessage|10:doQuitUser|10:doUserJoin|10:doUserList|9:doVisible|7:doCheck| EventCount=#6:onPack|6:onTrue|7:onWrite|6:onUser| DataCount=#2:id|4:Name| Point(##add) } Add(MainForm,16603502,35,105) { Left=35 Top=105 } END_SDK BEGIN_SDK Add(EditPolyMulti,4766292,21,21) { WorkCount=#5:##add|9:doMessage|10:doQuitUser|10:doUserJoin|10:doUserList|9:doVisible|7:doCheck| EventCount=#6:onPack|6:onTrue|7:onWrite|6:onUser| DataCount=#2:id|4:Name| Width=699 Height=718 Point(##add) link(##add,11854790:doWork1,[(46,27)]) link(doMessage,13589987:doEvent1,[(43,34)(43,167)]) link(doQuitUser,11319014:doCompare,[(37,41)(37,426)]) link(doUserJoin,4598355:doCompare,[(31,48)(31,496)]) link(doUserList,8710547:doCompare,[(28,55)(28,573)]) link(doVisible,15770901:doCompare,[(63,62)(63,279)]) link(doCheck,11104505:doCompare,[(40,69)(40,664)]) } Add(MainForm,6400130,259,245) { Left=35 Top=105 Width=541 Height=291 Caption="Room" SavePosName="net-rooms\message" Point(doPlaceInTaskBar) Point(Handle) link(onActivate,9436475:doWork2,[(310,251)(310,258)]) link(onDeactivate,9436475:doWork1,[(310,258)(310,251)]) link(onCreate,10803518:doEvent1,[]) } Add(ChildPanelEx,4308289,483,161) { link(onClick,4425870:doCharset,[(527,167)(527,153)(417,153)(417,258)]) } BEGIN_SDK Add(EditMultiEx,4109629,21,21) { WorkCount=#5:doAdd|13:doWidthFixBug| EventCount=#7:onClick| VarCount=#4:Text| Width=412 Height=284 link(doAdd,10647244:doAdd,[(39,27)(39,62)]) link(doWidthFixBug,7252576:doWidth,[(29,34)(29,125)]) link(Text,14933181:Var1,[(27,277)]) } Add(Panel,7252576,70,112) { Top=20 Width=433 Height=241 Align=5 BevelInner=0 Point(doWidth) } Add(RichEdit,10647244,70,56) { Left=1 Top=1 Width=431 Height=168 Align=5 ScrollBars=2 ReadOnly=0 Point(onURLClick) link(onURLClick,11148499:doShellExec,[]) } Add(WinExec,11148499,133,56) { } Add(Memo,12642970,294,196) { Left=1 Top=169 Width=431 Height=91 Align=4 ModeSp=3 ScrollBars=2 Point(onKeyDown) Point(doKeyBack) link(onKeyDown,7862059:doCheckMask,[]) } Add(If_else,1289389,154,196) { Type=2 Op2=Integer(0) link(onTrue,4129946:doEvent1,[]) } Add(Length,10357076,112,196) { link(onLength,1289389:doCompare,[]) link(Str,14933181:Var3,[(118,184)(90,184)]) } Add(KeyMask,7862059,350,203) { Ctrl=1 Key=13 link(onTrue,10357076:doLength,[(390,216)(390,268)(101,268)(101,202)]) } Add(Hub,4129946,203,196) { OutCount=3 link(onEvent1,4109629:onClick,[(284,202)(284,27)]) link(onEvent2,12642970:doClear,[]) link(onEvent3,13030514:doData,[(231,216)(231,244)]) } Add(DoData,13030514,245,238) { Data=Integer(0) link(onEventData,12642970:doKeyBack,[]) } Add(GetDataEx,14933181,84,272) { Angle=1 link(Data,12642970:Text,[(300,277)]) } END_SDK Add(Memory,11857955,308,378) { Default=Integer(1) } Add(Memory,5122211,77,91) { Point(Data) link(onData,11488785:doPack,[]) link(Data,16449049:Var2,[]) } Add(StreamPack,14112308,469,252) { DataCount=#2:id|3:rid|4:text| link(onPack,2443768:doEvent1,[]) link(id,8808549:Value,[]) link(rid,2328192:Var3,[(482,236)]) } Add(Memory,8808549,469,196) { Default=Integer(5) } Add(If_else,4728415,105,161) { link(onTrue,9829424:doValue,[]) link(Op1,10155544:Var3,[(111,145)]) } Add(GetDataEx,10155544,77,140) { link(Data,5122211:Value,[]) } Add(MT_MultiMem,9829424,154,161) { From=1 link(onData,178680:doString,[]) } Add(FormatStr,178680,203,161) { Mask="%1: %2" link(onFString,8595396:doCharset,[]) link(Str1,9829424:Value1,[(209,149)(146,149)(146,205)(160,205)]) link(Str2,9829424:Value2,[(216,149)(242,149)(242,205)(167,205)]) } Add(If_else,11319014,105,420) { link(onTrue,14820209:doGet,[]) link(Op1,3053082:Var3,[(111,404)]) } Add(FormatStr,16233882,210,420) { Mask="Quit %1 (%2)" link(onFString,11706145:doAdd,[]) } Add(HubEx,10758257,420,161) { link(onEvent,4308289:doAdd,[]) } Add(GetDataEx,7486987,77,231) { link(Data,10155544:Var2,[]) } Add(If_else,4598355,105,490) { link(onTrue,7086258:doValue,[]) link(Op1,14750711:Var3,[(111,460)]) } Add(MT_MultiMem,7086258,154,490) { From=1 Count=1 link(onData,11763026:doString,[]) } Add(FormatStr,11763026,203,490) { DataCount=1 Mask="Join %1" link(onFString,406989:doAdd,[]) link(Str1,7086258:Value1,[(209,478)(146,478)(146,534)(160,534)]) } Add(HubEx,8199234,420,420) { Angle=3 link(onEvent,10758257:doWork3,[]) } Add(GetDataEx,3053082,77,399) { link(Data,14700463:Var2,[]) } Add(StreamPack,11488785,147,91) { DataCount=#2:id|3:rid| link(onPack,8102125:doEvent1,[]) link(id,14846445:Value,[]) } Add(Memory,14846445,147,42) { Default=Integer(4) } Add(HubEx,7158816,539,91) { Angle=3 link(onEvent,4766292:onPack,[(543,27)]) } Add(If_else,8710547,105,567) { link(onTrue,1464335:doGet,[]) link(Op1,13935965:Var3,[(111,537)]) } Add(GetDataEx,14750711,77,455) { link(Data,3053082:Var2,[]) } Add(If_else,15770901,105,273) { link(onTrue,2752383:doWork2,[]) link(Op1,2328192:Var2,[]) link(Op2,16449049:Var3,[(118,40)]) } Add(GetDataEx,2328192,105,231) { Angle=3 link(Data,7486987:Var3,[]) } Add(GetDataEx,16449049,77,35) { Angle=3 link(Data,14452184:Var3,[]) } Add(TreeViewTrain,11907392,224,98) { @Hint=#50:для использования вход в руму - выход - опять вход| Left=433 Top=20 Width=100 Height=241 Align=3 Name="users" ModeSp=3 SizeSp=2 LinesRoot=1 IconsManager="parent.icons" ParentIDIndex=2 IconIndex=1 Point(onDblClick) link(onDblClick,7336474:doWork1,[]) AddHint(-3,-48,185,26,@Hint) } Add(TVT_AddNode,5301879,203,567) { TreeView="users" } Add(MT_Get,1464335,154,567) { link(onData,5301879:doAddNode,[]) } Add(MT_Get,14820209,147,420) { link(onData,4447440:doEvent1,[]) } Add(TVT_DeleteNode,16139733,266,427) { TreeView="users" } Add(Hub,4447440,189,420) { link(onEvent1,16233882:doString,[]) link(onEvent2,16139733:doDeleteNode,[]) } Add(FormatStr,11502863,553,259) { Mask="%1: %2" link(onFString,8614224:doAdd,[]) link(Str1,4766292:Name,[(559,31)(34,31)]) link(Str2,16534729:Var3,[(566,243)]) } Add(MT_AddData,406989,252,490) { Count=3 InputMT=3 link(onAdd,8199234:doWork3,[(424,496)]) link(Data2,1467564:Value,[]) link(Data3,13592105:Value,[(272,485)(307,485)]) } Add(Memory,1467564,259,448) { Default=Integer(65535) } Add(Memory,13592105,301,448) { Default=Integer(1) } Add(MT_AddData,8614224,609,259) { Count=3 InputMT=3 link(onAdd,8199234:doWork1,[(646,265)(646,426)]) link(Data2,8209458:Result,[]) link(Data3,5999487:Value,[(629,247)(664,247)]) } Add(Memory,5999487,658,203) { Default=Integer(0) } Add(Hub,2443768,511,252) { link(onEvent1,13980578:doWork2,[]) link(onEvent2,11502863:doString,[]) } Add(GetDataEx,16534729,483,238) { link(Data,4308289:Text,[]) } Add(MT_AddData,11706145,259,420) { Count=3 InputMT=3 link(onAdd,8199234:doWork2,[]) link(Data2,2465841:Value,[]) link(Data3,11857955:Value,[(279,415)(314,415)]) } Add(Memory,2465841,266,378) { Default=Integer(255) } Add(Hub,10803518,301,259) { link(onEvent1,4308289:doWidthFixBug,[(322,265)(322,174)]) link(onEvent2,6400130:doPlaceInTaskBar,[(323,272)(323,300)(248,300)(248,279)]) } Add(Charset,8595396,252,161) { Type=7 link(onCharset,10758257:doWork2,[]) } Add(Charset,4425870,427,252) { Type=6 link(onCharset,14112308:doPack,[]) link(Text,16534729:Var1,[(433,243)]) } Add(Hub,13589987,56,161) { link(onEvent1,4728415:doCompare,[]) link(onEvent2,6319661:doWork2,[]) } Add(HubEx,2752383,140,273) { link(onEvent,16006696:doWork1,[]) } Add(If_else,11104505,105,658) { link(onTrue,1164943:doData,[]) link(Op1,13935965:Var2,[(111,610)(83,610)]) link(Op2,14452184:Var2,[(118,531)(55,531)]) } Add(GetDataEx,13935965,77,532) { link(Data,14750711:Var2,[]) } Add(GetDataEx,14452184,49,35) { Angle=3 link(Data,4766292:id,[(27,40)]) } Add(Hub,8102125,196,91) { OutCount=3 link(onEvent1,7158816:doWork2,[(210,97)]) link(onEvent2,11907392:doClear,[]) link(onEvent3,6319661:doWork1,[(222,111)(222,141)(144,141)]) } Add(HubEx,6319661,140,168) { Angle=1 link(onEvent,2752383:doWork1,[]) } Add(MultiElement,16006696,161,273) { elink(1753052) link(onEvent1,4766292:onWrite,[(234,279)(234,41)]) link(Data1,6400130:Handle,[(167,261)(199,261)(199,295)(265,295)]) link(Data2,7282179:Value,[(174,261)(199,261)(199,308)(384,308)]) } Add(ToolBar,6252269,119,336) { Width=533 Align=2 Buttons=['=Exit room'=[ZIP3604000078DA73F235636100033320D600620128666450804840E591C1FFFFFF698EF7EFDF4F91FE9D3B7732ECD8B1038CC9D1BF79F366068627E719366DDA04C61B376E244ADFBA75EB18D6AE5D0BC620FD30BC7AF56A3026A47FC58A1560F5CB972F67907A7E05052F5DBA14456D4639A6FE458B16318801D52E5CB890C1E4F52D143C7FFE7CB8BA862910FD81D1FF192CEDFE33282B43C4E7CC99C3A0F7EA26C3ECD9B319FCDF3F40C13367CE24A87FDAB4690CAEEFEE314C9D3A9521EBF333143C79F26482EE9F30610243CCC7C70CFDFDFD0CADDFDFA2E0DEDE5E82E1D7D5D5C550F2E52543676727C3FCDF9F50707B7B3B41FD2D2D2D0C3D3FDE3134373783F1EEFF3FE1B8B1B191A0FEBABA3A86C5BF3F83716D6D2D18D7D4D480F557575713D45F515181622708979595817169692941FDC5C5C50C454545383135F22600A30C8A9F],'=Join whit this room'=[ZIP7606000078DA73F235636100033320D600620128666450804840E591C1FFFFFF698EF7EFDF4F91FE9D3B7732ECD8B1038CC9D1BF79F366068627E719366DDA04C61B376E244ADFBA75EB18D6AE5D0BC620FD30BC7AF56A3026A47FC58A1560F5CB972F67907A7E05052F5DBA14AB1ED65B883859B46811831850EDC2850B194C5EDF42C1F3E7CF87AB63EE6260605E028CDEFD0C60FD6C5F2166CC99338741EFD54D86D9B36733F8BF7F808267CE9C4950FFB469D3185CDFDD63983A752A43D6E7672878F2E4C904DD3F61C20486988F8F19FAFBFB195ABFBF45C1BDBDBD04C3AFABAB8BA1E4CB4B86CECE4E86F9BF3FA1E0F6F67682FA5B5A5A187A7EBC63686E6E06E3DDFF7FC27163632341FD7575750C8B7F7F06E3DADA5A30AEA9A901EBAFAEAE26A8BFA2A202C54E102E2B2B03E3D2D25282FA8B8B8B198A8A8A70627AE45D18C6072831D3C8C888C1C1C181C1CBCB8B2A6681CC49484860C8CBCBA3C84C1000B90B6416281D4C9A34096C2625E6B9B9B981CD009975E8D021304DA99F417E8499498DF29CD47805009B32CC65]] link(onClick,5943625:doEvent,[]) } Add(Memory,3402499,483,287) { Default=Integer(6) } Add(StreamPack,8002665,483,336) { DataCount=#2:id|3:rid| link(onPack,4463019:doWork2,[]) link(id,3402499:Value,[]) link(rid,4624951:Var3,[(496,327)]) } Add(HubEx,13980578,539,252) { Angle=3 link(onEvent,7158816:doWork3,[]) } Add(GetDataEx,14700463,77,322) { link(Data,7486987:Var2,[]) } Add(IndexToChanel,5943625,168,336) { link(onEvent1,8002665:doPack,[]) link(onEvent2,15836687:doPack,[(431,349)(431,440)]) } Add(GetDataEx,4624951,455,322) { Angle=3 link(Data,14700463:Var3,[]) } Add(StreamPack,15836687,448,434) { DataCount=#2:id|3:rid|4:pass| link(onPack,4463019:doWork3,[(543,440)]) link(id,798123:Value,[]) link(rid,4624951:Var2,[]) link(pass,9298795:Value,[(468,422)(482,422)(482,485)(496,485)]) } Add(Memory,798123,448,378) { Default=Integer(3) } Add(HubEx,4463019,539,336) { Angle=3 link(onEvent,13980578:doWork3,[]) } Add(Memory,9298795,490,441) { Default=String() } Add(MultiElement,7336474,273,105) { link(onEvent1,4766292:onUser,[(567,111)(567,48)]) link(Data1,11907392:Select,[(279,86)(265,86)(265,140)(230,140)]) } BEGIN_SDK Add(EditMulti,12992706,21,21) { EventCount=1 WorkCount=1 DataCount=1 Width=272 Height=151 link(doWork1,1044414:doEnum,[(31,27)(31,111)]) } Add(TVT_EnumNodes,1044414,42,105) { TreeView="parent.parent.users" link(onEnum,15947011:doValue,[]) link(ID,6846499:Value,[]) } Add(MT_MultiMem,15947011,91,105) { Count=4 link(onData,2765071:doCompare,[]) } Add(If_else,2765071,140,105) { Type=2 Op2=Integer(0) link(onTrue,1750479:doCompare,[]) link(Op1,15947011:Value3,[(146,93)(128,93)(128,149)(111,149)]) } Add(If_else,1750479,189,105) { link(onTrue,9005227:doSelectNode,[]) link(Op1,15947011:Value2,[(195,93)(178,93)(178,154)(104,154)]) link(Op2,12992706:Data1,[(202,38)(27,38)]) } Add(Memory,6846499,42,56) { Default=Integer(0) } Add(TVT_SelectNode,9005227,238,105) { TreeView="parent.parent.users" link(onSelectNode,12992706:onEvent1,[(282,111)(282,27)]) link(ID,15947011:Value1,[(244,93)(229,93)(229,160)(97,160)]) } END_SDK Add(ChanelToIndex,9436475,329,245) { link(onIndex,7282179:doValue,[]) } Add(Memory,7282179,378,245) { } Add(DoData,1164943,154,658) { Data=Integer(1) link(onEventData,9757412:doEvent1,[]) } Add(Hub,9757412,203,658) { link(onEvent1,4766292:onTrue,[(704,664)(704,34)]) link(onEvent2,11854790:doWork3,[(229,671)(229,696)(46,696)]) } Add(HubEx,11854790,42,91) { link(onEvent,5122211:doValue,[]) } Add(SelectColor,8209458,616,203) { Color=32768 } END_SDK Add(DoData,8486843,749,336) { Data=String(message) link(onEventData,7266064:doEvent1,[]) } Add(StreamUnPack,8122501,609,574) { DataCount=#2:id|4:nick|5:state| link(onUnPack,9503831:doAdd,[(653,580)(653,604)(597,604)(597,629)]) } Add(MT_AddData,9503831,609,623) { Count=3 link(onAdd,120361:doQuitUser,[(791,629)(791,426)]) link(Data1,8122501:id,[]) link(Data2,8122501:nick,[]) link(Data3,8122501:state,[]) } Add(StreamUnPack,5808344,609,665) { DataCount=#2:id|4:nick| link(onUnPack,3206621:doAdd,[(653,671)(653,695)(597,695)(597,720)]) } Add(MT_AddData,3206621,609,714) { link(onAdd,120361:doUserJoin,[(796,720)(796,433)]) link(Data1,5808344:id,[]) link(Data2,5808344:nick,[]) } Add(StreamUnPack,6641521,609,756) { DataCount=#2:id|4:nick|5:level| link(onUnPack,15023517:doAdd,[(653,762)(653,786)(597,786)(597,811)]) } Add(MT_AddData,15023517,609,805) { Count=3 link(onAdd,120361:doUserList,[(798,811)(798,440)]) link(Data1,6641521:id,[]) link(Data2,6641521:nick,[]) link(Data3,6641521:level,[]) } Add(If_else,14834718,742,420) { Op2=Integer(3) link(onTrue,120361:doVisible,[(781,426)(781,447)]) link(Op1,1258996:Var3,[(748,383)]) } Add(GetDataEx,1258996,700,378) { Angle=3 link(Data,12626945:state,[(622,383)]) } Add(ChildForm,9654895,287,462) { @Hint=#12:Rooms window| FirstUsage=0 link(onEvent1,4709857:doWork2,[]) AddHint(-27,-27,87,13,@Hint) } BEGIN_SDK Add(EditMulti,1906414,21,21) { EventCount=1 WorkCount=2 VarCount=1 Width=587 Height=480 link(doWork1,1002886:doVisible,[(87,27)(87,111)]) link(doWork2,8295125:doUnPack,[(28,34)(28,426)]) } Add(MainForm,1002886,112,77) { Left=35 Top=105 Width=539 Height=291 Caption="Rooms tree" SavePosName="net-rooms\\rooms" Point(doVisible) link(onCreate,14594029:doWork2,[]) } Add(StreamPack,13139462,203,91) { DataCount=#2:id|3:rid| link(onPack,1396515:doWork2,[]) link(id,5465855:Value,[]) link(rid,13921092:Value,[(216,79)(251,79)]) } Add(Memory,5465855,203,35) { Default=Integer(2) } Add(Memory,13921092,245,35) { Default=Integer(-1) } Add(Button,4156929,126,259) { Left=465 Top=235 Caption="join" link(onClick,14112308:doPack,[]) } Add(StreamPack,14112308,182,259) { DataCount=#2:id|3:rid|4:pass| link(onPack,13702821:doWork3,[(354,265)]) link(id,8808549:Value,[]) link(rid,917371:Var3,[(195,173)]) link(pass,11662581:Text,[(202,247)(454,247)]) } Add(Memory,8808549,182,203) { Default=Integer(3) } Add(TreeViewTrain,8905470,112,126) { Top=25 Width=165 Height=241 Align=1 Name="rooms" ModeSp=3 SizeSp=2 IconsManager="icons" CaptionIndex=2 ParentIDIndex=1 IconIndex=3 Numeric=0 Point(onExpand) link(onClick,3838375:doSeparateMT,[]) } Add(IconsManager,4222913,308,49) { Name="icons" Icons=['group'=[ZIP7E05000078DAED90310E824010453F71C1856DA88CA5A5DCC233587202134B2F60614969E915388417B0B43476949496E3EC0C6437315CC0F0C923BCCF4F3600247C9525F86E71488115802DC31536D0DE679720647C3E59D8A6C4BAAD50770DAAF689FDA39757F58B70EC08979E70FD106E44A0999999BF21FB8D89E3DD59C992A35E1479AE85F16BF6B16077E243115C8BC8A588F79CC11DDB783E9B71ACBAF6A7BB94FB54D7E2D15A0AD6E873649D4D85FF01BD11384FB108DC49F1F902076123BB]] } Add(HubEx,1396515,350,91) { Angle=3 link(onEvent,1906414:onEvent1,[(354,27)]) } Add(ChildForm,5700899,112,189) { FirstUsage=0 link(onEvent1,13702821:doWork2,[]) link(Data1,917371:Var2,[]) } BEGIN_SDK Add(EditMulti,275870,21,21) { EventCount=1 WorkCount=1 DataCount=1 Width=321 Height=235 link(doWork1,13401321:doShowModal,[(42,27)(42,83)]) } Add(MainForm,13401321,77,49) { Left=35 Top=105 Width=425 Height=221 Caption="Add new room" BorderStyle=3 Point(doShowModal) } Add(Edit,10623258,210,35) { Left=70 Top=15 Width=325 Text="" } Add(Memo,8387342,217,77) { Left=70 Top=45 Width=325 Height=105 } Add(Button,6267782,35,196) { Left=340 Top=160 Caption="add" link(onClick,1864170:doEvent1,[]) } Add(StreamPack,14112308,196,203) { DataCount=#2:id|3:rid|4:name|5:title|4:pass| link(onPack,275870:onEvent1,[(322,209)(322,27)]) link(id,8808549:Value,[]) link(rid,16379139:Value,[]) link(name,10623258:Text,[]) link(title,8387342:Text,[]) link(pass,14015049:Text,[(230,191)(286,191)]) } Add(Memory,8808549,196,147) { Default=Integer(9) } Add(Edit,14015049,280,147) { Left=70 Top=160 Width=250 Text="" } Add(Hub,1864170,77,196) { link(onEvent1,12865603:doData,[(101,202)(101,139)]) link(onEvent2,14112308:doPack,[]) } Add(Memory,16379139,203,133) { Default=Integer(0) } Add(If_else,1702599,154,133) { Type=2 Op2=Integer(0) link(onTrue,16379139:doValue,[]) link(onFalse,16379139:doClear,[]) } Add(DoData,12865603,112,133) { link(onEventData,1702599:doCompare,[]) link(Data,275870:Data1,[(118,109)(27,109)]) } Add(Label,1542533,35,14) { Left=30 Top=15 Width=32 Height=17 Caption="Name" } Add(Label,12217973,35,49) { Left=35 Top=50 Width=24 Height=17 Caption="Title" } Add(Label,3889929,35,161) { Left=15 Top=160 Height=17 Caption="Password" } END_SDK Add(GetDataEx,917371,112,168) { link(Data,8905470:Select,[]) } Add(HubEx,13702821,350,189) { Angle=3 link(onEvent,1396515:doWork3,[]) } Add(StreamUnPack,8295125,49,420) { DataCount=#4:name|5:title|2:id|3:pid|5:users|5:flags|4:recv|4:send|5:owner| link(onUnPack,13240138:doString,[]) } Add(TVT_AddNode,234345,280,420) { TreeView="rooms" } Add(MT_AddData,3454817,189,420) { Count=9 InputMT=3 link(onAdd,234345:doAddNode,[]) link(Data1,8295125:id,[(195,408)(90,408)(90,464)(69,464)]) link(Data2,8295125:pid,[(202,408)(97,408)(97,464)(76,464)]) link(Data4,14977738:Value,[]) link(Data5,8295125:title,[(223,408)(132,408)(132,464)(62,464)]) link(Data6,8295125:flags,[(230,408)(149,408)(149,464)(90,464)]) link(Data7,8295125:recv,[(237,408)(167,408)(167,464)(97,464)]) link(Data8,8295125:send,[(244,408)(174,408)(174,464)(104,464)]) link(Data9,8295125:owner,[(251,408)(181,408)(181,464)(111,464)]) } Add(Memory,14977738,210,371) { Default=Integer(0) } Add(FormatStr,13240138,133,420) { Mask="%1 [%2]" link(onFString,3454817:doAdd,[]) link(Str1,8295125:name,[(139,408)(86,408)(86,464)(55,464)]) link(Str2,8295125:users,[(146,408)(104,408)(104,464)(83,464)]) } Add(ToolBar,14953204,42,35) { Width=531 Height=25 Align=2 Buttons=['=Обновить список комнат'=[ZIP3605000078DA73F23563650003331606060D202D00C58C0C1C10094606867B7C100C6283F05A2F0686BD510C0CD78A81E240FCBC8581E15C3607C3FF391C0C5B830418F6261B329CABB664D89BEDC470AEC589616F7510C3B1966486FF20F87F148FE2513C94311F318097839D9D8317CE05F2408003CE05C901D540047861121CECBC100A660A44821DC687B2A07C6E180BAA8D879B0FA21EAA8D930D2A01359095859903D98D8C4C2C6C5C487C0646564E1E2E825E0300C54FF4CC],'=Добавить комнату'=[ZIP3605000078DAED8F3D1282301844377F1092C663D8DA7080F49EC2AB587A154BAE606949494B4999327E495022DEC0C9322FF076871970E75E21A597C091EE8715069D0706389B89CF91E70508E31D617E202C133123F8056EF0B88D1EC3E411E83A5DE90C954AE59FE8F6C1773A58AB94104272CE184B4E456C3835D97321F97BB7EB3B7CF358C8D2AD32C6946E4D533AAD0DB179ABB56E4DB9EBB47F424EDFBB15B4FEFEDE3E2FDD80FE22]] link(onClick,14590696:doEvent,[]) } Add(Label,4560524,539,49) { Left=185 Top=35 Width=24 Height=17 Caption="Title" } Add(Memo,8968212,490,133) { Left=220 Top=35 Width=300 Height=60 Color=-16777201 Ctl3D=1 ReadOnly=0 } Add(Label,11416994,539,91) { Left=175 Top=120 Height=17 Caption="Receive: " } Add(Label,16516826,539,119) { Left=175 Top=140 Height=17 Caption="Transmit: " } Add(Label,11526202,539,147) { Left=180 Top=165 Width=41 Height=17 Caption="Owner: " } Add(Label,19718,539,203) { Left=185 Top=185 Width=32 Height=17 Caption="Flags:" } Add(MT_MultiData,3838375,371,126) { Count=9 link(onData5,8968212:doText,[]) link(onData6,9751453:doEvent1,[]) link(onData7,12530458:doText,[(422,174)(422,265)]) link(onData8,12769842:doText,[(422,181)(422,293)]) link(onData9,4940018:doText,[(422,188)(422,321)]) } Add(Label,3038561,441,161) { Left=230 Top=185 Width=13 Height=17 Caption="---" } Add(Edit,11662581,448,203) { Left=220 Top=205 Width=300 Text="" Point(doVisible) } Add(Hub,9751453,413,161) { link(onEvent1,3038561:doText,[]) link(onEvent2,11662581:doVisible,[(436,174)(436,223)]) } Add(IndexToChanel,14590696,112,35) { link(onEvent1,14982937:doEvent1,[]) link(onEvent2,5700899:doWork1,[(154,48)(154,227)(100,227)(100,195)]) } Add(HubEx,14594029,182,91) { link(onEvent,13139462:doPack,[]) } Add(Hub,14982937,161,35) { link(onEvent1,8905470:doClear,[(186,41)(186,28)(99,28)(99,132)]) link(onEvent2,14594029:doWork1,[(186,48)]) } Add(Label,12530458,441,259) { Left=230 Top=120 Width=10 Height=17 Caption="0" } Add(Label,12769842,441,287) { Left=230 Top=140 Width=10 Height=17 Caption="0" } Add(Label,4940018,441,315) { Left=230 Top=165 Width=13 Height=17 Caption="---" } END_SDK Add(Hub,9142903,511,273) { OutCount=3 link(onEvent1,6982383:doString,[]) link(onEvent2,7760146:doEvent,[]) link(onEvent3,7493329:doEvent,[(532,293)(532,541)(100,541)(100,580)]) } Add(FormatStr,6982383,609,273) { DataCount=1 Mask="Receive pack id = %1" link(onFString,9234265:doWork2,[(851,279)(851,223)]) link(Str1,2400098:Var3,[(615,264)]) } Add(ChildForm,8401495,287,343) { @Hint=#20:Authorization window| link(onEvent1,14241517:doWork2,[]) link(onEvent2,1733258:doClear,[(355,356)(355,146)]) link(onEvent3,12699640:doWork1,[(392,363)(392,279)]) AddHint(-45,-28,115,13,@Hint) } BEGIN_SDK Add(EditMulti,7362897,21,21) { EventCount=3 WorkCount=3 VarCount=1 Width=384 Height=375 link(doWork1,807801:doVisible,[(49,27)(49,153)]) link(doWork2,11352902:doUnPack,[(39,34)(39,314)]) link(doWork3,16369920:doWork1,[(221,41)]) link(Var1,6314896:Var1,[(27,222)]) } Add(MainForm,807801,126,119) { Left=35 Top=105 Width=264 Height=127 Visible=1 Caption="Authorization" BorderStyle=3 Point(doVisible) link(onCreate,4462567:doEvent1,[(165,139)(165,55)]) } Add(Label,6670609,119,42) { Left=10 Top=15 Width=32 Height=17 Layout="grid" WidthScale=20 HeightScale=40 Caption="Name" } Add(Label,5273766,119,84) { Left=10 Top=40 Height=17 Layout="grid" Caption="Password" } Add(Edit,10579029,308,42) { Left=70 Top=10 Width=170 Layout="grid" WidthScale=80 Text="" link(onChange,2741567:doWrite,[(352,48)(352,34)(229,34)(229,62)]) } Add(Edit,16309138,315,91) { Left=70 Top=35 Width=170 Layout="grid" Text="" Password=0 link(onChange,6101029:doWrite,[(359,97)(359,88)(264,88)(264,111)]) } Add(Button,3717094,63,140) { Left=185 Top=65 Caption="Cancel" link(onClick,761567:doWork2,[]) } Add(Button,2098753,119,231) { Left=125 Top=65 Caption="OK" link(onClick,10857999:doEvent1,[]) } Add(StreamPack,10236165,301,238) { DataCount=#2:id|4:nick|4:pass| link(onPack,7590924:doWork2,[]) link(id,13232115:Value,[]) link(nick,6314896:Var2,[]) link(pass,16309138:Text,[]) } Add(Memory,13232115,301,182) { Default=Integer(1) } Add(GetDataEx,6314896,308,217) { link(Data,10579029:Text,[]) } Add(StreamUnPack,11352902,63,308) { DataCount=#2:id|5:state| link(onUnPack,3776228:doEvent,[]) } Add(IndexToChanel,3776228,119,308) { Count=3 Point(Index) link(onEvent1,3745261:doEvent1,[]) link(onEvent2,10731249:doMessage,[]) link(onEvent3,9238950:doMessage,[(163,328)(163,363)]) link(Index,11352902:state,[(125,296)(101,296)(101,352)(76,352)]) } Add(Message,10731249,175,315) { Message="Incorrect login or password!" Caption="Error auth" Icon=1 } Add(Message,9238950,175,357) { Message="Enter nick already in use!" Caption="Error auth" Icon=1 } Add(StreamPack,9433970,301,322) { DataCount=#2:id| link(onPack,7590924:doWork3,[(369,328)]) link(id,7997894:Value,[]) } Add(Memory,7997894,301,273) { Default=Integer(100) } Add(HubEx,7590924,365,238) { Angle=3 link(onEvent,7362897:onEvent1,[(369,27)]) } Add(Registry,2741567,238,49) { HKey=1 Key="Software\\net-rooms" Value="login" link(onRead,10579029:doText2,[]) } Add(Registry,6101029,273,98) { HKey=1 Key="Software\\net-rooms" Value="pass" link(onRead,16309138:doText2,[]) } Add(Hub,4462567,175,49) { OutCount=3 link(onEvent1,2741567:doRead,[]) link(onEvent2,6101029:doRead,[(205,62)(205,104)]) link(onEvent3,16760795:doCompare,[(196,69)(196,153)]) } Add(HubEx,16369920,217,238) { link(onEvent,10236165:doPack,[]) } Add(Hub,3745261,231,308) { OutCount=3 link(onEvent1,3872641:doWork3,[(255,314)]) link(onEvent2,7362897:onEvent2,[(379,321)(379,34)]) link(onEvent3,9433970:doPack,[]) } Add(HubEx,761567,105,140) { link(onEvent,807801:doClose,[]) } Add(If_else,16760795,238,147) { Type=5 Op2=String() link(onTrue,1570867:doCompare,[]) link(Op1,2741567:RData,[]) } Add(If_else,1570867,280,147) { Type=5 Op2=String() link(onTrue,7591949:doWork2,[]) link(Op1,6101029:RData,[(286,139)(279,139)]) } Add(Hub,10857999,189,231) { OutCount=3 link(onEvent1,7591949:doWork3,[(388,237)]) link(onEvent2,16369920:doWork2,[]) link(onEvent3,3872641:doWork1,[(255,251)]) } Add(HubEx,7591949,384,147) { Angle=3 link(onEvent,7362897:onEvent3,[(388,41)]) } Add(HubEx,3872641,251,272) { Angle=2 link(onEvent,761567:doWork3,[(109,278)]) } END_SDK Add(ToolBar,9209228,756,98) { Width=204 Height=25 Align=2 Name="mainbar" Buttons=[] } Add(HubEx,14241517,399,343) { Angle=3 link(onEvent,3522157:doWork3,[]) } Add(CMD_ToolBar,12641047,126,329) { CommandCenter="commands" ToolBar="mainbar" Menu=#3:add|6:addgrp|1:-|4:auth|1:-|5:rooms|1:-|7:console| link(onAction,11074508:doCase,[]) } Add(CommandCenter,10752573,756,140) { Name="commands" Commands=['auth=Authorization on the server'=[ZIP7E03000078DA8D93310F014110859F289454A2A320F103844A222AA151A9B4128944A341E5A2A015B59A8E4E7414A2D0FA01C41F506A249E4C32D9ECDEC9EDEDEEDDBD7DDFCDDCEC1D10E1914880730ADD28900490E7A0840C44FFB54A1401AD56CC4A0FB3542FE516FDE67ADEBB9DF716C2DBED72C86E2E89DF45784145CC9C4DFFA055A66821A37675356E2B62A5E4229D464111F7D504E1A304A1818A20BE7550C40C4125C8AC88D8DC9C7D8BAC05FC8350B91E36EC6290EA492CDFCAD0C9592EDCAD51C5144DD6DC1A13F1CD4D10CB2F1986F46B082BAEEAAE5FA368E65AF9A0AF5A5FF3F204A627C0F38009C791FFC83D06BCE2C03BCD7B9E27331AE9D9DDA9FDC68BEB6FE0F101BE3C65CEAB],'console=Show console window'=[ZIP7E03000078DAAD92314BC34014C75FE992C12183480687061C1A7030E060A083061C0C3818E860C04182A07492E020A120D249FAB9EA8710BA3864E890314387F3775CAD472D52C597CB235C7EFFFBBF7777222D1ED715B227B76D911D11E9F232251D31F33A8EDBF21F111E841B0EE0EC32ABDEAB7258AE198F65715F0CEE06F94D9E5D65693F45A2F9AAE27BFA364558CF6AA2691AF52D50191E06DEEFF8FE9E4FF6763D77DB75B61CBB66788C167CADF9F0308C8E223293413740654BE0A9CDF0B8C3276749729E90E39318E18A049E760CAFE60A9E8EF2EB455FA88C84C2BEF8E127AF142B63573C1464FA42820B7FB585A32DA8C1E6E3D378F43C1ABF8CC94870C1825E68DF94448F361FF522E0C9EB848C0B85E14849EC98AB6F8E98335AF22CF5F3FA9C8ECD07FB81DECF5E44D990E9454A0B2BC3E6D7C75CD1A63EEF59CD1DA0A4E515DA70FCE1322B25F2D4FABD4E6BB4F603C5C115BE],'rooms=Rooms tree'=[ZIP7E05000078DA75D3216CDB5010C6F1AF60D2505534A94523AE466BDE6A30350A69C38D26452A31330A4AD582443208AC0AA601079954098B0A1269A0C8A80AB2BB6EAC56E9C0EDFF9CA68DB6F95E2EC945BF3CDF3BD9D2166B6747BCBFD79777D207499F487ED247AD7E77F1794B6FB1F95DBDFAA55E6FF5E1165F66B39966CB99AAEFDF9457A6AC300D7253776E6A4D4C5E6A92CB6429C553291C494124F96DE5257E811FE387F808DFC19E90C7F843FC01DEC3EFE2D937CBF0037C17DFC27B58B9C40B2FBCF06AABC42FF063FC101FE13BF813FC31FE107F80F7F0BBF80A5FE073FC1C3FC1A7F8149FE0637C880FF03EDEF08637BCE10D6F78B796AC296BC48A58EDDA57F8029FE3E7F809DEED9EA213748C0ED101DAC797F8057E8C1FE2237C47EE044B4E30E504234E1071823627B09C7DB30C3FC077F12DBCD7301DA656E217F8317E888FF01DFC09FE187F883FC07BF85D7C852FF0397E8E9FE0537C8A4FF0313EC407781F6F78C31BDEF086373C0D2D69684A43231A8A68A84D4315BEC0E7F8397E824FF10DB78F4AFC023FC60FF111BE836FB87DD83757861FE0BBF816DEC3370D28B712BFC08FF1433C93B68E9A06945B852FF0397E8E9FE0194EC3807206919103B24BB648CF0DA76140CFCFCF7A7C7CD4FDFDBDEEEEEE747B7BAB9B9B1BA569AAABAB2B2549A27EBFAF388E757676A6300C757A7AAA200874747424DFF7B5BFBFAFBDBD3D6D6F6FABFA6DFA7A7DCD73DC5B3D43F5A364AB0FB7EA564C7F47F512EBFAA92C5C6CD4FCCB8A57B6AE7FD4E1EA3AAA0717AEBEACE3ADEE9F9F5F5C6CD44F4FF546EB9A2BFC7A584743FD1A3FEBFAF22DEABA5F5F828BBCD49BF1CF795DF75AE7D6FF73D6902EFE000C395A91],'exit=Exit'=[ZIP7E05000078DA636060044201010620C9C190C1CAC020C6C0C0A001C4402106050688381830322000949D9DFD9F2123FD2F434ACA2F8684F81F0CF1401C1DFD952134F4234370D07B8600FFB70CDE3EAF189C9D9F32D8DA3E64B0B4BACF606E7197C1C4E43683AEEE35060DF5CB0C4A4AE71914E4CF32484B9F6610163ECAC0C1BE8F8195750FC3281805A380FE8095752E51EAFEFFFFCF208E0AFE11E6B3B27170F2888B8B0808098B80E55939D83885BF028B1821A87AB00007033F5C3F50808B8907C93C9000B2F92C9C1C9C487C066E164E764E389F818F41182A00E23308F0337C85AA00F2C15E01522CAC4033FE91EA9FFF50D0D8F8FF7F03E3FFFF0798FFFF7FC0FEFFFF07FEFFFF7FC84330880D1203C981D480D4C200004A867929],'add=Add contact'=[ZIPF609000078DAED55B14AC350143D49135BADDAB456E3220494A21404111717159C147FC0C9B1DD55903A38886311846C424104411CDD3AE8E2EAE207F40314DC1DAE276D4ADA989A14152AE4C0C9CBBD79F7E5E5BE700EA040856180630A251D28006E6CA1A40155E6E69D1C69A135CFC1BA020F8A4B627A1BC86FE460EC1471B8A9A15C2EE3F648C3CA7916CBF60C962E8B58BC5E45F16E0B0BF7BB28D44B987BDCC7ECD331EA67093C5FA868D414BCDE00075782D30741F5857CFB408C18310613221294D63BAE4D4CE4346308FDC4592FD67DEB22A38C8DA64786952422C6E3095ED554D25B656A32DFBC33DD29AD18BED87410F45C6F6FC6747A0034D6BEF22413C034F05E21F7DCB1E2D759ABA5B3DA9F1F9DED1C5F00EDA8474FAD166AB650EF851A2ED4FBF61AFFAA9EDED34F7DAFBE45EDA3D0F3847E29F440A1170A3D51E88D428F6CE6E999DFED6320EAE9DD42AFEFFA66FABFD0EBC3EABBFA478F177ABDD0F383FBD74360DA7B09A88F2450A1F54E9D9FBFFF7E3BF49FE9A8FFA9CE7C02FF5E2D2D],'addgrp=Add group'=[ZIP7E05000078DAED94B14FC24018C5DFE7812D2A526A05B46A0145A19BFF81716464747531716464D081B1890B232B23232389894947464656C60E0E1DCFD7428CCAEAC8BBFCDA7BEFEEBEDC2D1F201C96057E4D3C658112802661842A5679A23BC1863407DA316E270BB4C6735446211E7B1ADD20468D7EB888106A8D0AE7565FC30A38EF680C273106CC87644E82486340BA8B18BDE41FD393FB50A33DD378663E66ADEE48A3F5A0D11BC408923D5C9FCE628C22423F9EC66887113AD325C6ACDB0E97E8B35E7A57ADB1D5565BFD9FFCBF523BC66F6FB69A462693F9F6D756C1A118AEFD8D67DB3693467A5029B75CB6D3A4917A47599EB7DA929C5065E5D6EB97A9BF4ABCE52896773DA98AD484BECC5AA7CA3DCB8B9C5F249E721C25523911AEE70A56B1681F3922C7257AC3CCE5CC3D56C8C8FE41FED0F777D4EAB29215D9959F4F11D978AD9FB49437F2FA420AC458A3D660938F77F6A2CFA41F015FC6DE86BF],'remove=Remove node'=[ZIP7E03000078DA636060044201010630C86066601003D21A400C12520062460609B09C0333C3281805A30009FC8782F77FFFFF3F0EA40FFFFEFFFFF1F7FFFF3F3EFFFFFFC7F9FFFFFFC8FFFFFFCF1E4283F80F81E2873F03D5FE85E803002AB23C97],'reqauth=Request auth'=[ZIP3E05000078DA63606004421111062029C1A0C1CAC020C6C0C0A001C422501A240E06AC0C831B041831041A33069930475871C53A0890A417A825CA8637DE4928CE5130D5538A24BDD1767CF14E22699ED2193E7279C16A24E98D75104C72154BF796CD0952298DD627496FAAA7744EA0727E887A598C414DB239497A337C64F382548A22B4AA124D6B532C88D798EC2E91EDAF5814AE5516A30FB4B43ECDAA29CB8E78BD404B4BA2742BE28D6A922D9AB3EC5B731C89D75B100AF4A97E65BC5143BA4D6BAE5367A11BA97AAB93CC1A336C811A89D70B0C2288FAA9F56110D457EE43B7246D6464E4E0E0E0E5E5458646A0AE848484BCBC3C52B5036D046AACABAB9B346912503B497ADDDCDC805A801A0F1D3A0424497536D0A910ED340ACFFF40F0871D3BFEC18C1D83E4FEF1A3AA05F1FFCBFFFF0F008ABE9491],'forward=Port forward'=[ZIP7E03000078DA63606004420101062029C190C1CCC020C6C0C0A001C440210605068838083830330C0EF0FF5836ADB500D553510B1E7122B54054E27112A62C412FA029206805495A88318DC23027DB0A32D20F4E03FF3330FC01E17A06867FF6402CCFC0309F9F81A18F9D81E118101F06B21F02E903CD10FC10A8F601107FA8876000BF25694C]] link(onRefresh,12436427:doSetState,[]) link(onAction,5117538:doCase,[(800,153)(800,209)]) } Add(MultiElementEx,12436427,812,140) { @Hint=#15:Commands enable| link(Data,7214141:Var3,[(818,82)]) AddHint(11,-28,102,13,@Hint) } BEGIN_SDK Add(EditMultiEx,5280806,21,21) { WorkCount=#10:doSetState| DataCount=#4:Data| Width=643 Height=172 link(doSetState,14270878:doSetState,[(35,27)(35,76)]) } Add(CMD_State,14270878,49,70) { CommandCenter="parent.commands" Name="auth" Enabled=1 link(onSetState,4392681:doSetState,[]) } Add(CMD_State,4392681,98,70) { CommandCenter="parent.commands" Name="console" Enabled=1 link(onSetState,3484180:doSetState,[]) } Add(CMD_State,3484180,147,70) { CommandCenter="parent.commands" Name="rooms" Enabled=1 link(onSetState,7405161:doSetState,[]) } Add(CMD_State,7405161,196,70) { CommandCenter="parent.commands" Name="exit" Enabled=1 link(onSetState,12264263:doSetState,[]) } Add(CMD_State,12264263,245,70) { CommandCenter="parent.commands" Name="add" Enabled=1 link(onSetState,9155427:doSetState,[]) } Add(CMD_State,9155427,294,70) { CommandCenter="parent.commands" Name="addgrp" Enabled=1 link(onSetState,10101693:doEvent1,[]) } Add(CMD_State,11275779,546,70) { CommandCenter="parent.commands" Name="reqauth" link(onSetState,14425451:doSetState,[]) link(Enabled,12502453:Var2,[]) } Add(GetDataEx,12502453,553,49) { Angle=3 link(Data,11026895:Var3,[]) } Add(CMD_State,14425451,595,70) { CommandCenter="parent.commands" Name="forward" link(Enabled,12502453:Var3,[(608,54)]) } Add(MT_MultiData,11195068,399,70) { From=2 Count=1 Point(Data) link(onData1,6300859:doCompare,[]) link(Data,5509544:Var2,[]) } Add(GetDataEx,5509544,399,49) { Angle=3 link(Data,5280806:Data,[(27,54)]) } Add(If_else,6300859,448,70) { Type=2 Op2=Integer(0) link(onTrue,9494992:doData,[]) } Add(DoData,9494992,497,70) { link(onEventData,11275779:doSetState,[]) } Add(Hub,10101693,343,70) { link(onEvent1,11195068:doSeparateMT,[]) link(onEvent2,9969811:doFirstNode,[(385,83)(385,139)]) } Add(GetDataEx,11026895,462,49) { Angle=3 link(Data,5509544:Var3,[]) } Add(CMD_State,15652897,455,133) { CommandCenter="parent.commands" Name="remove" link(Enabled,10707140:Var2,[]) } Add(TVT_FirstNode,9969811,399,133) { TreeView="parent.users" link(onEmpty,15652897:doSetState,[(443,146)(443,139)]) link(ID,10707140:Var1,[(405,117)]) } Add(GetDataEx,10707140,462,112) { link(Data,11026895:Var2,[]) } END_SDK Add(Case,12816566,231,336) { Value=String(auth) link(onTrue,8401495:doWork1,[]) } Add(ChildPanel,12699640,413,273) { @Hint=#10:connection| link(onEvent1,15794671:doUnPack,[]) link(onEvent2,8401495:doWork3,[(455,286)(455,382)(278,382)(278,363)]) AddHint(-23,-49,68,13,@Hint) } BEGIN_SDK Add(EditMulti,15357749,21,21) { EventCount=2 WorkCount=2 Width=482 Height=494 link(doWork1,13877415:doWork1,[(67,27)]) link(doWork2,1532983:doWork1,[(59,34)]) } Add(Panel,2551493,98,196) { Top=311 Width=204 Height=17 Align=4 BevelInner=0 BevelOuter=1 } Add(LED,4872624,210,154) { Left=1 Top=1 Width=15 Height=15 } Add(Hub,6339350,168,63) { link(onEvent1,12382992:doData,[]) link(onEvent2,4872624:doOff,[(199,76)(199,167)]) } Add(Timer,10387450,259,63) { Interval=10000 link(onTimer,13877415:doWork3,[(303,69)(303,48)]) } Add(DoData,12382992,210,63) { Data=Integer(1) link(onEventData,10387450:doTimer,[]) } Add(TCP_Client,15018950,84,126) { Port=3425 IP="93.81.240.87" DataType=3 link(onRead,15357749:onEvent1,[(145,132)(145,27)]) link(onConnect,11909522:doEvent1,[]) link(onDisconnect,6339350:doEvent1,[(154,146)(154,69)]) } Add(HubEx,13877415,63,42) { Angle=1 link(onEvent,15018950:doOpen,[(67,132)]) } Add(Label,15467043,147,196) { Left=20 Top=1 Width=36 Height=16 Caption="state..." } Add(Hub,11909522,161,133) { OutCount=3 link(onEvent1,10387450:doStop,[(249,139)(249,76)]) link(onEvent2,15357749:onEvent2,[(309,146)(309,34)]) link(onEvent3,4872624:doOn,[(193,153)(193,174)]) } Add(InfoTip,8487082,252,224) { Info=#13:192.168.1.132| Width=148 Height=18 } Add(Timer,5204523,63,273) { link(onTimer,5157583:doEvent1,[]) } Add(If_else,13590831,140,280) { Op2=Integer(1) link(onTrue,7509950:doData,[]) link(Op1,15018950:Active,[(146,252)(90,252)]) } Add(MouseEvent,7591446,196,231) { } Add(ChangeMon,7509950,196,280) { link(onData,544804:doData,[]) link(Data,7591446:MouseX,[]) } Add(DoData,544804,245,280) { Data=Integer(1) link(onEventData,15551929:doValue,[]) } Add(Hub,5157583,105,273) { OutCount=3 link(onEvent1,15551929:doClear,[(284,279)(284,293)]) link(onEvent2,13590831:doCompare,[]) link(onEvent3,4898312:doCompare,[(129,293)(129,356)]) } Add(Counter,14400768,287,350) { link(onNext,8794068:doCompare,[]) } Add(If_else,4898312,140,350) { Op2=Integer(0) link(onTrue,14400768:doNext,[]) link(onFalse,6574593:doWork2,[]) link(Op1,15551929:Value,[(146,327)(300,327)]) } Add(Hub,10278645,196,357) { link(onEvent1,2189209:doData,[(247,363)(247,468)]) link(onEvent2,14400768:doReset,[]) } Add(DoData,2189209,287,462) { Data=Integer(0) link(onEventData,13558154:doWork2,[]) } Add(Memory,15551929,294,280) { Default=Integer(0) } Add(If_else,8794068,336,350) { Op2=Integer(20) link(onTrue,2610150:doData,[]) } Add(DoData,2610150,392,350) { Data=Integer(1) link(onEventData,13558154:doWork1,[(435,356)(435,390)(326,390)]) } Add(ChangeMon,11357722,336,462) { link(onData,9433970:doPack,[]) } Add(HubEx,13558154,322,462) { link(onEvent,11357722:doData,[]) } Add(StreamPack,9433970,385,462) { DataCount=#2:id|5:state| link(onPack,1532983:doWork3,[(422,468)(422,503)(59,503)]) link(id,7997894:Value,[]) } Add(Memory,7997894,385,413) { Default=Integer(109) } Add(HubEx,1532983,55,140) { link(onEvent,15018950:doSend,[]) } Add(InfoTip,2393339,252,203) { Info=#13:192.168.1.136| Width=148 Height=18 } Add(KeyHook,11510973,63,392) { link(onKeyDown,10594058:doEvent1,[]) } Add(HubEx,6574593,182,357) { link(onEvent,10278645:doEvent1,[]) } Add(InfoTip,8117925,252,182) { Info=#12:93.81.240.87| Width=148 Height=18 } Add(Hub,10594058,112,392) { OutCount=4 link(onEvent1,6574593:doWork3,[(186,398)]) link(onEvent2,13474276:doWork2,[(140,405)(140,412)]) link(onEvent3,9510905:doStop,[(140,412)(140,461)]) link(onEvent4,9510905:doTimer,[(144,419)(144,454)]) } Add(GlobalVar,9648497,203,399) { Name="clv" Data=Integer(0) } Add(ChanelToIndex,13474276,154,399) { link(onIndex,9648497:doValue,[]) } Add(Timer,9510905,154,448) { Interval=1400 Enable=1 AutoStop=1 link(onTimer,13474276:doWork1,[(198,454)(198,394)(141,394)(141,405)]) } END_SDK Add(Hub,3085441,315,1057) { link(onEvent1,1062266:doData,[(343,1063)(343,874)]) link(onEvent2,4158628:In,[]) } Add(Case,5117538,812,203) { Value=String(console) link(onNextCase,11573344:doCase,[]) link(onTrue,9234265:doWork1,[]) } Add(ChildForm,9234265,861,210) { @Hint=#14:Console window| AddHint(-39,-35,92,13,@Hint) } BEGIN_SDK Add(EditMulti,11836598,21,21) { WorkCount=2 link(doWork1,8795665:doVisible,[(112,27)(112,132)]) link(doWork2,15453568:doAdd,[]) } Add(MainForm,8795665,140,98) { Left=35 Top=105 Visible=1 Caption="Net console" Point(doVisible) } Add(Memo,15453568,140,28) { Top=154 Width=314 Height=55 Align=5 Color=0 Font=[MS Sans Serif,8,0,16777215,1] ScrollBars=3 ReadOnly=0 } END_SDK Add(Hub,12340741,315,952) { link(onEvent1,1062266:doForwardOK,[(343,958)(343,867)]) link(onEvent2,11221648:In,[]) } Add(Case,11074508,175,336) { Value=String(rooms) link(onNextCase,12816566:doCase,[]) link(onTrue,11870268:doWork2,[]) } Add(TreeViewTrain,1733258,371,140) { Top=25 Width=204 Height=286 Align=5 Name="users" IconsManager="icons" DragDrop=0 CaptionIndex=1 ParentIDIndex=3 IconIndex=2 Numeric=0 Point(onDblClick) Point(onMouseUp) Point(DropAccept) Point(onDrop) link(onClick,13562607:doEvent1,[(411,146)(411,139)]) link(onDblClick,6317002:doWork1,[(457,153)]) link(onMouseUp,15937954:doCompare,[(413,160)(413,97)]) link(DropAccept,13483892:Accept,[]) link(onDrop,13483892:doDrop,[(415,167)(415,179)(360,179)(360,83)]) } Add(TrayIcon,15830874,91,203) { Hint="HiAsm net-rooms" FormHook=0 ShowWORemoveIcon=0 Point(doAddTrayIcon) Point(doShowBallonTip) link(onClick,8025962:doCompare,[]) link(onDblClick,6621950:doData,[(135,216)(135,286)]) } Add(DoData,6621950,147,280) { Data=Integer(1) link(onEventData,2953706:doVisible,[]) } Add(If_else,8025962,147,203) { Op2=Integer(1) link(onTrue,4744850:doPopupHere,[]) } Add(StreamUnPack,12312322,175,1001) { DataCount=#2:id|3:fid|4:data| link(onUnPack,6413345:doAdd,[(219,1007)(219,1035)(163,1035)(163,1063)]) } Add(CMD_PopupMenu,4744850,196,203) { CommandCenter="commands" Menu=#5:rooms|1:-|4:exit| link(onAction,8105783:doCase,[]) } Add(Case,8105783,245,210) { Value=String(exit) link(onNextCase,9068524:doCase,[]) link(onTrue,2953706:doClose,[(293,223)(293,279)]) } Add(Case,9068524,308,210) { Value=String(rooms) link(onTrue,11870268:doWork1,[(348,223)(348,194)(221,194)]) } Add(Hub,3722134,364,266) { link(onEvent1,4698353:doWork3,[(473,272)]) link(onEvent2,15830874:doAddTrayIcon,[(385,279)(385,299)(79,299)(79,230)]) } Add(HubEx,4698353,469,140) { link(onEvent,10752573:doRefresh,[]) } Add(HubEx,11870268,217,343) { Angle=1 link(onEvent,9654895:doWork1,[(221,468)]) } Add(LineBreak,5241597,630,126) { Caption="fdt" link(Out,13796970:doData,[(666,132)(666,125)]) Primary=[4158628,-280,938] } Add(Case,11573344,910,203) { Value=String(add) link(onNextCase,6451159:doCase,[]) link(onTrue,956894:doWork1,[]) } Add(ChildForm,956894,959,210) { @Hint=#8:Add user| FirstUsage=0 link(onEvent1,11219735:doWork1,[(998,216)]) AddHint(-19,-35,57,13,@Hint) } BEGIN_SDK Add(EditMulti,4022994,21,21) { EventCount=1 WorkCount=1 Width=398 Height=235 link(doWork1,6336305:doVisible,[(71,27)(71,167)]) } Add(MainForm,6336305,98,133) { Left=35 Top=105 Width=354 Height=93 Visible=1 Caption="Add user" Point(doVisible) } Add(Edit,16219053,280,63) { Left=10 Top=10 Width=325 Text="forum-bot" } Add(StreamPack,679079,273,168) { DataCount=#2:id|4:name|4:type|6:parent| link(onPack,4022994:onEvent1,[(344,174)(344,27)]) link(id,879432:Value,[]) link(name,16219053:Text,[]) link(type,6861427:Var1,[(293,152)]) link(parent,6861427:Var2,[]) } Add(Button,6271772,189,168) { Left=10 Top=35 Caption="ok" link(onClick,6589246:doEvent1,[]) } Add(Memory,879432,273,105) { Default=Integer(101) } Add(Memory,11713433,315,105) { Default=Integer(0) } Add(GetDataEx,6861427,294,147) { Angle=1 link(Data,11713433:Value,[(321,152)]) } Add(Button,14060345,35,154) { Left=70 Top=35 Caption="cancel" link(onClick,3585210:doWork2,[]) } Add(Hub,6589246,238,168) { link(onEvent1,679079:doPack,[]) link(onEvent2,3585210:doWork3,[(264,181)(264,208)(81,208)]) } Add(HubEx,3585210,77,154) { link(onEvent,6336305:doClose,[]) } END_SDK Add(GetDataEx,2400098,546,259) { Angle=3 link(Data,7317013:Var3,[(502,264)(502,313)]) } Add(HubEx,11964169,945,462) { Angle=2 link(onEvent,4709857:doWork1,[]) } Add(StreamUnPack,9281698,175,574) { DataCount=#2:id|4:name|5:state|4:type|6:parent| link(onUnPack,10478142:doCalc,[]) } Add(IndexToChanel,7493329,119,574) { Count=8 Point(Index) link(onEvent1,9281698:doUnPack,[]) link(onEvent3,13563732:doUnPack,[(163,594)(163,650)]) link(onEvent4,15694136:doUnPack,[(163,601)(163,720)]) link(onEvent5,11457346:doUnPack,[(163,608)(163,783)]) link(onEvent6,8713160:doWork1,[(163,615)(163,860)]) link(onEvent7,8919322:doUnPack,[(163,622)(163,909)]) link(onEvent8,12312322:doUnPack,[(163,629)(163,1007)]) link(Index,8084689:reCalc,[]) } Add(MathParse,8084689,112,497) { MathStr="%1 - 100" ResultType=0 Point(reCalc) link(X1,7317013:Var1,[(118,313)]) } Add(GetDataEx,7317013,462,308) { link(Data,15794671:id,[]) } Add(MathParse,10478142,238,574) { MathStr="(1 - %2) + %1" ResultType=0 link(onResult,8980193:doAdd,[]) link(X1,9281698:state,[(244,562)(220,562)(220,618)(195,618)]) link(X2,9281698:type,[(251,562)(227,562)(227,618)(202,618)]) } Add(MT_AddData,8980193,294,574) { Count=4 InputMT=3 link(onAdd,5760306:doAddNode,[]) link(Data1,9281698:id,[(300,562)(240,562)(240,618)(181,618)]) link(Data2,9281698:name,[(307,562)(247,562)(247,618)(188,618)]) link(Data4,9281698:parent,[(321,562)(265,562)(265,618)(209,618)]) } Add(TVT_AddNode,5760306,350,574) { TreeView="users" } Add(IconsManager,12475253,301,84) { Name="icons" Icons=['group'=[ZIP7E05000078DAED90310E824010453F71C1856DA88CA5A5DCC233587202134B2F60614969E915388417B0B43476949496E3EC0C6437315CC0F0C923BCCF4F3600247C9525F86E71488115802DC31536D0DE679720647C3E59D8A6C4BAAD50770DAAF689FDA39757F58B70EC08979E70FD106E44A0999999BF21FB8D89E3DD59C992A35E1479AE85F16BF6B16077E243115C8BC8A588F79CC11DDB783E9B71ACBAF6A7BB94FB54D7E2D15A0AD6E873649D4D85FF01BD11384FB108DC49F1F902076123BB],'offline'=[ZIPF609000078DAED55416AC240147DB1634D2B49E6067555BA14440A52B0204528DD4991DEC05BB44BE9A20B29DEC09D3B9782F4020ADDBBE8CAB53798FE3F1D93498C315916FCCC23F933F98F99C7E43FC0410952829E2E0665E01A30790D03017CD0DC0DCF116AF8FB4E8783289C286F366FD16ADDA1D37940B7FB885EEF19FDFE0B86C3778C469F984C26984EA798CD6698CFE7582C16582E9758AFD7D86C3638C5294EF1FF42299536ED0A8EF330179EC723CA7D9F479407018F302F5D723831B688513099C794C2B01199CF94262732BF7A513D338C42CA0A15973D29423E2E77846B6DC8DA8EDE5010CBA59422714037D400F869EFE32D48C7F6358E789FAD69CE7B914B7E2EABF3E716EA663E33A8478F092A8946A3F96D388ED52BEAE11AC977B38FA3F5D4FF3592EF79EBC93B3492EF39F62FC9AB14F9D11EC8C7B8FEE9908E8774CBABE34E2B5B331BF67A9A0E3BAD6CCD6CD8EB87EA6DCD56AB95224F56E4CFFA49FE9DA923CF935F6B90B7C7CE4C9EAFC8DBF59AA93FAA5FF2ECACBF591B17B94345EE4EDA1D2A707752B5C83A73817F30F3CCDB2BEA2B097C55A8A7A481FB4CDB02F5995FF86C750A],'online'=[ZIPF609000078DAED95BF4AC44010C6BFCD6DBCF3EFE5CE536C848072280141C4C646052BC517F009925E0541D0422C0F4148270822086269778536B6363EC03D80856F307EC929B968D444114FC8C06C982133ECCE26DF0F50306059E0B304D704EAC04B6CC3D54083B9A92047B7D17E2F3485C854148FAD01B5E52AAC7507DB2B1A9EE7E1724763FEA882397F1CB3270E66CE17E05CAD62FA7A03F5A68BC9DB4D4CDCEDA27958C0FDB181D6A9C2E305B0752638B811341E04B9E5965BF79A48E23F6A76ACA10D57B5D5832C71258ACD377D51568303FD7DBDAA8894F15081AB512A465D46476AB1CEED186963B3A33818416BF1BDEF9793FD692FEE719DB5C39E4BFAD7AFCE0FB69EE07EDAABA7560B355BA8F7420D17EAFD6B8F7F554FF664A9FF686E69E728649E909742060A592864A2908D4246867932F3B37D74453DD92D647DECCCE4BF90F55FD5C7E647C60B592F64FE77BEC3A4FA4CF2F5C7F57E9633FF54679E0169A50F21],'away'=[ZIPF609000078DAED553148C340147DA929B6566D5AAB56452828A55210445C9C149C143727A70E1DDA5D9D041D9C8B2064115110C1C5D1CDC12EAE22B8B8153A09A20E0A82E0F7E772314D4D9A16073BF48597CBFFB97FB9DC1DEF010A02D034701B422108A40119A750508112E732468E9982D94F40810DC58E932B4062310E6D358BAD251591CC1A72B91CF2F93C8AC522E6F66398D5C7317394C5F4D93CB217CB98BA5C47FAAA80C9F206266EB6717B1040E544C1D339B0794AD8BB2694EE09E58747DC555F507D7EC7DBC7273AE8A083F60011598FDDB20D492269422413032A464CFCC4A3F2B2E23113328E1B639318DF949EA0FD9D9812EDEFEB8D286199F28DB52EBE077AC2F60C878706AD790A98319A8D4335C55FCC8A0B770D467FF375C749A7CEA6C4980B6ACB5B71686C4703EA75FDF5FA3EACB39E947D1C5BCF3A4DACD7C47A2FDEB3467BB2997AD6F786AD5F3D7B83271BD5B3EF907994BD5153AFBBAD2FFB1DF9ACFFB1F55DF63A62BF24F63E620F24F642624F24F6469167AF749B2FDAA99E3D9BD8EB1DFFC8FE4FECF17EF58EF5637F27F67962BFF73BAFAE7371A96F49BEFEB95E6FE59FFFAA33DF9AC598F8],'noauth'=[ZIPF609000078DAED54CF6B1A41147E269BC636E8CE7F504FB54741623114FC1124528B975842FF839C43EF110C926DA582E82208128B22C80AC2422028B6845E3DE4EE21278FA220150499CEDBEEAEABBBA8D7828F79CCBC99F9BE7DEFF38D0036D8034280CD76B83C007803A0C62EB8E400BEB3BDB7B8C7DC05FFEEADB3E3E3777072F21E4E4F237076F601CECF3FC1C5C567B8BDFD0AB95C1E6AB51A489204B22C43BBDD866EB70BBD5E0FFAFD3E0C0603D8D9CE76F6FF19A5D46ADBCEA1BDD063CEE1C0B1889D4E1C8B98E771E8F1DE2B34DB12DB829143320752722A1B237322A51A3332E7D1CBA37D959123E490810F1C84D3F9106EE3EC86840CE92809F14B3121845B29D0AE6B00F01C307B92B7F6D1F5B22FFFCFBAB6D6DEE7F3914020E00987C3413607FD7E7FD0EBF57ADC6E37D9844D2653623A2DD06C364773B982E2B8BEBAFAF2841C9BF0994C966A562A95F535F2602E9BF0464CA552D5D7E57285C662B18DF87ABDA16356D78944626DFEEC9CE4F3229DCD66743299D0F178ACE305E11B8DC7E31F590EA8AB4947569F582C96949A5103A6234DA5D214F7AAD5BA923F9EDDDCA49F9063158F1AA3150A453A9FCFE97038A4D3E9D4A425F259E9A0E1F1DCCAF0FB1A7F341A35E1B57359BEB7C4DFDDFD5066FC0EF69645FDFADDC9E40F6DB56485ABD3F9491F1F7FEB67A80DEB47937EACE744ACB1D1689A727878E8B0FEC92BB9E3BD4D3DD06CB696F0980BFB6D83DBBE1F63DF687D1889443CDBE28D3DACF53EBEC96DF1829011B577A7F6D2DA9A47AFA5D0F38AFF3A9442492BE7A5D02860F06B29F4177820F7A3]] } Add(HubEx,3522157,399,280) { link(onEvent,12699640:doWork2,[]) } Add(CMD_PopupMenu,5167573,518,91) { CommandCenter="commands" Menu=#7:reqauth|7:forward|1:-|6:remove| link(onAction,9583535:doCase,[]) } Add(If_else,15937954,462,91) { Op2=Integer(1) link(onTrue,5167573:doPopupHere,[]) } Add(Case,6451159,1008,203) { Value=String(addgrp) link(onTrue,12678737:doWork1,[]) } Add(MultiElementEx,9583535,574,98) { link(onPack,6955018:doWork2,[]) link(onOpenForward,13796970:##add,[]) link(user,7235550:Var2,[]) } BEGIN_SDK Add(EditMultiEx,16585131,21,21) { WorkCount=#6:doCase| EventCount=#6:onPack|13:onOpenForward| DataCount=#4:user| Width=587 Height=221 link(doCase,3326103:doCase,[(35,27)(35,76)]) } Add(Case,3326103,49,70) { Value=String(reqauth) link(onNextCase,5432907:doCase,[]) link(onTrue,1119145:doPack,[(117,83)(117,174)]) } Add(StreamPack,1119145,140,168) { DataCount=#2:id|4:user|4:text| link(onPack,8793372:doWork2,[(228,174)(228,27)]) link(id,10352893:Value,[]) link(user,10482363:Var2,[]) link(text,13346537:Value,[(160,156)(195,156)]) } Add(Memory,10352893,140,105) { Default=Integer(103) } Add(Memory,13346537,189,105) { Default=String(please auth me!) } Add(Case,5432907,238,70) { Value=String(remove) link(onNextCase,13274374:doCase,[]) link(onTrue,12241083:doPack,[(282,83)(282,174)]) } Add(StreamPack,12241083,294,168) { DataCount=#2:id|4:user| link(onPack,8793372:doWork3,[(354,174)]) link(id,3310211:Value,[]) link(user,10482363:Var3,[(307,145)]) } Add(Memory,3310211,294,105) { Default=Integer(102) } Add(GetDataEx,10482363,147,140) { link(Data,16585131:user,[(153,49)(27,49)]) } Add(HubEx,8793372,350,21) { link(onEvent,16585131:onPack,[]) } Add(Case,13274374,364,70) { Value=String(forward) link(onTrue,168124:doNext,[]) } Add(Counter,168124,420,77) { Max=10000 link(onNext,8042932:doAdd,[]) } Add(MT_Add,8042932,469,77) { Data=String(base) InputMT=1 link(onAdd,16585131:onOpenForward,[(530,83)(530,34)]) } END_SDK Add(ChildFormEx,15694136,175,714) { link(onPack,12170285:doWork2,[]) } BEGIN_SDK Add(EditMultiEx,8428985,21,21) { WorkCount=#8:doUnPack| EventCount=#6:onPack| Width=349 Height=277 link(doUnPack,12505410:doEvent1,[(49,27)(49,55)]) } Add(MainForm,3909421,112,168) { Left=35 Top=105 Width=392 Height=146 Visible=1 Caption="Auth confirm" Point(doVisible) } Add(StreamUnPack,10734905,112,49) { DataCount=#2:id|4:nick|4:text| link(onUnPack,10010610:doEvent1,[]) } Add(Hub,12505410,77,49) { link(onEvent1,10734905:doUnPack,[]) link(onEvent2,3909421:doVisible,[(101,62)(101,202)]) } Add(Label,13242009,294,49) { Left=15 Top=15 Width=29 Height=17 Caption="User:" } Add(Label,12675839,245,49) { Left=55 Top=15 Width=13 Height=17 Caption="---" link(Text,10734905:nick,[(251,37)(105,37)(105,93)(125,93)]) } Add(Edit,7526785,245,105) { Left=15 Top=40 Width=350 Text="" ReadOnly=0 link(Str,10734905:text,[(251,93)(132,93)]) } Add(Button,1914015,210,231) { Left=310 Top=80 Caption="Accept" link(onClick,12426938:doEvent1,[]) } Add(Button,2443546,56,189) { Left=245 Top=80 Caption="Drop" link(onClick,13698462:doWork2,[]) } Add(Hub,10010610,175,49) { link(onEvent1,12675839:doText,[]) link(onEvent2,7526785:doText,[(217,62)(217,111)]) } Add(StreamPack,7156848,287,231) { DataCount=#2:id|4:user| link(onPack,8428985:onPack,[(345,237)(345,27)]) link(id,4077115:Value,[]) link(user,10734905:id,[(300,156)(118,156)]) } Add(Memory,4077115,287,175) { Default=Integer(104) } Add(Hub,12426938,259,231) { link(onEvent1,7156848:doPack,[]) link(onEvent2,13698462:doWork3,[(285,244)(285,270)(95,270)]) } Add(HubEx,13698462,91,189) { link(onEvent,3909421:doClose,[]) } END_SDK Add(StreamUnPack,11457346,175,777) { DataCount=#2:id|5:state| link(onUnPack,7299500:doOperation,[]) } Add(MT_AddData,14038083,273,777) { Count=4 Data=Integer(0) InputMT=3 link(onAdd,569518:doWork1,[]) link(Data1,2307935:Var1,[(279,765)(265,765)]) link(Data2,7815537:Value,[]) link(Data3,7299500:Result,[(293,765)(260,765)(260,821)(230,821)]) link(Data4,10317847:Value,[(300,762)(335,762)]) } Add(Math,7299500,224,777) { Op2=1 ResultType=0 link(onResult,14038083:doAdd,[]) link(Op1,7004472:Var2,[]) } Add(Memory,7815537,280,721) { Default=String() } Add(MT_AddData,6413345,175,1057) { Count=3 link(onAdd,14989976:doCompare,[]) link(Data1,4154654:Var1,[(181,1045)]) link(Data2,12312322:data,[(188,1045)(195,1045)]) link(Data3,12312322:id,[(195,1045)(181,1045)]) } Add(ChildForm,12678737,1057,210) { @Hint=#9:Add group| FirstUsage=0 link(onEvent1,11219735:doWork2,[(1101,216)(1101,468)]) AddHint(-24,-34,64,13,@Hint) } BEGIN_SDK Add(EditMulti,4022994,21,21) { EventCount=1 WorkCount=1 Width=363 Height=235 link(doWork1,6336305:doVisible,[(59,27)(59,244)]) } Add(MainForm,6336305,238,210) { Left=35 Top=105 Width=306 Height=99 Visible=1 Caption="Add group" BorderStyle=3 Point(doVisible) } Add(Edit,16219053,245,63) { Left=45 Top=10 Width=235 Text="" } Add(StreamPack,679079,238,168) { DataCount=#2:id|4:name|4:type|6:parent| link(onPack,4022994:onEvent1,[(344,174)(344,27)]) link(id,879432:Value,[]) link(name,16219053:Text,[]) link(type,11713433:Value,[(258,152)(286,152)]) link(parent,12014451:Value,[(265,152)(335,152)]) } Add(Button,6271772,154,168) { Left=225 Top=40 Caption="ok" link(onClick,15341418:doEvent1,[]) } Add(Memory,879432,238,105) { Default=Integer(101) } Add(Memory,11713433,280,105) { Default=Integer(1) } Add(Label,609286,119,77) { Left=5 Top=15 Width=32 Height=17 Caption="Name" } Add(Memory,12014451,329,105) { Default=Integer(0) } Add(Hub,15341418,203,168) { link(onEvent1,679079:doPack,[]) link(onEvent2,6120614:doWork1,[(227,181)]) } Add(Button,9334085,154,203) { Left=165 Top=40 Caption="cancel" link(onClick,6120614:doWork2,[]) } Add(HubEx,6120614,223,203) { Angle=1 link(onEvent,6336305:doClose,[(227,237)]) } END_SDK Add(StreamUnPack,13563732,175,644) { DataCount=#2:id|5:state| link(onUnPack,9337364:doCompare,[]) } Add(If_else,9337364,231,644) { Op2=Integer(0) link(onTrue,1992200:doDeleteNode,[]) link(Op1,13563732:state,[(237,632)(213,632)(213,688)(188,688)]) } Add(TVT_DeleteNode,1992200,294,644) { TreeView="users" link(Data,13563732:id,[(300,632)(273,632)(273,696)(181,696)]) } Add(ChildFormPoly,428863,553,203) { Childrens=#7:private| Selected="private" WorkScheme=1 link(onPack,8472763:doWork2,[]) link(onShow,3513582:doReset,[(592,216)(592,240)(496,240)(496,223)]) link(onWrite,15057491:doWork2,[]) } BEGIN_SDK Add(EditPolyMulti,14893348,21,21) { WorkCount=#5:##add|9:doCompare|6:doShow|9:doGetData| EventCount=#6:onPack|6:onShow|7:onWrite| Point(##add) } Add(MainForm,11545787,35,105) { Left=35 Top=105 } END_SDK BEGIN_SDK Add(EditPolyMulti,7822675,21,21) { WorkCount=#5:##add|9:doCompare|6:doShow|9:doGetData| EventCount=#6:onPack|6:onShow|7:onWrite| Width=741 Height=942 Point(##add) link(##add,7764395:doValue,[(59,27)(59,76)]) link(doCompare,14760435:doValue,[(39,34)(39,188)]) link(doShow,11085422:doCompare,[(39,41)(39,286)]) link(doGetData,4029501:Cable,[(35,48)(35,426)]) } Add(MainForm,5759751,322,140) { Left=35 Top=105 Caption="" Icon=[ZIP3E05000078DA63606004421111062029C1A0C1CAC020C6C0C0A001C422501A240E06AC0C831B041831041A33069930475871C53A0890A417A825CA8637DE4928CE5130D5538A24BDD1767CF14E22699ED2193E7279C16A24E98D75104C72154BF796CD0952298DD627496FAAA7744EA0727E887A598C414DB239497A337C64F382548A22B4AA124D6B532C88D798EC2E91EDAF5814AE5516A30FB4B43ECDAA29CB8E78BD404B4BA2742BE28D6A922D9AB3EC5B731C89D75B100AF4A97E65BC5143BA4D6BAE5367A11BA97AAB93CC1A336C811A89D70B0C2288FAA9F56110D457EE43B7246D6464E4E0E0E0E5E5458646A0AE848484BCBC3C52B5036D046AACABAB9B346912503B497ADDDCDC805A801A0F1D3A0424497536D0A910ED340ACFFF40F0871D3BFEC18C1D83E4FEF1A3AA05F1FFCBFFFF0F008ABE9491] Point(doPlaceInTaskBar) Point(Handle) link(onActivate,7715331:doWork2,[(362,146)(362,153)]) link(onDeactivate,7715331:doWork1,[(362,153)(362,146)]) link(onCreate,5759751:doPlaceInTaskBar,[(366,160)(366,192)(309,192)(309,174)]) } Add(MT_MultiMem,7764395,161,70) { From=1 link(onData,849133:doData,[(240,76)(240,146)]) } Add(DoData,849133,266,140) { link(onEventData,5759751:doCaption,[]) link(Data,6277326:Var2,[]) } Add(RichEdit,4462604,280,252) { Left=235 Top=60 Align=5 ScrollBars=2 ReadOnly=0 Point(onURLClick) link(onURLClick,11148499:doShellExec,[]) } Add(Memo,11451848,560,56) { Left=300 Top=75 Align=4 ModeSp=3 SizeSp=2 ScrollBars=2 Point(onKeyDown) Point(doKeyBack) link(onKeyDown,7862059:doCheckMask,[]) } Add(StreamPack,8476968,546,168) { DataCount=#2:id|4:nick|4:text| link(onPack,11004749:doWork2,[]) link(id,12979085:Value,[]) link(nick,6277326:Var3,[(559,124)(559,124)]) } Add(Memory,12979085,546,119) { Default=Integer(8) } Add(If_else,1662663,119,182) { link(onTrue,3389843:doEvent1,[]) link(Op1,14760435:Value1,[(125,170)(93,170)(93,226)(62,226)]) link(Op2,282116:Var2,[]) } Add(GetDataEx,7809686,168,119) { link(Data,7764395:Value2,[]) } Add(Hub,3389843,168,182) { link(onEvent1,11973929:doWork2,[]) link(onEvent2,16205541:doCharset,[(194,195)(194,227)(142,227)(142,258)]) } Add(Hub,12633388,511,49) { OutCount=4 link(onEvent1,14319971:doCharset,[(537,55)(537,115)(478,115)(478,174)]) link(onEvent2,5834642:doString,[(535,62)(535,258)]) link(onEvent3,11451848:doClear,[]) link(onEvent4,4384809:doData,[(532,76)(532,90)(485,90)(485,104)]) } Add(If_else,11085422,49,280) { link(onTrue,10666144:doEvent1,[]) link(Op1,4129906:Var2,[]) } Add(HubEx,11973929,196,182) { link(onEvent,1753052:doWork1,[]) } Add(Hub,10666144,112,280) { link(onEvent1,11973929:doWork3,[(200,286)]) link(onEvent2,1821744:doData,[]) } Add(DoData,1821744,154,287) { Data=Integer(1) link(onEventData,7822675:onShow,[(695,293)(695,34)]) } Add(MT_MultiMem,14760435,56,182) { link(onData,1662663:doCompare,[]) } Add(GetDataEx,6277326,266,119) { Angle=3 link(Data,7809686:Var3,[]) } Add(GetDataEx,282116,126,119) { Angle=1 link(Data,7809686:Var1,[]) } Add(MT_AddData,406989,595,252) { Count=3 InputMT=3 link(onAdd,10252720:doWork1,[(632,258)(632,243)(270,243)]) link(Data2,8209458:Result,[]) link(Data3,13592105:Value,[(615,240)(650,240)]) } Add(Memory,13592105,644,196) { Default=Integer(0) } Add(GetDataEx,1355846,560,154) { link(Data,11451848:Text,[]) } Add(HubEx,10252720,266,252) { link(onEvent,4462604:doAdd,[]) } Add(Time,14193288,441,189) { Format="h:m:s" } Add(FormatStr,5834642,546,252) { Mask="%2: %1" link(onFString,406989:doAdd,[]) link(Str1,1355846:Var3,[(552,208)(587,208)(587,159)]) link(Str2,8232007:Var3,[(559,236)]) } Add(FormatStr,13350119,217,252) { Mask="%2: %1" link(onFString,10252720:doWork2,[]) link(Str2,8232007:Var1,[(230,236)]) } Add(GetDataEx,8232007,441,231) { link(Data,14193288:FormatTime,[]) } Add(Length,10357076,427,49) { link(onLength,1289389:doCompare,[]) link(Str,11196924:Var1,[(433,40)(446,40)(446,159)]) } Add(If_else,1289389,469,49) { Type=2 Op2=Integer(0) link(onTrue,12633388:doEvent1,[]) } Add(KeyMask,7862059,616,63) { Ctrl=1 Key=13 link(onTrue,10357076:doLength,[(660,76)(660,34)(415,34)(415,55)]) } Add(DoData,4384809,497,98) { Data=Integer(0) link(onEventData,11451848:doKeyBack,[]) } Add(Charset,16205541,154,252) { Type=7 link(onCharset,13350119:doString,[]) link(Text,14760435:Value2,[(160,233)(69,233)]) } Add(Charset,14319971,490,168) { Type=6 link(onCharset,8476968:doPack,[]) link(Text,11196924:Var2,[]) } Add(GetDataEx,11196924,490,154) { Angle=1 link(Data,1355846:Var1,[]) } Add(WinExec,11148499,336,252) { } Add(MultiElement,1753052,217,182) { @IsLib=True link(onEvent1,7822675:onWrite,[(705,188)(705,41)]) link(Data1,5759751:Handle,[(223,170)(256,170)(256,213)(328,213)]) link(Data2,3525189:Value,[(230,177)(426,177)]) } BEGIN_SDK Add(EditMulti,12145518,21,21) { EventCount=1 WorkCount=1 DataCount=2 Width=384 Height=193 link(doWork1,3652641:doEvent,[(31,27)(31,90)]) } Add(GlobalVar,9648497,140,42) { Name="clv" Data=Integer(0) } Add(DoData,5868137,238,119) { Data=Integer(1) link(onEventData,10547095:doEvent1,[]) } Add(WinTools,11305333,315,119) { Point(isVisible) Point(doForeground) link(Handle,264934:Var3,[(321,40)]) } Add(InlineCode,6798083,224,161) { WorkPoints=#9:doVisible| DataPoints=#6:Handle| Code=#15:unit HiAsmUnit;|0:|9:interface|0:|38:uses kol,Share,Windows,Messages,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|22: Handle:THI_Event;|5: |54: procedure doVisible(var _Data:TData; Index:word);|5: end;|0:|14:implementation|0:|32:procedure THiAsmClass.doVisible;|15:var f:Cardinal;|5:begin|37: f := SW_SHOW and SW_SHOWNOACTIVATE;|44: ShowWindow(ReadInteger(_Data,Handle,0),f);|4:end;|0:|4:end.| link(Handle,264934:Var2,[]) } Add(GetDataEx,264934,224,35) { Angle=3 link(Data,12145518:Data1,[(27,40)]) } Add(Hub,2749332,189,154) { InCount=2 link(onEvent1,12145518:onEvent1,[(385,160)(385,27)]) link(onEvent2,6798083:doVisible,[]) } Add(IndexToChanel,3652641,42,84) { Point(Index) link(onEvent1,12876407:doEvent,[]) link(onEvent2,10411558:doEvent,[(82,97)(82,153)]) link(Index,11305333:isVisible,[(48,57)(363,57)(363,173)(328,173)]) } Add(IndexToChanel,10411558,91,147) { Point(Index) link(onEvent1,6383302:doEvent,[]) link(Index,12145518:Data2,[(97,50)(34,50)]) } Add(IndexToChanel,6383302,140,147) { Point(Index) link(onEvent1,11944211:doWork3,[(222,153)]) link(onEvent2,2749332:doEvent1,[]) link(Index,3160019:Var2,[]) } Add(IndexToChanel,12876407,98,84) { Point(Index) link(onEvent1,11944211:doWork1,[(222,90)]) link(onEvent2,2749332:doEvent2,[(179,97)(179,167)]) link(Index,3160019:Var1,[(104,68)]) } Add(GetDataEx,3160019,140,63) { link(Data,9648497:Var,[]) } Add(HubEx,11944211,218,119) { link(onEvent,5868137:doData,[]) } Add(Hub,10547095,280,119) { link(onEvent1,11305333:doVisible,[]) link(onEvent2,11305333:doForeground,[(304,132)(304,153)]) } END_SDK Add(ChanelToIndex,7715331,371,140) { link(onIndex,3525189:doValue,[]) } Add(Memory,3525189,420,140) { Default=Integer(0) } Add(SelectColor,8209458,602,196) { Color=32768 } Add(ToolBar,15084801,49,343) { Left=220 Top=340 Align=2 Buttons=['=Send...'=[ZIP3604000078DAC593A10E833010406FC93E609F30B92F003FBF1FC04E22109358643F6196A090486C2512595B5959D9DD1D24831528535CF244AFF77A97A6BD3FA2337044C80DB98C9CE03A6C8CFBD370CE1D4A2304882409B2E53BABC11AB58CEE823ED7A90E91330CE6883DFD5D5F2EB2E46759F6E31BAFB7552DCF4EFE3B7D722D451CC7EC575535F7B53FBFD5FDE8A7DBBEB3EBF3E31965FEDA9E9F7CAC232CD30D6BBC17A394E77BF737CB5986BC5E4A68EB1A9AE27F9FF253F6FBDFBC695290220FBEDF35DAA238FC7F85F800718B9B83]] link(onClick,11545642:doEvent,[]) } Add(ChildForm,2696916,147,343) { link(onEvent1,3490857:doWork2,[]) link(Data1,8969250:Var2,[]) } BEGIN_SDK Add(EditMulti,6118287,21,21) { EventCount=1 WorkCount=4 DataCount=1 VarCount=2 Width=545 Height=613 link(doWork1,5015817:doWork2,[(60,27)(60,181)]) link(doWork2,5487010:Cable,[(45,34)(45,440)]) link(doWork3,15376864:doEvent2,[(51,41)(51,265)]) link(doWork4,10668438:Cable,[(35,48)(35,503)]) link(Var1,14796698:Var1,[(27,320)]) link(Var2,8600215:Var1,[(34,473)(398,473)]) } Add(MainForm,7668103,147,147) { Left=35 Top=105 Width=463 Height=183 Visible=1 Caption="Send..." BorderStyle=3 Position=1 Point(doVisible) Point(Handle) link(onCreate,2797594:doHideCloseButton,[(184,167)(184,188)(135,188)(135,209)]) } Add(RadioButton,14366362,252,112) { Left=10 Top=10 Width=230 Selected=0 Caption="Отправить текст из буфера обмена" Point(doEnabled) link(onSelect,170827:doWork2,[]) } Add(RadioButton,5193676,245,70) { Left=10 Top=30 Width=230 Caption="Отправить картинку из буфера обмена" Point(doEnabled) link(onSelect,819253:doWork2,[]) } Add(RadioButton,12858657,259,154) { Left=10 Top=50 Width=15 Caption="" Point(doEnabled) link(onSelect,170827:doWork3,[(298,160)]) } Add(ChildGroupBox,8600215,392,203) { } BEGIN_SDK Add(EditMulti,12803112,21,21) { WorkCount=1 VarCount=1 Width=258 Height=116 link(doWork1,1737164:doEnabled,[]) link(Var1,6527433:Text,[(27,114)(188,114)]) } Add(GroupBox,1737164,35,21) { Left=25 Top=50 Width=425 Height=45 Enabled=1 Caption="Отправить файл" Point(doEnabled) } Add(Label,474585,35,70) { Left=10 Top=20 Width=31 Height=17 Caption="Путь:" } Add(Edit,6527433,182,70) { Left=40 Top=18 Width=360 Text="C:\" } Add(Button,6107163,84,70) { Left=400 Top=18 Width=20 Caption="..." link(onClick,8820343:doExecute,[]) } Add(ODialog,8820343,133,70) { Title="Выберите файл для отправки" FileName="" link(onExecute,6527433:doText,[]) } END_SDK Add(Button,15996272,70,357) { Left=25 Top=100 Width=120 Height=25 Caption="Send..." Point(doEnabled) link(onClick,10789764:doData,[]) } Add(Button,11544097,70,252) { Left=360 Top=100 Width=90 Height=25 Caption="Cancel" link(onClick,15376864:doEvent1,[]) } Add(MathParse,3876283,245,203) { DataCount=3 MathStr="%2 * 1 + %3 * 2" ResultType=0 link(onResult,8561727:doEvent,[]) link(X1,5193676:Selected,[]) link(X2,14366362:Selected,[]) link(X3,12858657:Selected,[]) } Add(HubEx,819253,294,70) { Angle=3 link(onEvent,3876283:doCalc,[(298,60)(208,60)(208,209)]) } Add(HubEx,170827,294,112) { Angle=3 link(onEvent,819253:doWork3,[]) } Add(IndexToChanel,8561727,294,203) { Count=3 link(onEvent1,6784029:doWork2,[]) link(onEvent2,6784029:doWork3,[(333,216)]) link(onEvent3,6449299:doWork2,[(334,223)(334,216)]) } Add(ChanelToIndex,6449299,343,203) { link(onIndex,8600215:doWork1,[]) } Add(HubEx,6784029,329,203) { link(onEvent,6449299:doWork1,[]) } Add(Memory,12979085,294,301) { Default=Integer(105) } Add(StreamPack,8476968,294,357) { DataCount=#2:id|4:user|4:port|2:ip|3:fid| link(onPack,6118287:onEvent1,[(428,363)(428,27)]) link(id,12979085:Value,[]) link(user,6118287:Data1,[(307,36)(27,36)]) link(ip,4204986:Value,[(321,343)(342,343)]) link(fid,12746875:Value,[(328,349)(384,349)]) } Add(DoData,11964337,98,175) { Data=Integer(1) link(onEventData,7668103:doVisible,[]) } Add(Memory,4204986,336,301) { Default=String(0.0.0.0) } Add(Memory,12746875,378,308) { Default=Integer(0) } Add(Hub,14182947,175,357) { link(onEvent1,430790:doData,[]) link(onEvent2,11118205:doWork2,[]) } Add(Hub,15376864,119,252) { InCount=2 link(onEvent1,7668103:doClose,[(140,258)(140,174)]) link(onEvent2,16713712:doData,[]) } Add(Hub,2761720,105,77) { OutCount=4 link(onEvent1,5193676:doEnabled,[]) link(onEvent2,14366362:doEnabled,[(226,90)(226,125)]) link(onEvent3,12858657:doEnabled,[(218,97)(218,167)]) link(onEvent4,7429500:In,[]) } Add(LineBreak,12061992,63,77) { Caption="en" link(Out,2761720:doEvent1,[]) Primary=[7636549,147,287] } Add(DoData,10789764,126,357) { Data=Integer(0) link(onEventData,14182947:doEvent1,[]) } Add(LineBreak,14875819,70,399) { Caption="btn" link(Out,15996272:doEnabled,[(111,405)(111,393)(58,393)(58,363)]) Primary=[7429500,63,-301] } Add(DoData,16713712,147,259) { Data=Integer(1) link(onEventData,11118205:doWork1,[(200,265)]) } Add(HubEx,11118205,196,364) { link(onEvent,7636549:In,[]) } Add(SysMenu,2797594,147,203) { link(Handle,7668103:Handle,[]) } Add(ProgressBar,3667174,98,434) { Left=25 Top=130 Width=425 Point(doMax) } Add(CableEvent,5487010,63,434) { link(Wire1,3667174:doPosition,[]) link(Wire2,3667174:doMax,[]) } Add(GetDataEx,14796698,245,315) { link(Data,3876283:Result,[]) } Add(HubEx,5015817,77,175) { link(onEvent,11964337:doData,[]) } Add(CableEvent,10668438,49,497) { link(Wire1,5015817:doWork3,[(81,503)]) link(Wire2,11118205:doWork3,[(200,510)]) } Add(DoData,430790,245,357) { link(onEventData,8476968:doPack,[]) link(Data,14796698:Var2,[]) } END_SDK Add(HubEx,11004749,679,168) { Angle=3 link(onEvent,7822675:onPack,[(683,27)]) } Add(IndexToChanel,11545642,98,343) { Count=1 link(onEvent1,2696916:doWork1,[]) } Add(MultiElementEx,16396248,84,420) { link(onPack,14143427:doWork2,[]) link(Cable,4508469:doWork2,[]) link(Op1,8969250:Var1,[(90,327)]) link(Str1,4129906:Var3,[(97,250)]) } BEGIN_SDK Add(EditMultiEx,7218160,21,21) { WorkCount=#8:doUnPack| EventCount=#6:onPack|5:Cable| VarCount=#5:Index| DataCount=#3:Op1|4:Str1| Width=692 Height=151 link(doUnPack,2383351:doUnPack,[(35,27)(35,97)]) link(Index,5135342:Var1,[(27,141)]) } Add(StreamUnPack,2383351,49,91) { DataCount=#2:id| link(onUnPack,1046996:doValue,[]) } Add(If_else,1964595,147,91) { link(onTrue,6825842:doUnPack,[]) link(Op1,7218160:Op1,[(153,56)(27,56)]) link(Op2,14990699:Var1,[(160,79)(83,79)]) } Add(StreamUnPack,6825842,245,91) { DataCount=#4:port|2:ip|3:fid| link(onUnPack,10508159:doData,[]) link(Stream,1046996:Value,[(251,80)(234,80)(234,134)(104,134)]) } Add(Message,16105267,448,91) { Caption="Запрос на отправку данных" Type=2 Icon=2 Point(onYES) Point(onNO) link(onYES,8501896:doEvent1,[(488,104)(488,90)]) link(onNO,3933094:doWork2,[(488,111)(488,132)]) } Add(FormatStr,7327511,399,91) { Mask="Пользователь '%1' хочет прислать вам %2 вы согласны?" link(onFString,16105267:doMessage,[]) link(Str1,7218160:Str1,[(405,56)(34,56)]) } Add(StrList,12179259,350,84) { Strings=#22:текст из буфера обмена|25:картинку из буфера обмена|4:файл| Point(onGetString) Point(doGetString) link(onGetString,7327511:doString,[]) } Add(DoData,10508159,294,91) { link(onEventData,12179259:doGetString,[(338,97)(338,132)]) link(Data,5135342:Var3,[(300,81)(279,81)(279,141)]) } Add(StreamPack,6762573,609,119) { DataCount=#2:id|4:user|5:state|3:fid| link(onPack,7218160:onPack,[(699,125)(699,27)]) link(id,12516217:Value,[]) link(user,14990699:Var3,[(622,107)(600,107)(600,152)]) link(fid,6650625:Value,[(636,111)(664,111)]) } Add(Memory,12516217,609,70) { Default=Integer(106) } Add(ChanelToIndex,3933094,560,119) { link(onIndex,6762573:doPack,[]) } Add(Memory,6650625,658,70) { Default=Integer(0) } Add(Memory,1046996,98,91) { link(onData,1964595:doCompare,[]) } Add(CableWork,7983493,567,84) { link(Cable,7218160:Cable,[(595,90)(595,34)]) } Add(Hub,8501896,497,84) { OutCount=3 link(onEvent1,13488593:doData,[]) link(onEvent2,13662425:doData,[]) link(onEvent3,3933094:doWork1,[(522,104)(522,125)]) } Add(DoData,13662425,525,91) { Data=Integer(0) link(onEventData,7983493:Wire2,[]) } Add(DoData,13488593,525,84) { Data=Integer(1) link(onEventData,7983493:Wire1,[]) } Add(GetDataEx,14990699,77,147) { Angle=3 link(Data,2383351:id,[(55,152)]) } Add(GetDataEx,5135342,245,136) { link(Data,6825842:port,[]) } END_SDK Add(If_else,15849605,189,637) { link(onTrue,16550605:doConvert,[]) link(Op1,12118261:Var3,[(195,439)]) link(Op2,12750233:Value3,[(202,625)(153,625)(153,681)(104,681)]) } Add(GetDataEx,14111188,294,672) { link(Data,5349112:max,[]) } Add(GetDataEx,11031535,287,672) { link(Data,5349112:part,[]) } Add(If_else,16642118,378,798) { link(onTrue,1979367:doEvent1,[]) link(Op1,11031535:Var2,[(384,785)(293,785)]) link(Op2,14111188:Var2,[(391,776)(300,776)]) } Add(HubEx,796828,679,469) { Angle=3 link(onEvent,14143427:doWork3,[]) } Add(DoData,9369828,420,686) { link(onEventData,15111278:Wire2,[(460,692)(460,650)]) link(Data,14111188:Var3,[(426,677)]) } Add(DoData,7754637,420,637) { link(onEventData,15111278:Wire1,[]) link(Data,11031535:Var1,[(426,625)(278,625)(278,677)]) } Add(CableWork,15111278,469,637) { link(Cable,796828:doWork3,[(683,643)]) } Add(Hub,6066208,336,637) { OutCount=4 link(onEvent1,7754637:doData,[]) link(onEvent2,9369828:doData,[(385,650)(385,692)]) link(onEvent3,5795077:doStrCat,[(377,657)(377,741)]) link(onEvent4,16642118:doCompare,[(364,664)(364,804)]) } Add(StreamUnPack,5349112,287,637) { DataCount=#4:part|3:max|4:data|4:name| link(onUnPack,6066208:doEvent1,[]) } Add(HubEx,3490857,679,343) { Angle=3 link(onEvent,11004749:doWork3,[]) } Add(CableEvent,4029501,42,420) { Count=3 link(Wire1,16396248:doUnPack,[]) link(Wire2,1252520:doValue,[(72,433)(72,475)]) link(Wire3,12750233:doValue,[(67,440)(67,643)]) } Add(GetDataEx,8969250,147,322) { link(Data,7764395:Value1,[(153,114)(167,114)]) } Add(MT_MultiMem,1252520,84,469) { Count=3 link(onData,15591548:doGetNode,[]) } Add(Memory,677340,231,469) { Default=Integer(2) Point(Data) link(onData,7528706:doEvent,[]) link(Data,1252520:Value2,[(237,457)(118,457)(118,513)(97,513)]) } Add(If_else,10876596,182,469) { link(onTrue,677340:doValue,[]) link(Op1,12118261:Var2,[]) } Add(Convertor,16550605,238,637) { Mode=12 link(onResult,5349112:doUnPack,[]) link(Data,12750233:Value2,[(244,625)(229,625)(229,686)(97,686)]) } Add(StrCat,5795077,420,735) { Point(doClear) link(Str1,13552191:Var1,[(426,723)(414,723)(414,779)]) link(Str2,5349112:data,[(433,720)(307,720)]) } Add(GetDataEx,12118261,182,434) { link(Data,8969250:Var3,[(188,327)]) } Add(TVT_GetNode,15591548,133,469) { TreeView="parent.users" link(onGetNode,10876596:doCompare,[]) link(ID,8876198:Var2,[]) } Add(IndexToChanel,7528706,280,469) { Count=3 link(onEvent1,6094438:doEvent,[]) link(onEvent2,6655315:doMessage,[(320,482)(320,531)]) link(onEvent3,12501762:doMessage,[(320,489)(320,573)]) } Add(Message,12501762,329,567) { Message="Соединение разорвано!" Icon=1 link(onMessage,13349518:doWork2,[]) } Add(Message,6655315,329,525) { Message="Передача была отменена!" Icon=4 link(onMessage,13349518:doWork1,[(375,531)]) } Add(HubEx,13349518,371,567) { Angle=1 link(onEvent,2696916:doWork3,[(375,606)(27,606)(27,363)]) } Add(Clipboard,9617981,392,420) { } Add(IndexToChanel,6094438,329,469) { Count=3 Point(Index) link(onEvent1,12680338:doData,[]) link(onEvent2,11771436:doWork1,[(386,482)(386,517)]) link(onEvent3,4917808:doWork1,[(379,489)(379,559)]) link(Index,2696916:Var1,[(335,405)(153,405)]) } Add(DoData,12680338,392,469) { link(onEventData,31440:doWork2,[]) link(Data,9617981:Text,[]) } Add(MultiElement,11771436,399,511) { link(onEvent1,11667520:doWork2,[]) link(Data1,9617981:Bitmap,[]) } BEGIN_SDK Add(EditMulti,11331434,385,252) { EventCount=1 WorkCount=1 DataCount=1 Width=153 Height=116 link(doWork1,15338715:doEvent1,[(392,258)(392,286)]) } Add(Hub,15338715,399,280) { OutCount=3 link(onEvent1,6821559:doClear,[]) link(onEvent2,6257225:doWrite,[(423,293)(423,342)]) link(onEvent3,9933319:doConvert,[]) } Add(MemoryStream,6821559,434,273) { } Add(BitmapStream,6257225,434,329) { link(Stream,10562133:Var2,[]) link(Bitmap,11331434:Data1,[(447,313)(391,313)]) } Add(Convertor,9933319,483,294) { Mode=11 link(onResult,11331434:onEvent1,[(527,300)(527,258)]) link(Data,10562133:Var3,[(489,282)(471,282)(471,320)]) } Add(GetDataEx,10562133,434,315) { link(Data,6821559:Stream,[]) } END_SDK Add(MultiElement,4917808,385,553) { link(onEvent1,11667520:doWork3,[(445,559)]) link(Data1,2696916:Var2,[(391,396)(160,396)]) } BEGIN_SDK Add(EditMulti,12888587,231,161) { EventCount=1 WorkCount=1 DataCount=1 VarCount=1 Width=230 Height=88 link(doWork1,7193421:doOpen,[(241,167)(241,195)]) link(Var1,16515975:Part,[(237,240)(391,240)]) } Add(FileStream,7193421,252,189) { link(onLoad,6105809:doConvert,[]) link(FileName,3725575:Var2,[]) } Add(Convertor,6105809,301,189) { Mode=11 link(onResult,1372714:doEvent1,[]) } Add(Hub,1372714,350,189) { OutCount=3 link(onEvent1,7193421:doClose,[(375,195)(375,229)(242,229)(242,202)]) link(onEvent2,16515975:doPart,[]) link(onEvent3,12888587:onEvent1,[(451,209)(451,167)]) } Add(FilePartElm,16515975,385,196) { Point(Part) link(FileName,3725575:Var3,[(391,175)]) } Add(GetDataEx,3725575,252,170) { Angle=3 link(Data,12888587:Data1,[(237,175)]) } END_SDK Add(HubEx,31440,441,469) { link(onEvent,16318600:doWork1,[]) } Add(HubEx,11667520,441,511) { Angle=3 link(onEvent,31440:doWork3,[]) } Add(GetDataEx,8876198,133,441) { Angle=3 link(Data,1252520:Value3,[(121,446)(121,513)(104,513)]) } Add(HubEx,14143427,679,420) { Angle=3 link(onEvent,3490857:doWork3,[]) } Add(MultiElement,16318600,462,469) { link(onEvent1,796828:doWork2,[]) link(onEvent2,2696916:doWork2,[(508,482)(508,384)(135,384)(135,356)]) link(onEvent3,4508469:doWork1,[(506,489)(506,433)]) link(Data1,8876198:Var3,[(468,446)]) link(Data2,4917808:Var1,[(475,457)(451,457)(451,597)(391,597)]) } BEGIN_SDK Add(EditMulti,2030440,21,21) { EventCount=3 WorkCount=1 DataCount=2 Width=468 Height=221 link(doWork1,429156:doValue,[(39,27)(39,83)]) } Add(MathParse,9206944,154,77) { DataCount=1 MathStr="%1 div 10240" ResultType=0 link(onResult,15465815:doEvent1,[]) } Add(Memory,429156,56,77) { link(onData,14186704:doLength,[]) } Add(Length,14186704,105,77) { link(onLength,9206944:doCalc,[]) } Add(For,2174133,252,84) { link(onEvent,6944959:doEvent1,[]) link(onStop,4064035:doData,[(289,97)(289,104)]) link(Start,6871377:Value,[]) link(End,119108:Var1,[(265,70)(190,70)]) } Add(Memory,6871377,252,28) { Default=Integer(0) } Add(Copy,16668677,168,189) { Count=10240 link(onCopy,13074588:doPack,[]) link(Str,429156:Value,[(174,124)(62,124)]) link(Position,12870653:reCalc,[(181,181)(188,181)]) } Add(IndexToChanel,4587453,105,189) { Count=3 Point(Index) link(onEvent1,16668677:doCopy,[]) link(onEvent2,3213124:doWork2,[]) link(onEvent3,3213124:doWork3,[(152,209)]) link(Index,2030440:Data1,[(111,134)(27,134)]) } Add(Hub,15465815,203,77) { link(onEvent1,15111278:Wire2,[]) link(onEvent2,2174133:doFor,[]) } Add(CableWork,15111278,322,70) { link(Cable,2030440:onEvent2,[(346,76)(346,34)]) } Add(HubEx,3213124,148,196) { Angle=3 link(onEvent,2174133:doStop,[(152,97)]) } Add(StreamPack,7361124,315,189) { DataCount=#2:id|4:user|3:fid|4:data| link(onPack,2030440:onEvent1,[(406,195)(406,27)]) link(id,15850184:Value,[]) link(fid,9955474:Value,[(335,181)(370,181)]) } Add(Memory,15850184,315,140) { Default=Integer(107) } Add(Memory,9955474,364,140) { Default=Integer(0) } Add(Hub,6944959,294,84) { link(onEvent1,4587453:doEvent,[(339,90)(339,128)(96,128)(96,195)]) link(onEvent2,15111278:Wire1,[(315,97)(315,76)]) } Add(StreamPack,13074588,217,189) { DataCount=#4:part|3:max|4:data|4:name| link(onPack,10585567:doConvert,[]) link(part,15726981:Var2,[]) link(max,119108:Var3,[(230,121)]) link(name,2030440:Data2,[(244,64)(34,64)]) } Add(GetDataEx,119108,184,116) { Angle=3 link(Data,9206944:Result,[(160,121)]) } Add(Convertor,10585567,266,189) { Mode=12 link(onResult,7361124:doPack,[]) } Add(MathParse,12870653,175,140) { DataCount=1 MathStr="%1 * 10240" Point(reCalc) link(X1,15726981:Var1,[(181,135)]) } Add(GetDataEx,15726981,217,130) { Angle=1 link(Data,2174133:Position,[(258,135)]) } Add(DoData,4064035,350,98) { Data=Integer(1) link(onEventData,9566128:Wire1,[]) } Add(CableWork,9566128,413,98) { Count=1 From=1 link(Cable,2030440:onEvent3,[(458,104)(458,41)]) } END_SDK Add(MT_MultiMem,12750233,84,637) { Count=3 link(onData,15849605:doCompare,[]) } Add(GetDataEx,4129906,49,245) { link(Data,282116:Var1,[(55,124)]) } Add(HubEx,4508469,128,427) { Angle=3 link(onEvent,2696916:doWork4,[(132,370)]) } Add(IndexToChanel,5578851,455,798) { Count=3 Point(Index) link(onEvent1,5591585:doMessage,[]) link(onEvent2,2840839:doMessage,[(495,811)(495,846)]) link(onEvent3,9611252:doEvent1,[(495,818)(495,902)]) link(Index,16396248:Index,[(461,786)(493,786)(493,601)(75,601)(75,460)(90,460)]) } Add(Message,5591585,504,798) { Message="Принятые текстовые данные будут занесены в буфер обмена. Продолжить?" Icon=2 Point(onYES) link(onYES,14876949:doData,[]) } Add(Clipboard,7726108,651,805) { } Add(Message,2840839,504,840) { Message="Принятые текстовые данные будут занесены в буфер обмена. Продолжить?" Icon=2 Point(onYES) link(onYES,10784493:doConvert,[]) } Add(DoData,14876949,560,805) { link(onEventData,7726108:doPutText,[]) link(Data,115470:Var2,[]) } Add(GetDataEx,13552191,420,774) { link(Data,5795077:Result,[]) } Add(Hub,1979367,427,798) { link(onEvent1,5578851:doEvent,[]) link(onEvent2,5795077:doClear,[(450,811)(450,785)(407,785)(407,748)]) } Add(Convertor,10784493,553,847) { Mode=12 link(onResult,5606245:doRead,[]) link(Data,14853458:Var2,[]) } Add(BitmapStream,5606245,602,847) { link(onRead,7726108:doPutBitmap,[(642,853)(642,818)]) } Add(GetDataEx,14853458,553,774) { Angle=3 link(Data,13552191:Var3,[]) } Add(SDialog,8954199,546,889) { Title="Выберите место сохранения принятого файла" FileName="" Point(FileName) Point(doFileName) link(onExecute,704318:doValue,[]) link(FileName,5349112:name,[(552,876)(314,876)]) } Add(Hub,9611252,504,896) { link(onEvent1,8954199:doFileName,[]) link(onEvent2,8954199:doExecute,[(532,909)(532,895)]) } Add(Convertor,2090634,644,889) { Mode=12 link(onResult,103298:doCopyFromStream,[]) link(Data,115470:Var3,[(650,779)]) } Add(GetDataEx,115470,560,774) { Angle=3 link(Data,14853458:Var3,[]) } Add(FileStream,103298,693,875) { Mode=2 AutoCopy=0 Point(doCopyFromStream) link(FileName,704318:Value,[(699,863)(683,863)(683,929)(601,929)]) } Add(Memory,704318,595,889) { link(onData,2090634:doConvert,[]) } END_SDK Add(MultiElementEx,3513582,504,203) { @Hint=#14:Text processor| link(onAdd,428863:##add,[]) link(onText,428863:doCompare,[]) link(onShow,428863:doShow,[]) link(Data,9875840:Var3,[(510,187)]) AddHint(-30,-40,85,13,@Hint) } BEGIN_SDK Add(EditMultiEx,358075,21,21) { WorkCount=#13:doSendMessage|6:doText|7:doReset| EventCount=#5:onAdd|6:onText|6:onShow| DataCount=#4:Data| Width=377 Height=326 link(doSendMessage,6192483:doValue,[(59,27)(59,160)]) link(doText,7432754:doUnPack,[(35,34)(35,237)]) link(doReset,15480741:doValue,[(152,41)(152,125)]) } Add(MT_Add,14740728,322,168) { Data=String(private) InputMT=1 link(onAdd,358075:onAdd,[(363,174)(363,27)]) } Add(Hub,2841219,238,154) { InCount=2 OutCount=3 link(onEvent1,15480741:doClear,[(262,160)(262,132)]) link(onEvent2,358075:onShow,[(311,167)(311,41)]) link(onEvent3,3063962:doCompare,[]) } Add(Memory,15480741,273,119) { Default=Integer(0) } Add(If_else,3063962,273,168) { Op2=Integer(0) link(onTrue,14740728:doAdd,[]) link(Op1,15480741:Value,[]) } Add(StreamUnPack,7432754,49,231) { DataCount=#4:nick|4:text| link(onUnPack,7912044:doEvent1,[]) } Add(DoData,6751504,133,231) { link(onEventData,2841219:doEvent2,[(224,237)(224,167)]) link(Data,8246103:Var1,[(139,219)(88,219)]) } Add(MT_AddData,13681287,133,287) { link(onAdd,358075:onText,[(376,293)(376,34)]) link(Data1,8246103:Var3,[(139,282)]) link(Data2,7432754:text,[(146,275)(62,275)]) } Add(GetDataEx,8246103,82,277) { Angle=3 link(Data,7432754:nick,[(55,282)]) } Add(MT_MultiMem,6192483,70,154) { From=1 Point(Data) link(onData,115814:doCompare,[]) link(Data,358075:Data,[(76,108)(27,108)]) } Add(If_else,115814,119,154) { Type=2 Op2=Integer(0) link(onTrue,2841219:doEvent1,[]) link(Op1,6192483:Value2,[(125,142)(109,142)(109,196)(83,196)]) } Add(Hub,7912044,98,231) { link(onEvent1,6751504:doData,[]) link(onEvent2,13681287:doAdd,[(123,244)(123,293)]) } END_SDK Add(HubEx,8472763,609,203) { Angle=1 link(onEvent,3522157:doWork1,[(613,244)(403,244)]) } Add(StreamUnPack,8919322,175,903) { DataCount=#2:id|5:state|3:fid| link(onUnPack,603411:doAdd,[(219,909)(219,933)(163,933)(163,958)]) } Add(MT_AddData,603411,175,952) { Count=3 link(onAdd,13186090:doCompare,[]) link(Data1,16076925:Var1,[(181,944)]) link(Data2,8919322:state,[]) link(Data3,8919322:id,[(195,944)(181,944)]) } Add(LineBreak,5002816,630,112) { Caption="fok" link(Out,13796970:doForwardOK,[]) Primary=[11221648,-280,847] } Add(HubEx,11219735,994,462) { Angle=2 link(onEvent,11964169:doWork2,[]) } Add(GetDataEx,7235550,574,77) { Angle=3 link(Data,9875840:Var1,[(447,82)]) } Add(ChildFormPoly,13796970,672,105) { Selected="base" WorkScheme=1 link(onPack,8472763:doWork3,[(716,111)(716,209)]) link(user,7214141:Var2,[]) } BEGIN_SDK Add(EditPolyMulti,1098957,21,21) { WorkCount=#5:##add|11:doForwardOK|6:doData| EventCount=#6:onPack| DataCount=#4:user| Width=552 Height=543 Point(##add) link(##add,9091368:doGet,[(105,27)(105,118)]) link(doForwardOK,5240759:doCompare,[(39,34)(39,342)]) link(doData,12597902:doCompare,[(32,41)(32,398)]) } Add(DoData,4588308,336,350) { Data=Integer(0) link(onEventData,7363412:doWork1,[(375,356)]) } Add(MainForm,1542651,133,455) { Left=35 Top=105 Width=239 Height=208 Caption="Port forwarding" BorderStyle=3 } Add(Edit,6665673,385,63) { Left=75 Top=10 Width=95 Text="0" DataType=2 } Add(Label,2169151,252,56) { Left=5 Top=15 Width=62 Height=17 Caption="Remote port" } Add(Label,5084243,301,56) { Left=10 Top=40 Width=54 Height=17 Caption="Remote IP" } Add(Edit,15121545,392,49) { Left=75 Top=35 Width=95 Text="127.0.0.1" } Add(Button,9935290,35,476) { Left=155 Top=145 Caption="Cancel" link(onClick,1013165:doEvent1,[]) } Add(Button,909414,252,217) { Left=90 Top=145 Caption="Open" link(onClick,3766026:doValue,[]) } Add(Memory,6470451,399,112) { } Add(StreamPack,6701221,371,217) { DataCount=#2:id|4:user|4:port|2:ip|3:fid| link(onPack,11221433:doWork2,[]) link(id,3074388:Value,[]) link(port,6665673:Text,[]) link(ip,15121545:Text,[]) link(fid,13952702:Var2,[]) } Add(Memory,3074388,371,154) { Default=Integer(105) } Add(MT_Get,9091368,252,112) { link(onData,6470451:doValue,[]) } Add(If_else,5240759,56,336) { link(onTrue,3050246:doGet,[]) link(Op1,3665601:Var2,[]) } Add(GetDataEx,13952702,399,189) { link(Data,6470451:Value,[]) } Add(MT_Get,3050246,105,336) { link(onData,4861473:doEvent,[]) } Add(IndexToChanel,4861473,154,336) { Count=3 link(onEvent1,9418595:doChangeValue,[(194,342)(194,307)]) link(onEvent3,5012428:doEvent1,[]) } Add(TCP_Server,13521452,252,336) { Point(onError) link(onRead,2615427:doEvent1,[]) link(onConnect,4588308:doData,[(290,349)(290,356)]) link(Port,8328147:Text,[(265,320)(258,320)]) link(onError,8596569:doMessage,[(366,363)(366,412)]) } Add(Label,7920887,252,154) { Left=15 Top=65 Width=51 Height=17 Caption="Local port" } Add(Edit,8328147,252,273) { Left=75 Top=60 Width=95 Text="0" DataType=2 } Add(StreamPack,6034071,322,336) { DataCount=#2:id|4:user|3:fid|4:data| link(onPack,12288982:doWork2,[]) link(id,4718796:Value,[]) link(user,6783124:Var2,[]) link(fid,9292754:Var2,[]) } Add(Memory,4718796,322,280) { Default=Integer(107) } Add(HubEx,11221433,428,217) { Angle=3 link(onEvent,1098957:onPack,[(432,27)]) } Add(Memory,3766026,329,217) { Point(Data) link(onData,6701221:doPack,[]) link(Data,1098957:user,[(335,42)(27,42)]) } Add(GetDataEx,9292754,336,189) { Angle=1 link(Data,13952702:Var1,[]) } Add(If_else,12597902,49,392) { link(onTrue,14396637:doGet,[]) link(Op1,6809441:Var2,[]) } Add(MT_Get,14396637,105,392) { link(onData,2676065:doEvent1,[]) } Add(GetDataEx,3665601,56,315) { link(Data,9292754:Var1,[(62,194)]) } Add(Hub,1013165,77,476) { link(onEvent1,16489826:doWork2,[]) link(onEvent2,1725113:doCompare,[]) } Add(StreamPack,9202982,385,490) { DataCount=#2:id|4:user|5:state|3:fid| link(onPack,12288982:doWork3,[(432,496)]) link(id,16549042:Value,[]) link(user,6783124:Var3,[(398,320)]) link(fid,6809441:Var3,[(412,376)]) } Add(Memory,16549042,385,434) { Default=Integer(106) } Add(GetDataEx,6783124,329,315) { link(Data,3766026:Value,[]) } Add(GetDataEx,6809441,49,371) { link(Data,3665601:Var1,[(55,320)]) } Add(HubEx,12288982,428,336) { Angle=3 link(onEvent,11221433:doWork3,[]) } Add(HubEx,10849660,235,343) { link(onEvent,13521452:doClose,[]) } Add(Hub,5012428,196,350) { link(onEvent1,10849660:doWork2,[(220,356)(220,349)]) link(onEvent2,16489826:doWork1,[(220,363)(220,446)(109,446)]) } Add(HubEx,16489826,105,476) { link(onEvent,1542651:doClose,[]) } Add(LED,9418595,203,301) { Left=175 Top=35 Width=20 Height=20 link(onChange,13521452:doOpen,[(243,307)(243,342)]) } Add(If_else,1725113,175,483) { Op1=Integer(1) link(onTrue,1008926:doEvent1,[]) link(Op2,9418595:Value,[(188,408)(209,408)]) } Add(Hub,1008926,217,483) { link(onEvent1,10849660:doWork3,[(239,489)]) link(onEvent2,1498385:doData,[]) } Add(DoData,1498385,252,490) { Data=Integer(2) link(onEventData,7363412:doWork2,[]) } Add(HubEx,7363412,371,490) { link(onEvent,9202982:doPack,[]) } Add(Label,14432633,84,133) { Left=30 Top=95 Width=32 Height=17 Caption="Send:" } Add(Label,13796397,336,399) { Left=75 Top=95 Width=10 Height=17 Caption="0" } Add(Hub,2676065,161,392) { link(onEvent1,13521452:doSend,[(244,398)(244,356)]) link(onEvent2,6522348:doLength,[]) } Add(Length,6522348,252,399) { link(onLength,822580:doOperation,[]) } Add(Math,822580,294,399) { link(onResult,13796397:doText,[]) link(Op1,822580:Result,[(300,387)(288,387)(288,443)(300,443)]) } Add(Hub,2615427,294,336) { link(onEvent1,6034071:doPack,[]) link(onEvent2,6538318:doLength,[]) } Add(Label,2446210,84,175) { Left=15 Top=115 Width=47 Height=17 Caption="Receive:" } Add(Label,12805825,525,343) { Left=75 Top=115 Width=10 Height=17 Caption="0" } Add(Length,6538318,441,343) { link(onLength,7789238:doOperation,[]) } Add(Math,7789238,483,343) { link(onResult,12805825:doText,[]) link(Op1,7789238:Result,[(489,331)(477,331)(477,390)(489,390)]) } Add(Message,8596569,448,406) { } END_SDK Add(MT_Add,3743026,308,854) { Data=String(base) InputMT=1 link(onAdd,1062266:##add,[]) } Add(ChildFormPoly,1062266,357,854) { Selected="base" WorkScheme=1 link(onPack,12170285:doWork3,[(403,860)]) } BEGIN_SDK Add(EditPolyMulti,14961360,21,21) { WorkCount=#5:##add|11:doForwardOK|6:doData| EventCount=#6:onPack| Width=601 Height=599 Point(##add) link(##add,11126371:doEvent1,[(39,27)(39,83)]) link(doForwardOK,5240759:doCompare,[(32,34)(32,391)]) link(doData,12597902:doCompare,[(26,41)(26,447)]) } Add(MainForm,6060732,140,301) { Left=35 Top=105 Width=221 Height=166 Caption="" BorderStyle=3 } Add(StreamUnPack,5010080,140,77) { DataCount=#2:id|4:port|2:ip|3:fid| link(onUnPack,12602659:doEvent1,[]) } Add(MT_Get,3629798,84,77) { link(onData,5010080:doUnPack,[]) } Add(Label,13286531,280,28) { Left=15 Top=15 Width=26 Height=17 Caption="Port:" } Add(Label,16047403,280,77) { Left=45 Top=15 Width=10 Height=17 Caption="0" link(Text,3802686:Var1,[(286,65)(272,65)]) } Add(Label,10662741,231,35) { Left=90 Top=15 Width=17 Height=17 Caption="IP:" } Add(Label,11366555,231,105) { Left=110 Top=15 Width=37 Height=17 Caption="0.0.0.0" link(Text,5045882:Var1,[(237,93)(223,93)]) } Add(Label,3324733,462,406) { Left=15 Top=65 Width=32 Height=17 Caption="Send:" } Add(VisualShape,16660921,84,182) { Left=5 Top=35 Width=200 Height=3 } Add(Label,6041804,497,112) { Left=70 Top=45 Width=10 Height=17 Caption="0" link(Text,616243:Var2,[]) } Add(Label,9768285,392,49) { Left=15 Top=45 Width=47 Height=17 Caption="Receive:" } Add(Label,16734776,511,518) { Left=70 Top=65 Width=10 Height=17 Caption="0" link(Text,4085105:Var2,[]) } Add(Button,11722899,63,322) { Left=140 Top=105 Caption="Cancel" link(onClick,13234988:doEvent1,[]) } Add(Button,1502907,245,224) { Left=75 Top=105 Caption="Accept" link(onClick,6590999:doData,[(439,230)(439,286)]) } Add(TCP_Client,8580473,322,273) { link(onRead,11584463:doEvent1,[(366,279)(366,209)]) link(onConnect,2311541:doOn,[(394,286)(394,377)]) link(onDisconnect,3761762:doEvent1,[]) link(IP,5045882:Var3,[(328,156)]) link(Port,3802686:Var3,[(342,147)]) } Add(Hub,12602659,189,77) { link(onEvent1,16047403:doText,[]) link(onEvent2,11366555:doText,[(217,90)(217,111)]) } Add(GetDataEx,3802686,266,142) { Angle=3 link(Data,5010080:port,[(153,147)]) } Add(GetDataEx,5045882,217,151) { Angle=3 link(Data,5010080:ip,[(160,156)]) } Add(StreamPack,9202982,525,280) { DataCount=#2:id|4:user|5:state|3:fid| link(onPack,2469816:doWork3,[(600,286)]) link(id,16549042:Value,[]) link(user,16110025:Var2,[(538,265)(146,265)]) link(fid,10758576:Var3,[(552,259)]) } Add(DoData,6590999,469,280) { Data=Integer(0) link(onEventData,1663696:doWork2,[]) } Add(Memory,16549042,525,224) { Default=Integer(106) } Add(Hub,13234988,105,322) { link(onEvent1,9242742:doWork2,[]) link(onEvent2,14429209:doCompare,[]) } Add(HubEx,1663696,511,280) { link(onEvent,9202982:doPack,[]) } Add(DoData,197978,469,336) { Data=Integer(1) link(onEventData,16566194:doWork3,[(515,342)]) } Add(HubEx,16566194,511,287) { Angle=3 link(onEvent,1663696:doWork3,[]) } Add(DoData,3542939,427,287) { Data=Integer(2) link(onEventData,16566194:doWork2,[]) } Add(If_else,14429209,322,329) { Op2=Integer(1) link(onTrue,8406803:doWork1,[(366,335)(366,367)]) link(onFalse,197978:doData,[]) link(Op1,8580473:Active,[]) } Add(If_else,5240759,49,385) { link(onTrue,518684:doGet,[]) link(Op1,16220882:Var2,[]) } Add(GetDataEx,10758576,161,254) { link(Data,11067747:Var2,[]) } Add(MT_Get,518684,98,385) { link(onData,16505709:doEvent,[]) } Add(IndexToChanel,16505709,154,385) { Count=3 link(onEvent1,8580473:doOpen,[(295,391)(295,279)]) link(onEvent3,8406803:doWork3,[(303,405)]) } Add(HubEx,8406803,299,361) { Angle=3 link(onEvent,8580473:doClose,[(303,286)]) } Add(If_else,12597902,42,441) { link(onTrue,14396637:doGet,[]) link(Op1,16220882:Var1,[(48,369)]) } Add(GetDataEx,16220882,49,364) { link(Data,10758576:Var1,[(55,259)]) } Add(MT_Get,14396637,98,441) { link(onData,312208:doEvent1,[]) } Add(StreamPack,6034071,455,210) { DataCount=#2:id|4:user|3:fid|4:data| link(onPack,2469816:doWork2,[]) link(id,4718796:Value,[]) link(user,16110025:Var3,[(468,201)]) link(fid,11067747:Var3,[(475,194)]) } Add(Memory,4718796,455,154) { Default=Integer(107) } Add(HubEx,2469816,596,210) { Angle=3 link(onEvent,14961360:onPack,[(600,27)]) } Add(GetDataEx,16110025,140,196) { link(Data,6717586:Var2,[]) } Add(GetDataEx,11067747,161,189) { link(Data,5010080:fid,[]) } Add(Hub,3761762,399,287) { OutCount=3 link(onEvent1,3542939:doData,[]) link(onEvent2,9242742:doWork1,[(418,300)(418,317)(130,317)]) link(onEvent3,2311541:doOff,[(423,307)(423,370)]) } Add(HubEx,9242742,126,322) { link(onEvent,6060732:doClose,[]) } Add(Hub,11584463,413,203) { link(onEvent1,17884:doLength,[(438,209)(438,55)]) link(onEvent2,6034071:doPack,[]) } Add(Length,17884,448,49) { link(onLength,9106400:doOperation,[]) } Add(Math,9106400,497,49) { link(Op1,616243:Var1,[(503,37)(491,37)(491,93)]) } Add(Length,12786888,462,448) { link(onLength,8324982:doOperation,[]) } Add(Math,8324982,511,448) { link(Op1,4085105:Var1,[(517,436)(505,436)(505,492)]) } Add(Hub,312208,154,441) { link(onEvent1,8580473:doSend,[(310,447)(310,293)]) link(onEvent2,12786888:doLength,[]) } Add(InfoTip,7930264,378,28) { Info=#7:receive| Width=218 Height=123 } Add(InfoTip,1843024,448,392) { Info=#4:send| Width=162 Height=172 } Add(Hub,11126371,49,77) { link(onEvent1,3629798:doGet,[]) link(onEvent2,5988547:doWork1,[(73,90)(73,139)]) } Add(MultiElement,5988547,84,133) { link(onEvent1,6060732:doCaption,[(128,139)(128,307)]) link(Data1,6717586:Var1,[(90,124)]) } BEGIN_SDK Add(EditMulti,8474007,21,21) { EventCount=1 WorkCount=1 DataCount=1 Width=230 link(doWork1,14076751:doGetNode,[(42,27)(42,97)]) } Add(TVT_GetNode,14076751,63,91) { TreeView="parent.parent.users" link(onGetNode,4357199:doGet,[]) link(ID,8474007:Data1,[(69,56)(27,56)]) } Add(MT_Get,4357199,119,91) { link(onData,8981106:doStrCat,[]) } Add(StrCat,8981106,168,91) { Str1="Port forwarding - " link(onStrCat,8474007:onEvent1,[(232,97)(232,27)]) } END_SDK Add(GetDataEx,6717586,140,119) { link(Data,5010080:id,[]) } Add(LED,2311541,434,357) { Left=120 Top=45 } Add(Timer,16533535,462,518) { link(onTimer,16734776:doText,[]) } Add(GetDataEx,4085105,511,487) { link(Data,8324982:Result,[]) } Add(Timer,10597345,448,112) { link(onTimer,6041804:doText,[]) } Add(GetDataEx,616243,497,88) { link(Data,9106400:Result,[]) } END_SDK Add(HubEx,12170285,399,714) { Angle=3 link(onEvent,4709857:doWork3,[]) } Add(GetDataEx,9875840,441,182) { Angle=3 link(Data,1733258:Select,[(377,187)]) } Add(GetDataEx,7214141,672,77) { Angle=3 link(Data,7235550:Var3,[]) } Add(Memory,10317847,329,721) { Default=Integer(0) } Add(MultiElementEx,13483892,371,70) { @Hint=#11:DropAccept?| link(onPack,6955018:doWork1,[(613,76)]) } BEGIN_SDK Add(EditMultiEx,4163576,21,21) { WorkCount=#7:doValue|6:doDrop| EventCount=#6:onPack| VarCount=#6:Accept| Width=377 Height=284 link(doValue,3842669:doValue,[]) link(doDrop,16094252:doValue,[(63,34)(63,258)]) link(Accept,16366548:GetData,[(27,154)(160,154)]) } Add(EventFromData,16366548,154,112) { link(onEvent,1399314:doCompare,[]) } Add(ChanelToIndex,7073169,105,112) { link(onIndex,16366548:doData,[]) } Add(MT_MultiData,3954724,259,112) { Count=4 link(onData3,6189598:doCompare,[]) } Add(If_else,6189598,322,126) { Type=2 Op2=Integer(0) link(onTrue,3902724:doWork2,[(368,132)(368,104)]) link(onFalse,7073169:doWork2,[(368,139)(368,164)(95,164)(95,125)]) } Add(If_else,1399314,203,112) { Type=2 link(onTrue,3954724:doSeparateMT,[]) link(onFalse,3902724:doWork3,[(242,125)]) link(Op1,3842669:Value3,[]) link(Op2,3650413:Value,[]) } Add(HubEx,3902724,238,98) { Angle=2 link(onEvent,7073169:doWork1,[(95,104)(95,118)]) } Add(Memory,3650413,210,63) { Default=Integer(0) } Add(MT_MultiMem,3842669,189,21) { Count=4 } Add(StreamPack,1119145,189,252) { DataCount=#2:id|4:user|4:text| link(onPack,4163576:onPack,[(379,258)(379,27)]) link(id,10352893:Value,[]) link(user,16094252:Value1,[(202,240)(167,240)(167,298)(111,298)]) link(text,16094252:Value4,[(209,233)(160,233)(160,293)(132,293)]) } Add(Memory,10352893,189,189) { Default=Integer(108) } Add(MT_MultiMem,16094252,105,252) { Count=4 link(onData,1119145:doPack,[]) } END_SDK Add(Hub,13562607,420,133) { link(onEvent1,13483892:doValue,[(443,139)(443,63)(360,63)(360,76)]) link(onEvent2,4698353:doWork2,[]) } Add(HubEx,6955018,609,98) { Angle=1 link(onEvent,8472763:doWork1,[]) } Add(DoData,12819459,630,217) { Data=String(Вам написали) link(onEventData,16373536:doWork1,[(676,223)(676,190)(67,190)]) } Add(HubEx,16373536,63,231) { link(onEvent,15830874:doShowBallonTip,[]) } Add(MultiElement,569518,322,777) { link(onEvent1,16373536:doWork3,[(366,783)(366,839)(67,839)]) link(Data1,2307935:Var3,[(328,769)(313,769)(313,824)]) link(Data2,7004472:Var3,[(335,765)]) } BEGIN_SDK Add(EditMulti,12114574,196,63) { EventCount=1 WorkCount=1 DataCount=2 Width=398 link(doWork1,8762440:doEvent1,[(206,69)(206,146)]) } Add(TVT_ChangeNode,2075410,245,189) { TreeView="parent.users" } Add(StrList,14543935,301,98) { Strings=#13:вышел из сети|6:в сети| Point(doGetString) Point(onGetString) link(onGetString,559348:doCase,[]) } Add(DoData,1217783,252,140) { link(onEventData,14543935:doGetString,[]) link(Data,12114574:Data2,[(258,102)(209,102)]) } Add(FormatStr,7871626,490,203) { link(onFString,12114574:onEvent1,[(539,209)(539,69)]) link(Str1,4055517:Value2,[]) } Add(TVT_GetNode,7306620,434,105) { TreeView="parent.users" link(onGetNode,4055517:doValue,[]) link(ID,12114574:Data1,[(440,84)(202,84)]) } Add(MT_MultiMem,4055517,483,105) { Count=4 } Add(Hub,6162680,399,105) { link(onEvent1,7306620:doGetNode,[]) link(onEvent2,8917239:doCompare,[(423,118)(423,209)]) } Add(Case,559348,350,105) { link(onNextCase,6162680:doEvent1,[]) } Add(If_else,8917239,434,203) { Type=5 Op2=Integer(3) link(onTrue,7871626:doString,[]) link(Op1,4055517:Value3,[(440,170)(503,170)]) } Add(Hub,8762440,217,140) { link(onEvent1,1217783:doData,[]) link(onEvent2,2075410:doChangeNode,[(238,153)(238,195)]) } END_SDK Add(GetDataEx,2307935,259,819) { Angle=3 link(Data,11457346:id,[(181,824)]) } Add(GetDataEx,7004472,224,760) { Angle=3 link(Data,11457346:state,[(209,765)(209,817)(188,817)]) } Add(HubEx,15057491,616,217) { link(onEvent,12819459:doData,[]) } Add(Hub,7266064,791,336) { OutCount=3 link(onEvent1,120361:doCheck,[(885,342)(885,454)]) link(onEvent2,7542404:doEvent,[]) link(onEvent3,9178765:doClear,[(815,356)(815,383)(944,383)(944,426)]) } Add(IndexToChanel,7542404,819,343) { Point(Index) link(onEvent1,120361:##add,[(877,349)(877,412)]) link(Index,9178765:Value,[(825,331)(995,331)(995,453)(965,453)]) } Add(Memory,9178765,959,413) { Default=Integer(0) } Add(HubEx,6317002,453,203) { link(onEvent,3513582:doSendMessage,[]) } Add(MultiElement,8713160,175,854) { link(onEvent1,3743026:doAdd,[]) link(onEvent2,2314206:Wire1,[(225,867)(225,923)]) } BEGIN_SDK Add(EditMulti,9569012,21,21) { EventCount=2 WorkCount=1 Width=188 Height=74 link(doWork1,4023427:doUnPack,[(31,27)(31,48)]) } Add(StreamUnPack,4023427,42,42) { DataCount=#2:id|4:port|2:ip|3:fid| link(onUnPack,8855085:doPosition,[]) } Add(If_else,9737996,147,42) { Op2=String(0.0.0.0) link(onTrue,9569012:onEvent2,[(194,48)(194,34)]) link(onFalse,9569012:onEvent1,[(189,55)(189,27)]) link(Op1,4023427:ip,[(153,30)(136,30)(136,85)(62,85)]) } Add(InlineCode,8855085,98,42) { WorkPoints=#10:doPosition| EventPoints=#10:onPosition| Code=#15:unit HiAsmUnit;|0:|9:interface|0:|21:uses kol,Share,Debug;|0:|4:type|28: THiAsmClass = class(TDebug)|10: private|0:|9: public|26: onPosition:THI_Event;|5: |55: procedure doPosition(var _Data:TData; Index:word);|5: end;|0:|14:implementation|0:|33:procedure THiAsmClass.doPosition;|15:var st:PStream;|5:begin|31: st := ReadStream(_Data,NULL);|37: if st <> nil then st.position := 0;|29: _hi_OnEvent(onPosition,st);|4:end;|0:|4:end.| link(onPosition,9737996:doCompare,[]) } END_SDK Add(LineBreak,11792118,504,245) { Caption="data" link(Out,428863:doGetData,[(546,251)(546,230)]) Primary=[8406549,-35,672] } Add(If_else,13186090,238,952) { Type=5 link(onTrue,12340741:doEvent1,[]) link(onFalse,2314206:Wire2,[(284,965)(284,982)(424,982)(424,930)]) link(Op1,16076925:Var3,[(244,944)]) link(Op2,11193688:Var2,[]) } Add(GetDataEx,16076925,189,939) { link(Data,8919322:fid,[]) } Add(CableWork,2314206,441,917) { Count=3 link(Cable,8406549:In,[]) } Add(Memory,6457314,245,882) { Default=Integer(0) } Add(If_else,14989976,252,1057) { Type=5 link(onTrue,3085441:doEvent1,[]) link(onFalse,2314206:Wire3,[(298,1070)(298,1085)(432,1085)(432,937)]) link(Op1,4154654:Var3,[(258,1045)]) link(Op2,11193688:Var3,[(265,929)]) } Add(GetDataEx,11193688,245,924) { link(Data,6457314:Value,[]) } Add(GetDataEx,4154654,182,1040) { link(Data,12312322:fid,[]) } Add(hcHub,11576619,231,1253) { }