Надо бы раздобыть какой-нить немодальный Popup

Omh

Lotus team
04.07.2007
2 210
1
#1
Камрады, добрый!

Хочу прикрутить немного красивостей к базе.

Нужен скриптик, котороый мог бы показать немрдальный попап около систрея.
Что-то вроде того, что показывает миранда, firefox, тот же скайп.
Можно и WinApi, и другие решения.
Главное, что бы было возможно шмальнуть из LotusScript с передачей параметра "текст попапа".

Если у кого есть, или хотя бы знает, где искать, поделитесь плиз!
Спасибо!
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#2
по ходу, если в трее ниче висеть не должно, то создание окна нужно делать, я не нашел как в лотусе создать окно, т.к. нужно передавать ссылку на call-back процедуру...
думаю, что проще всего будет нарисовать dll'ку с одной функцией, которая будет принимать твой текст и показывать его в окне...
а может можно заюзать для этого notesMinder, он же показывает подобное сообщение, вроде :eek: но придется его дизассемблировать... думаю, что проще свою библиотеку сделать... :)

вот тут есть пример для VB
http://www.visualbasic.happycodings.com/AP...ous/code12.html
правда, из Word VBA у меня его не получилось проверить, по причине того же определения адреса процедуры (опер AddressOf)... может я что-то не так делаю, а может он там не работает...
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#3
ну посыпались велики... ВинАПИ/шмапи/длл/дезасепмблер (на все готовы - лишбы с винды не слезать - вот игла-то) :)
ну зачем опять создавть непортабельный код - шоб потом выкинуть или сказать виндовз онли?!
ИБМ создает кроссплатформенное решение , а проггеры опять своими ручками все "ломают"...
swing, AWT и ходить никуда не надо :eek:
через бридж LS2J делаем рапер - всё!
примерчик с выводом прогрессбара есть на nsftools
 

Omh

Lotus team
04.07.2007
2 210
1
#4
Пробовал popup.dll от миранды ковырять, что-то не срослось :)
Будет время, конечно вернусь к этому вопросу, но просто я даже апишный ф-ий создания такого окна не нашёл (чую, плохо искал) :eek:
 
K

Krjemilek

#5
Актуально для тех кто работал с VisualStudio
Решение может не совсем глямурное, но простое как валенок:
1. В Visual Studio создаем dialogbox приложение (знаний С++ надо минимум - "рыба" приложения генерится визардом). Играемся в редакторе разукрашивая диалоговое окно и убирая OK Cancel кнопки.
2.Настраиваем таймер в диалоге чтобы через андцать секунд он дернул что нить типа CDialog::OnOk или CDialog::OnCancel. Если экспиренса для этого не хватит то гасим приладу из лотусов(см ниже)
3.Если знаний С хватает, то строку передаем через параметры вызова, если не очень то через системный энвайрмент или, прости Господи, текстовый файл.
4. В параметрах вызова диалога можно найти его позиционирование (не сходу, но можно)
5.Из лотуса тупо юзаем Shell или ShellId
6. Чтобы погасить окошко (если надо) из лотусов юзаем
Declare Function TerminateProcess Lib "kernel32"_Alias "TerminateProcess" (Byval hProcess As Long, Byval uExitCode As Long) As Long

если знаком более VB то решение аналогичное
Enjoy!!
Сорри за лозунговый стиль - обед, если ввяжитесь в данное решение подскажу более детально.

ЗЫЗЫ: Фанатам мультиплатформенности - не спорю кросс-платформенность это мегакульное слово, но надо исходить из того как есть, а не из того как бы нам хотелось. За 10 лет моей работы, только один заказчик заикнулся о линуксе - он где-то слышал это слово.
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#7
но просто я даже апишный ф-ий создания такого окна не нашёл (чую, плохо искал)
см мой пост, я поправил, там пример на VB
ЗЫ: CreateWindowEX

lmike, я твои попытки писать "портабельный код" поддерживаю, но как ты это делаешь, не поможет, это как просто ходить и говорить: "Будьте добрыми!", но не объяснять как это :eek: короче говоря, показуй пример, делающий именно то, что нужно, без предположений ;)
программисты в сущности очень ленивые, поговорить о том, что можно сделать они любят, но вот до дела чаще не доходит, а если кто-то начнет, даст толчек, то начнут соревноваться кто лучше, так и научатся :)
 

Omh

Lotus team
04.07.2007
2 210
1
#8
Постараюсь заюзать джаву.
Я тоже очень не хочу привязываться в винде.

lmike, я бы конечно рад, но пока что слова swing, AWT мне ничё не говорят :)

Буду смотреть в сторону жавы, что бы не быть платформозависимым.
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#10
я скажу и про др. варианты:
-отвязка от платформы в JNI (но здесь может оказаться - шило-на-мыло)
пример http://jeans.studentenweb.org/java/trayicon/trayicon.html (с готовой длл для виндей, для др. прийдется писать)
-использовать внешнюю джава (и получится даже "в рамках"), но с особенностями (передача параметров)
-использование "неродного" механизма для вывода окна (т.е. не привязанного к трею)
-использование гугля :)
Для просмотра контента необходимо: Войти или зарегистрироваться
- вот и интегрейшн

