Возник вопрос. Как можно "вручную" закрыть панель плагина и спозиционировать курсор на нужный файл?
Объясню ситуацию. Есть архивный плагин, который создает панель со списком файлов. Если PluginInfo::CurDir выставить пустым, то при нажатии на ".." Фар всё сделает сам: закроет панель и выставит курсор на сам архив.
Если curDir не пустой, а по нажатию на ".." надо выйти, то можно вызвать Control(FCTL_CLOSEPLUGIN, ...). Но тогда курсор стоит на верху файловой панели. Можно ли его как-то подвинуть на нужный файл?
Ручной выход из панели плагина и позиция курсора
- HaRT
- Moderator
- Posts: 10863
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: Ручной выход из панели плагина и позиция курсора
Есть ещё один интересный аспект.
Если плагин выставляет пустой CurDir, то Фар восстанавливает полное состояние панели: режим панели, режим сортировки, текущий элемент, его местоположение на видимой части панели и даже выделение. Это означает, что Фар где-то это всё хранит. Вот бы архивному плагину иметь возможность как-то явно скомандовать Фару, что надо это сохранённое состояние гуртом восстановить, но не затрагивая при этом CurDir (например, если при FCTL_CLOSEPLUGIN значение Param равно NULL)…
Если плагин выставляет пустой CurDir, то Фар восстанавливает полное состояние панели: режим панели, режим сортировки, текущий элемент, его местоположение на видимой части панели и даже выделение. Это означает, что Фар где-то это всё хранит. Вот бы архивному плагину иметь возможность как-то явно скомандовать Фару, что надо это сохранённое состояние гуртом восстановить, но не затрагивая при этом CurDir (например, если при FCTL_CLOSEPLUGIN значение Param равно NULL)…
Фар есть инструмент, а не нянька. © 2009 DrKnS
- NightRoman
- Posts: 6184
- Joined: Fri 18 Aug, 2006 13:52
- Location: Cambridge, UK
- Has thanked: 32 times
- Been thanked: 62 times
- Contact:
Re: Ручной выход из панели плагина и позиция курсора
просто для инфы - есть тикет, вроде связанный немного:
http://bugs.farmanager.com/view.php?id=1114
http://bugs.farmanager.com/view.php?id=1114