Latest post of the previous page:
обновил... VFile ушёл в plugin.hpp, вместо костыля добавил FarViewerVFile() в PlluginStartupInfo"Виртуализировать" вьювер
Re: "Виртуализировать" вьювер
HaRT QView посмотрел - никаких новых идей (вьвер или ручная работа с панелью - зачем тут вируальные файлы?). Сорсов анаморфозиса у меня нет - ничего сказать не могу...
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: "Виртуализировать" вьювер
Так Вы хотя бы посмотрите, что делает Анаморфозис (для пользователя), — тогда станет понятно, зачем в QView виртуальные файлы.2useven10 wrote:Сорсов анаморфозиса у меня нет - ничего сказать не могу...
Фар есть инструмент, а не нянька. © 2009 DrKnS
- John Doe
- Бюрократ
- Posts: 13861
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: "Виртуализировать" вьювер
Я видимо тоже не очень понимаю зачем там виртуальные файлы.
Анаморфозис выводит в qview всякую информацию.
API для доступа плагинов к qview просто отсутствует, поэтому анаморфозис использует какой-то хак.
Чтобы избавиться от хаков необходимо qview-API, да. Но причём тут виртуальные файлы?
P.S.
Мне понятно зачем нужна виртуализация в qview (например на панели FTP, или в архиве).
Но при чём тут анаморфозис?
Анаморфозис выводит в qview всякую информацию.
API для доступа плагинов к qview просто отсутствует, поэтому анаморфозис использует какой-то хак.
Чтобы избавиться от хаков необходимо qview-API, да. Но причём тут виртуальные файлы?
P.S.
Мне понятно зачем нужна виртуализация в qview (например на панели FTP, или в архиве).
Но при чём тут анаморфозис?
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: "Виртуализировать" вьювер
При наличии виртуализации в QView у Анаморфозиса отпала бы необходимость использовать хаки — он смог бы штатно обходиться временным файлом. Впрочем, специализированный API даже лучше.John Doe wrote:Причём я понимаю зачем нужна виртуализация в qview (например на панели FTP, или в архиве).
Но при чём тут анаморфозис?
Фар есть инструмент, а не нянька. © 2009 DrKnS
- WARP ItSelf
- Самый умный
- Posts: 1011
- Joined: Tue 15 Mar, 2005 23:19
- Contact:
Re: "Виртуализировать" вьювер
Ну, скажем, апи для QView позволило бы не просто подсовывать некий временный файл, а прямо таки в цвете рисовать всякие mp3 теги. Анаморфозис он же тупой. Он по некоторым критериям определяет, что файл открывается в QView и отдает вместо файла другой. Виртуальный файл это несколько другое. Правда я считаю, что для QView виртуальные файлы не обязательны, там скорее Owner Draw предоставить надо. Файлы ни раскраски не дают ни переноса строк по-человечески.
P.S. Простите за несвязность мысли, нетрезв.
P.S. Простите за несвязность мысли, нетрезв.
Никто не знал, а я...
Re: "Виртуализировать" вьювер
mantis #1836 -- новаая версия вьювера с поддержкой 'виртуальных' файлов. Вьювер читает виртуальные файлы либо через предоставляемый ему C++ интерфейс VFile: -- для вызова напрямую из фар, либо через plain C вариант этого интерфейса struct SVFile и доступную через FSF ф-ю FarViewerVFile -- для вызова из плагинов. Предлагаемое решение позволяет использовать вьювер для показа данных, не используя настоящих файлов (не надо создаватть временные файлы, достаточно предоставить интерфейс для получения данных вьювером). И НЕ БОЛЕЕ. В интерфейс вошли только методы, которые необходимы для работы вьювера (кроме Write - он не используется).
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: "Виртуализировать" вьювер
Я исправил.Maximus5 wrote:со ссылкой ошибся
Фар есть инструмент, а не нянька. © 2009 DrKnS
Re: "Виртуализировать" вьювер
пробуем: http://skirda-file.googlecode.com/files ... 0001836.7z
неплохо бы простенький плагин...
неплохо бы простенький плагин...
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!
Re: "Виртуализировать" вьювер
Помыслил...
Это решение половинчатое в стиле "юзер вызвал плагин, который что-то показал во вьювере".
Нужна вторая половина - "юзер открыл вьювер и выбрал нужный режим просмотра". Т.е. фактически здесь нужна привязка к ProcessViewerEventW (VE_что-то-там) с соответствующим функционалом.
Есть два пути:
1. Применяем существующую реализацию и попутно развиваем вторую половину
2. Ждем полноценной реализации идеи
Это решение половинчатое в стиле "юзер вызвал плагин, который что-то показал во вьювере".
Нужна вторая половина - "юзер открыл вьювер и выбрал нужный режим просмотра". Т.е. фактически здесь нужна привязка к ProcessViewerEventW (VE_что-то-там) с соответствующим функционалом.
Есть два пути:
1. Применяем существующую реализацию и попутно развиваем вторую половину
2. Ждем полноценной реализации идеи
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: "Виртуализировать" вьювер
А как насчёт сценария “пользователь открыл просмотрщик, вызвал через меню интересующий его плагин и ожидает, что данные файла будут представлены в другом виде (но с сохранением текущей позиции и выделения найденного)”?Skirda wrote:Нужна вторая половина - "юзер открыл вьювер и выбрал нужный режим просмотра"
Фар есть инструмент, а не нянька. © 2009 DrKnS
Re: "Виртуализировать" вьювер
первым членом SVFile надо бы StructSize положить.
И меня гораздо больше интересует внедрение SVfile в поиск по плагиновой панели.
Imho только в этом случае мы получим реальный выигрыш по скорости.
Например, экспортом в плагине:
Ну и про анаморфозис не забыть. Это скорее к ProcessViewerEventW.
И меня гораздо больше интересует внедрение SVfile в поиск по плагиновой панели.
Imho только в этом случае мы получим реальный выигрыш по скорости.
Например, экспортом в плагине:
Code: Select all
struct GetSVFileInfo
{
size_t StructSize;
HANDLE hPanel;
struct PluginPanelItem *PanelItem; // по одному элементу
OPERATION_MODES OpMode;
SVFile Dest; // [OUT]
};
int GetSVFile(struct GetSVFileInfo);
- zg
- zero-gravity
- Posts: 6035
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Re: "Виртуализировать" вьювер
я бы не стал этого делать до официальной заморозки апи в тройке.Skirda wrote:1. Применяем существующую реализацию и попутно развиваем вторую половину
Re: "Виртуализировать" вьювер
И нафига козе баян, если, при наличии второй половины "второй" вьювер не будет открываться, а все будет происходить в ЭТОЙ копии.HaRT wrote:А как насчёт сценария “пользователь открыл просмотрщик, вызвал через меню интересующий его плагин и ожидает, что данные файла будут представлены в другом виде (но с сохранением текущей позиции и выделения найденного)”?
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!
Re: "Виртуализировать" вьювер
Ну как бы одно другому не мешает, IMHOzg wrote:я бы не стал этого делать до официальной заморозки апи в тройке.Skirda wrote:1. Применяем существующую реализацию и попутно развиваем вторую половину
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!