Akupaka
swt - внешняя, имплементация джава интерфейсов для платформы, сущ. в виде библиотеки (jar), версиюдля конкретной ЖВМ - не подскажу (давно возился)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#11
swt - внешняя, имплементация джава интерфейсов для платформы, сущ. в виде библиотеки (jar)
ну, это и так понятно :eek:
я ж вопрос по другому ставил ;)
R8 вообще не в тему в сравнении использования Java с R5-R7, грубо говоря, 8-ка на java, в то время как предыдущие умели ее использовать...
и то, свою и древней версии, в сравнении с остальным миром %)
поэтому связать модные новинки и возможности java со старыми версиями Notes задача не самая приятная может оказаться :)
посему, если ты сможешь! соберешься! напишешь краткую и понятную инструкцию как подобные текущей задаче реализовать, то от нас всех (думаю) будет большое спасибо и уважуха! а при встрече и пивом угостят ;)
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#12
безусловно напишу - но вот время выцарапать сложно :D (я до кода не жадный)
потому часто отделываюсь ссылками
я обоснованно предпалагаю, что грамотному разрабу достаточно наметить направление, и пару ссылок...

я несколько раз предлагал воспользоваться идеями по отработке XML на java (там и код был), но реакции не последовало...
вот. и сейчас дал ссылки - интересно кто-нить ходил туда?! ;)
ведь там java 1.4 - что соответствует 7-ке
и не поверю - чтобы не хватило сил сходить на nsftools (адрес, надеюсь не нужно полностью) и найти там LS2J готовую базу с экзампелами по заюзыванию AWT в Нотесе

мои сложности (хотя это и малое оправдание) завязаны еще и на отсутствие нативной винды как класса, на рбочем месте (Убунту) и дома (МакОСХ)
в wine (среда запуска виндовых приложений в *никс) отсутствует поддержка ИБМ реализации java, в её UI части - клиент просто падает
под виртуальной машиной можно - но надо настраивать энвиронмент (что займет время)

но то что эти вещи работают - я точно знаю (когда-то пробовал)
я допиливал аплет (Николая Норкина) - кот как swing, так и AWT контролы юзал для отображение имеджей в доке (на notesnet.ru)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#13
ууу, какой опыт под таким негромким ником ;)
я посмотрел, что надо awt, и на этом тесты приостановились, т.к. в яве ни гу-гу, и как эти библиотеки найти и прицепить к 6-ке хз :D
а на счет написать, то это пожалуйста, полезно для всех будет...
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#14
ууу, какой опыт под таким негромким ником ;)
я посмотрел, что надо awt, и на этом тесты приостановились, т.к. в яве ни гу-гу, и как эти библиотеки найти и прицепить к 6-ке хз :D
а на счет написать, то это пожалуйста, полезно для всех будет...
ничего там "цеплять" не надо, пишешь import (необходимых библ) и всё (код можно вставлять прям по-месту)
для полноценных опытов с джава - рекомендую ecplipse
тудыж можно подцепить и нативную ЖВМ от Нотуса - и тогда найти библиотеки станет вразы легче ;)
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#15
ну, я все-таки не на столько глупый :D
пишу импорт, а он в ответ "не знаю такой библиотеки"
соотв. ее нужно туда прицепить, а вот куда да как...
еще раз напомню - R6 ;) там ЖВМ 1.3 вообще древность )
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#16
ну, я все-таки не на столько глупый :D
пишу импорт, а он в ответ "не знаю такой библиотеки"
соотв. ее нужно туда прицепить, а вот куда да как...
еще раз напомню - R6 ;) там ЖВМ 1.3 вообще древность )
ихде пример?
AWT робить аж 1.1 версии (R5)
в R6 - уже есть свинг
я уже здесь выкладывал ссылку по совместимости с ЖВМ (т.е. напоминания излишни ;) )
http://www-01.ibm.com/support/docview.wss?...uid=swg21188789

и вот ссылка (смотрим на дату)
http://www.nsftools.com/tips/JavaTips.htm#javadialog
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#17
значит я не правильно писал бибилиотеку...
анекдот про чукчу знаешь? :D
"ты не умничай, ты пальцем покажи" ;)
напиши (строку кода), какую библиотеку подключить, что-бы класс Display был доступен? ;)
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#18
значит я не правильно писал бибилиотеку...
анекдот про чукчу знаешь? :D
"ты не умничай, ты пальцем покажи" ;)
напиши (строку кода), какую библиотеку подключить, что-бы класс Display был доступен? ;)
ежели ты никак с СВТ не успокоишься - скачай jar совместимый с версией ЖВМ твоей Нотусы
полож его в путя для ЖВМ Нотусы (там разные варианты от версии) типа jvm/lib/ext
передерни нотуса
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#19
минуточку... AWT-то работает, но я-то об SWT говорил :D
ежели ты никак с СВТ не успокоишься - скачай jar совместимый с версией ЖВМ твоей Нотусы
полож его в путя для ЖВМ Нотусы (там разные варианты от версии) типа jvm/lib/ext
можно подробнее? где ее скачать под конкретную версию?..
я что-то последний релиз вижу, а под версию не дуплю ;))

забил на СВТ,
прогрессбар, который нашёл на нсфтулз: здесь
 

Omh

Lotus team
04.07.2007
2 210
1
#20
Да, я уже всё это подтащил себе.
Эклипс проинсталлировал, LS2J поппробовал (заменил WinAPi клипборд на Jav'овский).
Буду грызть.