Вопрос по UI.

  • Автор темы Автор темы Sakharovich
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Sakharovich

Участник
Топикстартер
Сообщения
61
Реакции
0
Задача : Создать плавающую панель(палитру), с набором функциональных кнопок, которая бы все время присутствовала на рабочем столе, и при необходимости можно было бы нажать одну из кнопок, после чего фокус переходил бы на диалоговое окно, и не допускал переключения без нажатия одной из класических кнопок - ок\cancel. Проблема : как сделать так что бы плавающая палитра находилась постоянно на рабочем столе, при этом не запрещая доступ к другим элементам интерфейса всего приложения InDesign? При отладке в toolkit - палитра появляется и никуда не исчезает, пока не закроешь, а вот в InDesign - она появляется и сразу исчезает, есть подозрения что решение данной проблемы лежит гдето между использованием sleep() и обработчиками состояний listeners, но хоетлось бысделать все правельно. Есть ли у кого нить какие нить идеи?пжлст )
 
Ответ: Вопрос по UI.

Обсуждение этого вопроса было пару месяцев назад в ветке про скрипты иллюстратора. Сейчас в ней эта тема куда-то делась... ;-) Выводы были неутешительные. Никто не описал процесс создания немодального окна при помощи JS.

AirGraph.
 
Ответ: Вопрос по UI.

Sakharovich сказал(а):
Есть ли у кого нить какие нить идеи?пжлст )

Есть. Писать не на JS, а, скажем, на Дельфи.
 
Ответ: Вопрос по UI.

Specialist сказал(а):
Есть. Писать не на JS, а, скажем, на Дельфи.
Вот это идея, так идея... Зачем тогда скриптинг? Тогда уж и плагин написать можно...
 
Ответ: Вопрос по UI.

qsedftghk сказал(а):
Тогда уж и плагин написать можно...
Плагины к InDesign/InCopy (другие продукты Adobe перечислять не буду, не та ветка) пишутся исключительно на С++. Удачи.
 
Ответ: Вопрос по UI.

qsedftghk сказал(а):
Вот это идея, так идея...

Надо не иронизировать, а читать "факин мануал", за моим авторством, к примеру...
 
Ответ: Вопрос по UI.

ммда, ситуация и впрямь неутишительная, что касается плагинов и delphi - кажется мне, что в данной ситуации, решить задачу возможно, оставаясь в рамках скриптов. Что, собственно, я и попытаюсь сделать!
 
Ответ: Вопрос по UI.

Sakharovich сказал(а):
ммда, ситуация и впрямь неутишительная, что касается плагинов и delphi - кажется мне, что в данной ситуации, решить задачу возможно, оставаясь в рамках скриптов. Что, собственно, я и попытаюсь сделать!

Повторяю, еще раз. То, что пишут на Дельфи это именно СКРИПТЫ.

Если уж вам до такой степени лень юзать поиск - вот ссылка:
http://forum.rudtp.ru/showpost.php?p=336143&postcount=14
 
Ответ: Вопрос по UI.

Specialist сказал(а):
Надо не иронизировать, а читать "факин мануал", за моим авторством, к примеру...
Уж и поиронизировать нельзя. Просто писать на js и на дельфи несколько разные вещи, не так ли? И человек хочет, как я понял, писать именно на js. И потом, никто (кроме AirGraph, да и то в другом топике) так толком и не сказал, такая задача вообще хоть как-то реализуется на js, а не на дельфи, с++ и т.п.
Кстати, мануал, где лично я прочитал о таких плавающих панельках, посвящен скриптингу на vb, apple script и JS. И там, вроде, ни слова не сказано о дельфи.
ЗЫ. Извининяюсь, если задел чем-то
 
Ответ: Вопрос по UI.

Мануал скачал, прочитал, статьи о COM нашел, ознакомился, информация занятная, но, как метко заметил товарищ qsedftghk, js и Delphi достаточно разные средства разработки, и мне хотелось бы все таки остаться в границах JS, обусловленно это мое желание тем, что я полностью некомпетентен в среде delphi, конечно, чем дальше тем сильней я уверен в том, что необходимо эту ситуацию исправлять, но только не ради одного единственного окна плавающей палитры. В некотором смысле упертость же моя, обусловлена все тем же JS Tools Guide, цитата - "Floating palette: Also called modeless dialog, allows activity in other application windows." Далее в документе предлагается список скриптов демонстрирующие способы применения некоторых элементов, таких как treeView, progressBar etc. И самым первым примером, мы видим вот что : SnpCreateDialog.jsx Creates a very simple, modeless dialog (a palette) with OK and
Cancel button behavior. - я скачал SDK Bridge, в котором обнаружил указаный скрипт, запустив его в Ext. ToolKit 2 - получил желаемый результат, однако, в приложении InDesign результат уже не тот, окно появляется и исчезает, консоль возвращает true, оповещая тем самым что скрипт отработал нормально, однако нажать кнопку не удается. Это я все к чему - а , к тому что это же официальное руководство, официальный пример скрипта, да конечно жаже в официальных руководствах бывают ошибки и опечатки, но тут получается, что тип окна palette вообще невозможно использовать(в случае если это все таки ошибка), нет , тут что то не так, средства есть, они описаны, но что то все таки из виду мы упускаем. Вот собсно и хотелось бы разобраться в этой ситуации, вопрос даж не в способе реализации а понимани что все таки я делаю не так. А благодаря Specialist-у, ситуация как миниму не безвыходная, но опять таки повторюсь - вопрос не в решении, а в понимании.
 
