В событии ПриАктивизацииСтрокиT9 в Параметры.Описание.Описание передается описание слова.
Прошу сделать связанную со списком информационную панель прикрепленную справа, где бы отображалось это описание. Панель по умолчанию должна быть скрыта, а переключать ее видимость можно например кнопкой на панели команд снизу окна Т9. Окно должно позволять выделять и копировать текст и желательно обрабатывать клики по гиперссылкам.
#1, 21 мая 2024 08:20
Напоминаю об этой задаче. Во всех современных подсказках ввода есть аналогичная возможность.
tormozit изменил статус на Открыто
#2, 31 мая 2024 19:56
6.2.8917.39357
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#3, 31 мая 2024 20:00
Message: Поле не найдено: "TurboConf.Shared.T9Item.Description".
StackTrace: в TurboConf.Service.NewT9Form.:.l#IPd8B6yY4N"Ia[ykD:*z'.MoveNext()
в System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine](TStateMachine& stateMachine)
в TurboConf.Service.NewT9Form.(Object , EventArgs )
в System.Windows.Forms.Timer.OnTick(EventArgs e)
в System.Windows.Forms.Timer.TimerNativeWindow.WndProc(Message& m)
в System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Ссылка скрыта
#4, 31 мая 2024 20:03
TurboConf.Shared.dll
#5, 31 мая 2024 20:08
Вроде заработало.
#6, ред. 31 мая 2024 23:28
Перестал заменяться фрагмент "??" на имя рассчитанного типа. Я свой код при этом пока не менял.

#7, 01 июня 2024 00:42
(6) tormozit, исправлено
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#8, 01 июня 2024 07:20
Проверил. Работает.
#9, ред. 01 июня 2024 07:26
Ранее вызов события ПриАктивацииСтроки нужен был только для тех строк, в которых можно дорассчитать тип, т.е. в типе есть фрагмент "??". Поэтому ты вызываешь это событие только в этих случаях.
А теперь вызов события ПриАктивацииСтроки нужен всегда, либо при первой активации каждой строки, если ты сохраняешь свойство "Описание", которое возвращает обработчик.
#10, ред. 01 июня 2024 12:13
(9) tormozit, напомни, если описания нет, то что ты передаешь? Неопределено?
И тип тоже?
#11, ред. 01 июня 2024 12:59
(10) bolsun, в свойство "Описание" всегда помещаю строку, а в свойство "Тип" сейчас может в очень редких (нештатных ситуациях) передаваться и Неопределено. Но могу сделать всегда строку и для "Тип".
#12, ред. 01 июня 2024 13:03
Строго говоря, описание слова у меня всегда есть, т.е. что то полезное сообщить про него я в любом случае могу. Но конечно иногда эта польза очень мала.
#13, 01 июня 2024 17:59
(11) tormozit, оставим как есть.
#14, 01 июня 2024 18:00
Обнаружил, что ИР адаптер показывает описание не для всех методов. В частности вот пример.

Подсказка ТурбоКонф
Подсказка адаптера

