"кривое" позиционирование при переходе из Проводника

Обсуждение возникших проблем, предложений и ошибок dbForge for Oracle
Закрыто
Nag
Сообщения: 60
Зарегистрирован: Чт 29 сен 2011 10:26

"кривое" позиционирование при переходе из Проводника

Сообщение Nag » Пн 26 дек 2011 10:52

Имеем пакет следующего содержания

Изображение

По DoubleClick в Проводнике по имени процедур осуществляется "неправильный" переход в текст тела пакета

Изображение

А именно, если дважды щелкнуть по имени DO_SOMETHING, то "переходит" к закомментированной версии процедуры. IMHO, если Проводник отображает процедуру из спецификации пакета, значит она, скорее всего (если пакет не инвалидный), есть "действующая" в теле пакета, и было бы логично "переходить" именно к "действующей" версии процедуры.
Переход же для процедуры P$DO_SOMETHING_ELSE вобще не осуществляется - тело пакета открывается с курсором на первой строке. Насколько я понимаю, дело в наличии символа $ в имени процедуры. Но ведь такое "именование" вполне имеет право на жизнь.

Заметил еще один момент: если дважды щелкнуть по какому-нибудь объекту в Проводнике (например, таблице), редактор которого по каким-либо причинам открывается "долго" (т.е. с задержкой в пару-тройку секунд) и за время "открытия" успеть переместить фокус в дереве на другой объект, то в итоге откроется редактор именно того объекта, на который переместился фокус, а не того, по которому "щелкнули" изначально.

vu
Devart Team
Сообщения: 13
Зарегистрирован: Пт 04 ноя 2011 12:03

Re: "кривое" позиционирование при переходе из Проводника

Сообщение vu » Пн 26 дек 2011 14:33

Nag писал(а):...
А именно, если дважды щелкнуть по имени DO_SOMETHING, то "переходит" к закомментированной версии процедуры. IMHO, если Проводник отображает процедуру из спецификации пакета, значит она, скорее всего (если пакет не инвалидный), есть "действующая" в теле пакета, и было бы логично "переходить" именно к "действующей" версии процедуры.
Переход же для процедуры P$DO_SOMETHING_ELSE вобще не осуществляется - тело пакета открывается с курсором на первой строке. Насколько я понимаю, дело в наличии символа $ в имени процедуры. Но ведь такое "именование" вполне имеет право на жизнь.
Мы воспроизвели эти проблемы и исправим их в течении месяца.
Nag писал(а):...
Заметил еще один момент: если дважды щелкнуть по какому-нибудь объекту в Проводнике (например, таблице), редактор которого по каким-либо причинам открывается "долго" (т.е. с задержкой в пару-тройку секунд) и за время "открытия" успеть переместить фокус в дереве на другой объект, то в итоге откроется редактор именно того объекта, на который переместился фокус, а не того, по которому "щелкнули" изначально.
Мы не воспроизвели эту проблему.
Возможно во время перемещения фокуса вы случайно выполнили двойной щелчок по объекту и он тоже открылся.

Nag
Сообщения: 60
Зарегистрирован: Чт 29 сен 2011 10:26

Сообщение Nag » Пн 26 дек 2011 14:41

Нет, никаких двойных щелчков я точно не делал. Специально сидел баловался некоторое время, проверяя, "не показалось ли". И оказалось, что не показалось. Я не совсем понял, от чего это зависит, но иногда после двойного щелчка по объекту курсор меняется на "песочные часы" не сразу, а через некоторое время (порой, через пару секунд). И в это "некоторое время" программа продолжает обрабатывать события от мыши, в том числе и перемещение между узлами дерева. И в этот момент удается добиться описанного выше эффекта: двойной щелчок мышью на одном узле, потом ОДИНАРНЫЙ щелчок на другом - и в результате редактор открывается не для исходного узла, а для выбранного позже.

Alexander

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Alexander » Ср 16 май 2012 12:47

Нет, никаких двойных щелчков я точно не делал. Специально сидел баловался некоторое время, проверяя, "не показалось ли". И оказалось, что не показалось. Я не совсем понял, от чего это зависит, но иногда после двойного щелчка по объекту курсор меняется на "песочные часы" не сразу, а через некоторое время (порой, через пару секунд). И в это "некоторое время" программа продолжает обрабатывать события от мыши, в том числе и перемещение между узлами дерева. И в этот момент удается добиться описанного выше эффекта: двойной щелчок мышью на одном узле, потом ОДИНАРНЫЙ щелчок на другом - и в результате редактор открывается не для исходного узла, а для выбранного позже.
Нам так и не удалось воспроизвести данное поведение. Необходимы более точные шаги воспроизведения данной проблемы.

Nag
Сообщения: 60
Зарегистрирован: Чт 29 сен 2011 10:26

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Nag » Ср 16 май 2012 15:36

Получилось стабильно воспроизвести нечто похожее следующим образом:
1) делаем DblClick на объекте в дереве, но при втором клике не отпускаем кнопку мыши. Чуть смещаем указатель, чтобы начался drug'n'drop, отпускаем кнопку мыши.
2) теперь просто одинарный клик в любой объект в дереве приведет к открытию редактора этого объекта

Alexander

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Alexander » Пт 18 май 2012 12:57

Благодарим Вас за детальное описание проблемы.

В данный момент мы занимаемся исследованием данной ситуации и свяжемся с Вами, как только проблема будет выявлена.

Alexander

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Alexander » Ср 30 май 2012 13:25

Данное поведение приложения спроектировано таким образом.

Nag
Сообщения: 60
Зарегистрирован: Чт 29 сен 2011 10:26

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Nag » Чт 31 май 2012 06:34

а по-русски? :)
Т.е. в Вашем приложении еще при проектировании был предусмотрен и потом заботливо реализован подобный баг в обработке событий мыши для TreeView?
It's a feature! (c)

Alexander

Re: "кривое" позиционирование при переходе из Проводника

Сообщение Alexander » Чт 21 июн 2012 09:57

...
А именно, если дважды щелкнуть по имени DO_SOMETHING, то "переходит" к закомментированной версии процедуры. IMHO, если Проводник отображает процедуру из спецификации пакета, значит она, скорее всего (если пакет не инвалидный), есть "действующая" в теле пакета, и было бы логично "переходить" именно к "действующей" версии процедуры.
Переход же для процедуры P$DO_SOMETHING_ELSE вобще не осуществляется - тело пакета открывается с курсором на первой строке. Насколько я понимаю, дело в наличии символа $ в имени процедуры. Но ведь такое "именование" вполне имеет право на жизнь.
Получилось стабильно воспроизвести нечто похожее следующим образом:
1) делаем DblClick на объекте в дереве, но при втором клике не отпускаем кнопку мыши. Чуть смещаем указатель, чтобы начался drug'n'drop, отпускаем кнопку мыши.
2) теперь просто одинарный клик в любой объект в дереве приведет к открытию редактора этого объекта
Сообщаем Вам, что вышла новая версия dbForge Studio for Oracle, v3.1.206, в которой данные ошибки были устранены:
http://www.devart.com/ru/dbforge/oracle ... nload.html

Благодарим Вас за Вашу помощь в усовершенствовании dbForge Studio for Oracle.

Закрыто