Ответ: Вопрос по UI.

qsedftghk сказал(а):
Уж и поиронизировать нельзя. Просто писать на js и на дельфи несколько разные вещи, не так ли? И человек хочет, как я понял, писать именно на js.

Можно сделать на Дельфе панельку (для этого вообще ничего не надо уметь, даже читать), а код писать на JS и выполнять методом doScript.
 
Ответ: Вопрос по UI.

Всё очень просто и то, что написано в руководстве не ошибочно. И все типы окошек работают как и должны, а не как хочет автор темы.
Вот логика: скрипт создает окно типа "диалог" где пользователь задаёт нужные ему параметры. Пока висит это окно ничего другого сделать нельзя, фокус на диалоге. Нажимает ОК, диалог закрывается и скрипт создаёт окно типа "палитра" на котором есть прогрессбар и, например, кнопка "отмена". Сидим, смотрим как бегут проценты, при этом можем нажать "отмену" - скрипт это заметит и остановится.

P.S. всё-таки, скрипты под интерпритатором (js и vbs) - это не полноценные программы, а Индез - не операционная система с вытесняющей многозадачностью. Много чего нельзя сделать скриптами, но очень много и можно. Поэтому, да, вопрос не в решении, а в понимании.
 
Ответ: Вопрос по UI.

Specialist сказал(а):
Можно сделать на Дельфе панельку (для этого вообще ничего не надо уметь, даже читать)...

Можно. Но у нас в университете курс по дельфи был рассчитан на 1 год. А ява - 3 месяца.
 
Ответ: Вопрос по UI.

Dенис сказал(а):
Вот логика: скрипт создает окно типа "диалог" где пользователь задаёт нужные ему параметры. Пока висит это окно ничего другого сделать нельзя, фокус на диалоге. Нажимает ОК, диалог закрывается и скрипт создаёт окно типа "палитра" на котором есть прогрессбар и, например, кнопка "отмена". Сидим, смотрим как бегут проценты, при этом можем нажать "отмену" - скрипт это заметит и остановится.
Получается, что данный тип окошка нужен всего лишь для прогресс-баров что ли?

Specialist сказал(а):
...и выполнять методом doScript
Как-то это я упустил из виду
 
Ответ: Вопрос по UI.

qsedftghk сказал(а):
Получается, что данный тип окошка нужен всего лишь для прогресс-баров что ли?
Это всего лишь мой пример. Главное понимать, что такие окна будут видны только пока работает скрипт и ими можно управлять. То что они не закрываются в отладчике - это другое.
Запустить их отдельным потоком не получится.
 
Ответ: Вопрос по UI.

СТОП! Что значит не так как, собственно, я думал???, вы хотите сказать что назначение плавающей палитры всего лишь только в реализации progressBar??? Прошу проещния за мое невежество и упертость, но я логики в таком случае совсем не наблюдаю, в приведении вышеуказанного примера в качестве пояснения использования этой самой palette. Вполне определенная панелька, с двумя кнопочками, то что нужно, только почему оно правельно(так как автор ожидает), только в ToolKit? как это обьяснить?
 
Ответ: Вопрос по UI.

И еще : конечно пока работает скрипт, никто и не говорит что скрипт должен завершать работу а окно должно остаться. СУть в том что немодальное окно - allows activity in other application windows, не блокирует фокус на себе, позволяет работать с другими элементами приложения. Если не прав - помогите, обьясните где именно.
 
Ответ: Вопрос по UI.

да вроде все верно, но на самом деле - из тулкита работает, а при запуске из inD нет. глюк какой-то...
надо на Adobe forums узнать.

я еще на маке сегодня проверю, может на нем работает...
 
Ответ: Вопрос по UI.

НАБЛЮДЕНИЕ : При запуске скрипта в TK - скрипт отрабатывает, после чего окно остается, но можно запустить еще раз тот же скрипт, тем не мение при нажатии кнопки - в консоли отображается реакция ...
 
Ответ: Вопрос по UI.

Adobe - жмот. Это мне напоминает открытие многостраничного pdf скриптом на js в иллюстраторе. Вроде бы все можно, но всё-таки шишь. Так и здесь. Кроме прогресс бара, я не вижу толка в таком окошке. ИМХО, конечно.
 
Статус
Закрыто для дальнейших ответов.