#15, ред. 01 июня 2024 18:03
Такой метод не один, пробовал на этом модуле.
[Общий модуль АдресныйКлассификатор_ Ссылка скрыта
Кэш обновлен, ИР и адаптер актуальные.
#16, 01 июня 2024 18:07
(15) bolsun, ссылка мне недоступна.
#17, 01 июня 2024 18:10
(16) tormozit, https://disk.yandex.ru/d/pUMeoHQCiWJc3Q
#18, 01 июня 2024 18:14
Версия с выполнением обработчика для всех строк, не только для "??".
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#19, 01 июня 2024 19:24
(14) bolsun, проблему воспроизвел. Она касается методов без параметров. Исправил

#20, 01 июня 2024 19:35
Сейчас панель обрезается по высоте, если она выше списка слов. Но отфильтрованный список слов может быть очень низким. В таком случае читать описание довольно неудобно. Думаю лучше сделать некоторую минимальную высоту окна описания.
#21, 01 июня 2024 19:39
(18) bolsun, Проверил. Работает.
#22, ред. 02 июня 2024 12:25
Теперь еще нужен простой способ обозначить гиперссылку в описании слова и обработчик клика по гиперссылке. В обработчике я в частности планирую открывать
#23, 01 июня 2024 22:14
(22) tormozit, для отображения ссылок, тебе нужно будет передавать текст в формате Rtf со специальными ссылками.
http://action/имядействия/параметры
#24, 02 июня 2024 12:24
(23) bolsun, звучит сложновато. Можно пример?
#25, ред. 02 июня 2024 20:37
При смене активной строки списка часто заметно, что сначала окно описания исчезает, затем рисуется задний план (текст модуля под ним), затем рисуется новое окно описания. Это привлекает слишком много внимания. Прошу пересмотреть обновление этого окна. Не нужно его скрывать/уничтожать. Может получится просто менять его размеры и перезаполнять новым содержимым? А пока запрашивается его содержимое для свежей строки от скрипта, отображать его содержимое пустым.
#26, 08 июня 2024 23:39
(23) bolsun, прошу более подробный пример с гиперссылкой
#27, 10 июня 2024 17:24
(26) tormozit, думал ты знаком с RTF форматом, ладно попроще как-нибудь придумаю.
#28, 11 июня 2024 07:01
Собираюсь записывать демонстрационной видеоролик по механизму подсказки. Очень хотелось бы устранить хотя бы (20) проблему, т.к. из-за нее придется часто снимать отбор в списке, и желательно (25).
#29, 11 июня 2024 17:22
(20) tormozit, увеличил минимальную высоту панели

#30, 11 июня 2024 19:20
(25) tormozit, тогда придется установить постоянной ширину окна подсказки T9, сейчас оно меняется динамически от 420 до 560 и возможна ситуация что тултип перекроет его.
Но, наверное, в целом это не критично.
#31, ред. 11 июня 2024 19:25
(30) bolsun, перекрытие списка подсказки описанием слова - плохо. Если ширина списка меняется, то пусть моргает (удаляется и создается новое окно описания), т.к. это редко происходит.
#32, 11 июня 2024 19:24
(30) bolsun, хотя попробуем сначала с динамическим, вроде добился, что не перекрывает.
#33, 11 июня 2024 19:42
(31) tormozit, пробуй эту версию. Не знаю даже что хуже/лучше моргание панели, или пустая панель на доли секунды, что также выглядит как моргание.
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#34, ред. 11 июня 2024 20:00
(33) bolsun, посмотрел. Да, надолго оставлять много пустого желтого фона плохо. Предлагаю минимальную высоту применять только если не будет в окне описания пустоты снизу. Но мигать при этом конечно станет почаще. Тоже не вижу явного победителя между этими вариантами.
#35, ред. 11 июня 2024 21:00
(34) tormozit, я за вариант с полным скрытием, у меня вообще не вызывало это проблем визуального восприятия и побочек меньше всяких.
А вот моргание букв на желтом фоне сразу бросается.
#36, ред. 11 июня 2024 21:05
В Rider тоже полностью скрывается, я даже не обращаю внимание.
В VS Code не скрывается, но там данные уже хранятся готовые и показываются моментально. В штатном ТурбоКонф данные уже тоже готовы на момент вывода окна подсказки.
#37, ред. 11 июня 2024 21:11
ты ведь наверное в большинстве случаев уже знаешь контекст и описание методов, можно их передавать в УстановитьДанныеT9, тогда будет моментально отображаться.
А в остальных случаях, будет вычисляться с задержкой.
#38, 11 июня 2024 22:16
(35) bolsun, в (34) я вероятно неоднозначно выразился. Я писал только про сравнение режимов
Если же оценивать новый режим смены окна описания при переходе к другом слову, то он мне точно нравится больше чем старый. Тут сомнений нет.
#39, 12 июня 2024 16:36
(38) tormozit, https://disk.yandex.ru/d/m1G1L9SZWQtLxg
Минимальная высота учитывает пустое место снизу.
#40, 12 июня 2024 16:39
(39) bolsun, по ссылке открылось это

Так и задумано?
#41, 12 июня 2024 17:07
(40) tormozit, заменил скрипты, перезапустил турбоконф. Изменилось ничего.
#42, ред. 12 июня 2024 17:44
(39) tormozit, нет
#43, 12 июня 2024 17:43
https://disk.yandex.ru/d/XKCz9ijzgtoO1w
#44, ред. 12 июня 2024 17:57
(43) bolsun, проверил. На мой взгляд теперь обновление окна описания работает оптимально.
#45, 13 декабря 2024 23:34
tormozit изменил статус на Закрыто