Add(HTTP_Get,14119341,245,203)
{
URL="http://forum.hiasm.com/forum_serv.php?q=10"
Wait=0
link(onDownload,12613505:doWork1,[])
AddHint(-101,-42,218,26,URL)
}
Add(MultiElement,12613505,287,210)
{
@Hint=#20:Получаем и разбираем|19:последние сообщения|18:с форума HiAsm.com|
link(onEvent1,2713802:doWork1,[])
link(onEvent2,2713802:doWork2,[])
link(onEvent3,2713802:doWork3,[])
AddHint(92,-36,133,39,@Hint)
}
BEGIN_SDK
Add(EditMulti,10566109,21,21)
{
EventCount=3
WorkCount=1
Width=433
Height=158
link(doWork1,6065964:doConvert,[(31,27)(31,41)])
}
Add(Charset,5939147,84,35)
{
Type=7
link(onCharset,205570:doEvent1,[])
}
Add(Replace,13732231,287,42)
{
SubStr=" "
DestStr="`"
link(onReplace,6350158:doMT,[(327,48)(327,55)])
AddHint(28,47,23,13,SubStr)
AddHint(22,64,18,13,DestStr)
}
Add(BlockFind,16035926,154,42)
{
IncludeBlock=1
StartBlock="hide f_last_topic"
EndBlock="call set_title"
link(onSearch,1498581:doSearch,[])
AddHint(-36,98,97,13,StartBlock)
AddHint(-24,79,75,13,EndBlock)
}
Add(BlockFind,1498581,196,42)
{
StartBlock="call"
EndBlock="
"
link(onSearch,9154793:doReplace,[])
link(onEndSearch,10566109:onEvent3,[(238,55)(238,41)])
AddHint(43,44,31,13,StartBlock)
AddHint(41,76,15,26,EndBlock)
}
Add(StreamConvertor,6065964,42,35)
{
Mode=6
link(onResult,5939147:doCharset,[])
}
Add(Hub,205570,126,35)
{
link(onEvent1,10566109:onEvent2,[(151,41)(151,34)])
link(onEvent2,16035926:doSearch,[])
}
Add(Replace,9154793,245,42)
{
SubStr="call addtopic 0 "
link(onReplace,13732231:doReplace,[])
AddHint(11,110,102,13,SubStr)
}
Add(MT_String,6350158,336,42)
{
Delimeter="`"
link(onResult,7205832:doString,[])
}
Add(FormatStr,7205832,378,42)
{
DataCount=8
Mask="%1;%3;%4;%6;%7;%8"
link(onFString,10566109:onEvent1,[(445,48)(445,27)])
}
END_SDK
Add(Timer,6024277,203,203)
{
Interval=15000
link(onTimer,14119341:doDownload,[])
AddHint(-11,39,45,13,Interval)
}
Add(MainForm,12009336,280,273)
{
Width=193
Height=72
Visible=1
Position=1
link(onCreate,1034573:doHide,[])
}
Add(TrayIcon,1034573,329,280)
{
Hint="Lite Forum Notify"
link(onClick,15935437:doWork2,[])
}
Add(MultiElement,2713802,329,210)
{
@Hint=#15:Что новенького?|
link(onEvent1,1966351:doWork1,[(370,216)(370,412)])
AddHint(52,10,102,13,@Hint)
}
BEGIN_SDK
Add(EditMulti,6679997,21,21)
{
EventCount=1
WorkCount=3
VarCount=1
Width=384
Height=291
link(doWork1,13518367:doAdd,[(46,27)(46,76)])
link(doWork2,13518367:doClear,[(42,34)(42,83)])
link(doWork3,1511066:doEnum,[(49,41)(49,146)])
link(Var1,15347605:Array,[(27,258)(349,258)])
}
Add(StrList,10377455,161,49)
{
@Hint=#9:Что имеем|
link(onChange,14994558:doEvent1,[(254,55)(254,117)(148,117)(148,272)])
link(Str,13518367:Text,[(167,37)(118,37)(118,127)(69,127)])
AddHint(49,17,71,13,@Hint)
}
Add(StrList,13518367,63,70)
{
@Hint=#12:Что получили|
AddHint(-6,-28,83,13,@Hint)
}
Add(If_else,910928,273,203)
{
Op2=Integer(0)
link(onTrue,15347605:doAdd,[])
link(onFalse,15114885:doReset,[(311,216)(311,184)(266,184)(266,153)])
link(Op1,15114885:Count,[])
AddHint(-41,44,21,13,Op2)
}
Add(ArrayEnum,1511066,77,140)
{
link(onItem,10702000:doEnum,[])
link(onEndEnum,10377455:doText,[(135,153)(135,76)])
link(Array,13518367:Array,[])
}
Add(ArrayEnum,10702000,175,140)
{
link(onItem,8215123:doCompare,[])
link(onEndEnum,910928:doCompare,[(220,153)(220,209)])
link(Array,10377455:Array,[])
}
Add(If_else,8215123,224,140)
{
link(onTrue,15114885:doNext,[])
link(Op1,6724611:Var3,[(230,128)(122,128)(122,181)])
link(Op2,10702000:Item,[(237,121)(215,121)(215,184)(181,184)])
}
Add(CounterEx,15114885,273,140)
{
Point(doReset)
}
Add(StrList,15347605,329,203)
{
@Hint=#11:Что выводим|
link(Str,6724611:Var2,[(335,194)(104,194)])
AddHint(47,16,83,13,@Hint)
}
Add(If_else,16774473,336,266)
{
Type=2
Op2=Integer(0)
link(onTrue,6679997:onEvent1,[(386,272)(386,27)])
link(Op1,15347605:Count,[])
AddHint(-42,19,21,13,Op2)
}
Add(GetDataEx,6724611,98,176)
{
Angle=3
link(Data,1511066:Item,[(83,181)])
}
Add(Hub,14994558,161,266)
{
link(onEvent1,16774473:doCompare,[])
link(onEvent2,15347605:doClear,[(318,279)(318,216)])
}
END_SDK
Add(PopupMenu,14220612,714,273)
{
Point(onSelectStr)
link(onClick,12016600:doRead,[(754,279)(754,272)])
link(onSelectStr,12687667:doCompare,[(754,286)(754,314)])
}
Add(HubEx,2975412,630,343)
{
link(onEvent,14220612:doAddItem,[(698,349)(698,293)])
}
Add(FormatStr,3358013,588,343)
{
DataCount=4
Mask="%1 ... [%4]"
link(onFString,2975412:doWork2,[])
}
Add(If_else,12687667,763,308)
{
Op2=String(Выход из программы)
link(onTrue,12009336:doClose,[(820,314)(820,249)(265,249)(265,300)])
link(onFalse,11245117:doCompare,[(803,321)(803,328)])
AddHint(-54,64,134,13,Op2)
}
Add(ArrayEnum,6279239,490,350)
{
@Hint=#14:Формируем меню|
link(onItem,14338799:doMT,[])
link(onEndEnum,1621155:doWork1,[(534,363)])
link(Array,16088423:Var2,[])
AddHint(8,-27,108,13,@Hint)
}
Add(If_else,11245117,812,322)
{
Op2=String(Очистить список последних сообщений)
link(onTrue,929000:doEvent1,[])
AddHint(96,33,165,26,Op2)
}
Add(ArrayRW,12016600,763,266)
{
link(onRead,13213564:doSplit,[])
link(Array,16088423:Var3,[(769,254)])
}
Add(MultiStrData,13213564,805,266)
{
Count=1
Direct=1
link(onPart1,11598826:doString,[])
}
Add(WinExec,13336334,889,259)
{
@Hint=#10:Направляем|9:в браузер|
AddHint(45,2,79,26,@Hint)
}
Add(FormatStr,11598826,847,266)
{
DataCount=1
Mask="http://forum.hiasm.com/forum.html?q=3&t=%1"
link(onFString,13336334:doShellExec,[])
AddHint(-103,-51,216,26,Mask)
}
Add(InfoTip,83858,518,84)
{
Info=#17:Lite Forum Notify|9:by kacmem|
Transparent=1
Width=113
Height=46
Margin=10
}
Add(Version,1969644,637,119)
{
Version="1.03"
Description="forum.hiasm.com notify"
E-mail="kacmem@bk.ru"
AddHint(43,-18,36,13,Version)
AddHint(42,1,122,13,Description)
AddHint(43,19,90,13,E-mail)
}
Add(DoData,5499376,651,280)
{
@Hint=#15:Координаты меню|
Data=Integer(3276850)
link(onEventData,14220612:doPopup,[])
AddHint(-17,-71,57,13,Data)
AddHint(-42,-53,108,13,@Hint)
}
Add(Hub,929000,854,322)
{
link(onEvent1,1966351:doWork2,[(880,328)(880,511)(368,511)(368,419)])
link(onEvent2,14045155:doWork1,[(892,335)(892,527)(259,527)(259,314)])
}
Add(MultiElement,14045155,280,308)
{
@Hint=#12:Смена иконки|6:в трее|
link(onEvent1,1034573:doIcon,[(320,314)(320,300)])
AddHint(-10,41,87,26,@Hint)
}
BEGIN_SDK
Add(EditMulti,2855519,21,21)
{
EventCount=1
WorkCount=2
Width=118
Height=116
link(doWork1,6586887:doWork1,[(31,27)(31,83)])
link(doWork2,6586887:doWork2,[(31,34)(31,90)])
}
Add(BitmapArray,1138859,84,35)
{
Bitmaps=[]
}
Add(ChanelToIndex,6586887,42,77)
{
link(onIndex,10845211:doRead,[])
}
Add(ArrayRW,10845211,84,77)
{
link(onRead,2855519:onEvent1,[(124,83)(124,27)])
link(Array,1138859:Array,[])
}
END_SDK
Add(MT_String,14338799,546,343)
{
link(onResult,3358013:doString,[])
}
Add(Str_Enum,11737780,588,392)
{
link(onEnum,2975412:doWork3,[(634,398)])
}
Add(DoData,9014424,546,392)
{
Data=String(-;Очистить список последних сообщений;-;Скрыть меню;-;Выход из программы)
link(onEventData,11737780:doEnum,[])
AddHint(-66,52,194,39,Data)
}
Add(HubEx,1621155,530,392)
{
link(onEvent,9014424:doData,[])
}
Add(MultiSetParam,11099866,420,406)
{
Parameters=#10:1;2;3; ;5 |9:1; ;3;4;5|
Count=5
link(onSet1,14220612:doClear,[(464,412)(464,300)])
link(onSet2,6279239:doEnum,[(471,419)(471,356)])
link(onSet3,14045155:doWork2,[(470,426)(470,459)(268,459)(268,321)])
link(onSet4,1621155:doWork2,[(492,433)(492,398)])
link(onSet5,15935437:doWork3,[(641,440)])
}
Add(ChanelToIndex,1966351,378,406)
{
link(onIndex,11099866:doSet,[])
}
Add(HubEx,15935437,637,280)
{
link(onEvent,5499376:doData,[])
}
Add(GetDataEx,16088423,490,249)
{
Angle=3
link(Data,2713802:Var1,[(335,254)])
}
Этот топик читают: Гость
Ответов: 1536
Рейтинг: 176
|
|||
kacmem, сократил на 5 компонентов.
|
|||
карма: 1 |
| ||
Голосовали: | kacmem |
Ответов: 378
Рейтинг: 61
|
|||
ser_davkin писал(а): сократил на 5 компонентов------------ Дoбавленo в 20.01: При выходе активируются открытые окна ![]() |
|||
карма: 0 |
|
Ответов: 1536
Рейтинг: 176
|
|||
kacmem писал(а): В меню добавляется пустой пункт![]() |
|||
карма: 1 |
|
Ответов: 378
Рейтинг: 61
|
|||
ser_davkin писал(а): не заметил лишнее точку с запятой![]() ------------ Дoбавленo в 20.13: [offtop]Спать ушел, у нас 3 ночи, все ответы завтра...[/offtop] |
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 6 раз(а), последний 2025-02-28 12:29:24 |
|||
карма: 0 |
|
Ответов: 1536
Рейтинг: 176
|
|||
г. ость, я знал, что можно провернуть подобное, но не думал, что в FormatStr возможен трюк с нумерацией.
![]() ![]() kacmem писал(а): При выходе активируются открытые окна |
|||
карма: 1 |
|
Ответов: 378
Рейтинг: 61
|
|||
г. ость писал(а): code_28810.txt![]() ser_davkin, твои корректировки приняты ![]() ser_davkin писал(а): Что-то я этого не замечаю (xp_sp3)Версия программы обновилась. Смотрим и качаем в шапке темы. |
|||
карма: 0 |
|
Ответов: 1536
Рейтинг: 176
|
|||
kacmem, и всё-таки, я бы не стал перебирать в меню строки повторно, а чтобы не загромождать схему хабами, решается с помощью MultiSetParam. И смену иконок можно решить на 1 компонент меньше. И того -3 компонента. Как пример, предыдущее схемное решение перезалил (только вставь иконки).
![]() |
|||
карма: 1 |
|
Ответов: 378
Рейтинг: 61
|
|||
ser_davkin писал(а): смену иконок можно решить на 1 компонент меньше |
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
Фух, поработал над чем мог. Упростил все, на поиск чего хватило часа. kacmem, принимай аппарат
![]()
------------ Дoбавленo в 11.32: Ну и как это выглядит в Ubuntu (удивлен, что удалось совершить всю доработку прямо под вайном ![]() ![]() ![]() kacmem, если эта программа задумывалась как очень простой и однокликовой, то этого вполне уже достаточно. Если же немного больше, то нужна такая тонкая настройка некоторых параметров, таких как показ всплывающего меню при поступлении новых сообщений. Добавление опционального звука, если появляются новые сообщения. Иконку можно бы другую. Добавить список избранных тем, за которыми слежение ведется всегда. Добавить авторизацию для зарегистрированных пользователей, чтобы слежение происходило еще и для ЛС. Одним словом, поработать есть над чем ![]() |
|||
карма: 10 |
| ||
Голосовали: | kacmem |
Ответов: 378
Рейтинг: 61
|
|||
Assasin писал(а): kacmem, принимай аппарат![]() ------------ Дoбавленo в 12.56: Assasin писал(а): Автор последнего сообщения отображается теперь справа от названия топикаAssasin писал(а): Ну и как это выглядит![]() Assasin писал(а): если эта программа задумывалась как очень простой и однокликовой![]() |
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
kacmem, проверил в WinXP виртуалке - работает
![]() |
|||
карма: 10 |
|
Ответов: 378
Рейтинг: 61
|
|||
Assasin писал(а): проверил в WinXP виртуалке - работает------------ Дoбавленo в 19.01: Assasin, к сожалению не успеваю сегодня разобрать твой вариант, завтра обязательно займусь... |
|||
карма: 0 |
|
Разработчик
Ответов: 4698
Рейтинг: 426
|
|||
[offtop]
kacmem писал(а): Assasin, к сожалению не успеваю сегодня разобрать твой вариант, завтра обязательно займусь...Хех! То, что я сделал за час, не могут разобрать за целый день ![]() |
|||
карма: 10 |
|
Ответов: 1536
Рейтинг: 176
|
|||
kacmem, у меня на XP_sp3 вариант от Assasin работает не хуже других.
|
|||
карма: 1 |
|