Привет... это затея для читалки https://disk.yandex.ru/d/raszcnAj2SYbQQ на мой взгляд самое лучшее, лично для меня. Правый щелчок и подбирай все для своих глаз и главное листать не надо... А теперь вопрос. Add(MainForm,2953706,133,98) { Width=303 Height=181 Color=15780518 Caption="fb2 to txt convertor" Position=1 Point(Handle) link(onCreate,1826714:doPopup,[(177,118)(177,137)(121,137)(121,160)]) } Add(FileStream,739714,308,252) { link(onLoad,8633411:doConvert,[]) } Add(Hub,2038852,175,245) { OutCount=4 link(onEvent1,255344:doPart,[(279,251)(279,202)]) link(onEvent2,739714:doOpen,[]) link(onEvent3,15261925:doOpen,[(280,265)(280,381)]) link(onEvent4,9881363:In,[(196,272)(196,286)]) } Add(FilePartElm,255344,315,196) { Mode=6 link(onPart,15294026:doEvent1,[]) } Add(StreamConvertor,8633411,392,252) { Mode=6 link(onResult,8976359:doCharset,[]) } Add(Charset,8976359,448,252) { Type=7 link(onCharset,13633286:doSearch,[]) } Add(BlockFind,13633286,504,252) { Delete=0 StartBlock="<image" EndBlock="/>" link(onEndSearch,5869981:doSearch,[]) } Add(BlockFind,5869981,560,259) { Delete=0 StartBlock="<binary" EndBlock="</binary>" link(onEndSearch,7130624:doConvert,[]) } Add(StreamConvertor,7130624,637,266) { Mode=7 link(onResult,3396400:doCopyFromStream,[]) } Add(FileStream,3396400,714,252) { Mode=2 AutoCopy=0 Point(doCopyFromStream) link(FileName,730071:Var2,[]) } Add(DropFile,6923849,126,245) { link(onDropFile,2038852:doEvent1,[]) } Add(FormatStr,1638548,714,196) { DataCount=1 Mask="%1.fbn" Point(FString) link(onFString,12562009:doNext,[]) } Add(WinTools,1826714,133,147) { link(Handle,2953706:Handle,[]) } Add(FileStream,15261925,371,375) { link(onLoad,15960927:doConvert,[]) link(FileName,730071:Var1,[(377,236)]) } Add(StreamConvertor,15960927,441,375) { Mode=6 link(onResult,11621943:doMultiReplace,[]) } Add(GetDataEx,730071,714,231) { link(Data,1638548:FString,[]) } Add(MultiReplace,11621943,511,375) { Delimiter="'" EnterTag="" link(onResult,3365405:doWork1,[]) link(ReplaceList,6838390:Text,[]) } Add(MultiElement,3365405,602,375) { link(onEvent1,5284403:doConvert,[]) } BEGIN_SDK Add(EditMulti,12333598,21,21) { EventCount=1 WorkCount=1 Width=1070 Height=123 link(doWork1,14416488:doSearch,[(49,27)(49,76)]) } Add(BlockFind,14416488,77,70) { Delete=0 StartBlock="<section id" EndBlock="">" link(onEndSearch,15054696:doSearch,[(121,83)(121,76)]) } Add(BlockFind,15054696,133,70) { Delete=0 StartBlock="<FictionBook" EndBlock="">" link(onEndSearch,7421532:doSearch,[(181,83)(181,76)]) } Add(BlockFind,7421532,195,70) { Delete=0 StartBlock="<genre>" EndBlock="</genre>" link(onEndSearch,14868192:doSearch,[(244,83)(244,76)]) } Add(BlockFind,14868192,257,70) { Delete=0 StartBlock="<home-page>" EndBlock="</home-page>" link(onEndSearch,11273803:doSearch,[(303,83)(303,76)]) } Add(BlockFind,11273803,315,70) { Delete=0 StartBlock="<date" EndBlock="</date>" link(onEndSearch,6159908:doSearch,[(363,83)(363,76)]) } Add(BlockFind,9188230,494,70) { Delete=0 StartBlock="<document-info>" EndBlock="</document-info>" link(onEndSearch,13037657:doSearch,[(538,83)(538,74)]) } Add(BlockFind,8105566,721,68) { Delete=0 StartBlock="<id>" EndBlock="</id>" link(onEndSearch,16138546:doSearch,[(765,81)(765,74)]) } Add(BlockFind,5169182,952,68) { Delete=0 StartBlock="<custom-info" EndBlock="</custom-info>" link(onEndSearch,5519090:doSearch,[(996,81)(996,74)]) } Add(BlockFind,3924593,840,68) { Delete=0 StartBlock="<history>" EndBlock="</history>" link(onEndSearch,8927863:doSearch,[(884,81)(884,74)]) } Add(BlockFind,7237107,665,68) { Delete=0 StartBlock="<body n" EndBlock=">" link(onEndSearch,8105566:doSearch,[(709,81)(709,74)]) } Add(BlockFind,5519090,1008,68) { Delete=0 StartBlock="<program-id>" EndBlock="</program-id>" link(onEndSearch,12333598:onEvent1,[(1066,81)(1066,27)]) } Add(BlockFind,16138546,778,68) { Delete=0 StartBlock="<version>" EndBlock="</version>" link(onEndSearch,3924593:doSearch,[(825,81)(825,74)]) } Add(BlockFind,1119942,607,68) { Delete=0 StartBlock=" <publish-info>" EndBlock="</publish-info>" link(onEndSearch,7237107:doSearch,[(652,81)(652,74)]) } Add(BlockFind,10337869,434,70) { Delete=0 StartBlock="<lang>" EndBlock="</lang>" link(onEndSearch,9188230:doSearch,[(480,83)(480,76)]) } Add(BlockFind,6159908,377,70) { Delete=0 StartBlock="<coverpage>" EndBlock="</coverpage>" link(onEndSearch,10337869:doSearch,[(421,83)(421,76)]) } Add(BlockFind,13037657,549,68) { Delete=0 StartBlock="<src-lang>" EndBlock="</src-lang>" link(onEndSearch,1119942:doSearch,[(594,81)(594,74)]) } Add(BlockFind,8927863,896,68) { Delete=0 StartBlock="<publisher>" EndBlock="</publisher>" link(onEndSearch,5169182:doSearch,[(940,81)(940,74)]) } END_SDK Add(StrList,6838390,518,326) { Strings=#47:<?xml version="1.0" encoding="windows-1251"?>';|0:|40:<?xml version="1.0" encoding="UTF-8"?>';|0:|40:<?xml version="1.0" encoding="utf-8"?>';|0:|65:<description>'; </description>'; <title-info>'; </title-info>';|2: |56:<author>'; </author>'; <first-name>'; </first-name>';|0:|62:<last-name>'; </last-name>'; <book-title>'; </book-title>'; |2: |84:<annotation>'; </annotation>'; <p>'; </p>'; <sequence name='; number="'; "/>'; |4: |77:<section>'; </section>'; <body>'; </body>'; <FictionBook>'; </FictionBook>'; |0:|69:<title-info>'; </title-info>'; <publish-info/>'; <title>'; </title>';|0:|70:<empty-line/>'; <middle-name>'; </middle-name>'; <body name="notes">';|0:|55:<emphasis>'; </emphasis>'; <keywords>'; </keywords>';|0:|64:<strong>'; </strong>'; <document-info>'; </document-info>';|0:|66:<sub>'; </sub>'; <src-url>'; </src-url>'; <email>'; </email>';|0:|62:<nickname>'; </nickname>'; <program-used>'; </program-used>';|4: |78:<src-ocr>'; </src-ocr>'; <poem>'; </poem>'; <stanza>'; </stanza>';<v>';</v>';|0:|26:<subtitle>'; </subtitle>';|0:| } Add(StreamConvertor,5284403,686,375) { Mode=7 link(onResult,7515667:doCopyFromStream,[]) } Add(FileStream,7515667,749,361) { Mode=2 AutoCopy=0 Point(doCopyFromStream) link(FileName,3424473:FString,[]) } Add(FormatStr,3424473,749,312) { DataCount=1 Mask="%1.txt" Point(FString) } Add(Hub,15294026,553,196) { link(onEvent1,1638548:doString,[]) link(onEvent2,3424473:doString,[(618,209)(618,318)]) } Add(Label,2002300,945,168) { Left=190 Top=65 Width=10 Height=17 Color=15780518 Caption="0" } Add(CounterEx,12562009,781,196) { Max=20000 Point(doReset) link(onNext,16677597:doEvent1,[]) } Add(Hub,16677597,840,196) { link(onEvent1,7239595:doAdd,[(931,202)(931,258)]) link(onEvent2,2002300:doText,[(878,209)(878,174)]) } Add(FileTools,5277342,1120,343) { link(onEnd,3508653:doNext,[]) link(FileName,730071:Var3,[(1126,236)]) } Add(StrList,7239595,1008,252) { } Add(ArrayEnum,7397480,1022,343) { link(onItem,5277342:doDelete,[(1101,349)(1101,363)]) link(onEndEnum,7239595:doClear,[(1066,356)(1066,310)(996,310)(996,265)]) link(Array,7239595:Array,[]) } Add(LineBreak,11916516,868,343) { Caption="del file" link(Out,14833706:doTimer,[]) Primary=[9881363,-658,-63] } Add(Timer,14833706,952,343) { Interval=3000 Enable=1 AutoStop=1 link(onTimer,7397480:doEnum,[]) } Add(Label,1567879,1260,343) { Left=190 Top=115 Width=10 Height=17 Color=15780518 Caption="0" } Add(CounterEx,3508653,1187,343) { Max=20000 Point(doReset) link(onNext,1567879:doText,[]) } Add(Label,14230008,210,105) { Left=20 Top=25 Width=275 Color=15780518 Caption="Перетащите файл или файлы .FB2 на форму. " AutoSize=1 Alignment=2 } Add(Label,10714828,265,105) { Left=95 Top=65 Width=56 Height=17 Color=15780518 Caption="файлы fbn" } Add(Label,6756600,314,105) { Left=70 Top=115 Width=80 Height=17 Color=15780518 Caption="удаленные fbn " }
Просто так удаление не проходит. Со списком тоже. Только с таймером. И почему то последний файл не удаляется. И у меня все под Wine. Редактировалось 1 раз(а), последний 2024-10-26 15:44:12
|