APanel.Path0 -- как получить аналог из плагина?

Место, где разработчики плагинов могут поделиться своим опытом.
User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

APanel.Path0 -- как получить аналог из плагина?

Post by John Doe » Tue 26 Dec, 2017 10:16

Latest post of the previous page:

NightRoman wrote:
Tue 26 Dec, 2017 07:15
Но есть проблема, если панель сама запускается из плагиновой панели, тогда непонятно, как эту папку получить.
getcurrentdirectory не оно?

User avatar
zg
zero-gravity
Posts: 5610
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 100 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by zg » Tue 26 Dec, 2017 11:32

2useven10 wrote:
Tue 26 Dec, 2017 06:24
Если открывать через префикс, этой информации всё равно не будет ?
не очень понятно, о чем речь. если про ком строку, то там вложенный архив через префикс не откроешь. если про ассоциации — то там сейчас всё в любом случае плохо, фар контекст теряет и например внешний архив не обновляет.

2useven10
Posts: 3963
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

APanel.Path0 -- как получить аналог из плагина?

Post by 2useven10 » Tue 26 Dec, 2017 12:30

zg wrote:
Tue 26 Dec, 2017 11:32
не очень понятно, о чем речь.
О комстроке.
При открытии обычного (не вложенного) архива через префикс информация о родительской панели из AnaliseInfo будет недоступна.
В OpenCommandLineInfo тоже надо будет добавлять?

2useven10
Posts: 3963
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

APanel.Path0 -- как получить аналог из плагина?

Post by 2useven10 » Tue 26 Dec, 2017 12:41

А также OpenShortcutInfo и м.б. ещё какие-то инфо.

User avatar
zg
zero-gravity
Posts: 5610
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 100 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by zg » Tue 26 Dec, 2017 12:48

зачем? в чём польза?

2useven10
Posts: 3963
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

APanel.Path0 -- как получить аналог из плагина?

Post by 2useven10 » Tue 26 Dec, 2017 13:11

Как мне казалось суть предложения было в добавлении информации о родительской панели при открытии панели плагина.
Если добавлять, то везде. Если это делать только для детекта вложенного архива - добавлять надо флаг 'вложенный архив'.
Как-то так, если конечно мы говорим об одном и том же...

User avatar
zg
zero-gravity
Posts: 5610
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 100 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by zg » Tue 26 Dec, 2017 13:38

2useven10 wrote:
Tue 26 Dec, 2017 13:11
Как мне казалось суть предложения было в добавлении информации о родительской панели при открытии панели плагина.
предложение было — возвращать хендл родительской панели. для фаровской там будет nullptr. при вызове из комстроки, по шорткату и т.д. там всегда будет nullptr — смысл добавлять поле с константным значением.
2useven10 wrote:
Tue 26 Dec, 2017 13:11
Если это делать только для детекта вложенного архива - добавлять надо флаг 'вложенный архив'.
а скажите пожалуйста, как для флага вызвать FCTL_GETPANELINFO и узнать состояние флага PFLAGS_REALNAMES? это вот вам для арклайта прямо нужно. для хендла — очевидно как.

User avatar
NightRoman
Posts: 5911
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 10 times
Been thanked: 11 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by NightRoman » Tue 26 Dec, 2017 13:42

John Doe wrote:
Tue 26 Dec, 2017 10:16
NightRoman wrote:
Tue 26 Dec, 2017 07:15
Но есть проблема, если панель сама запускается из плагиновой панели, тогда непонятно, как эту папку получить.
getcurrentdirectory не оно?
Там все, что угодно может быть, в зависимости от того, что у плагина панели является файловой системой.

User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

APanel.Path0 -- как получить аналог из плагина?

Post by John Doe » Tue 26 Dec, 2017 13:58

NightRoman wrote:
Tue 26 Dec, 2017 13:42
Там все, что угодно может быть
Да нет же, там реальный путь, как и в Path0

2useven10
Posts: 3963
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

APanel.Path0 -- как получить аналог из плагина?

Post by 2useven10 » Tue 26 Dec, 2017 14:10

zg wrote:
Tue 26 Dec, 2017 13:38
там всегда будет nullptr
Т.е. вложенность возможна только при открытии через Analize, тогда да - смысла нет.
Для меня это не очевидно...

Посмотрел, и в самом деле:
открыл архив из временной панели через arc:, при выходе оказываешься не во временной, а в обычной файловой панели.

User avatar
NightRoman
Posts: 5911
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 10 times
Been thanked: 11 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by NightRoman » Tue 26 Dec, 2017 15:38

John Doe wrote:
Tue 26 Dec, 2017 13:58
NightRoman wrote:
Tue 26 Dec, 2017 13:42
Там все, что угодно может быть
Да нет же, там реальный путь, как и в Path0
А, тогда я проглядел слона-то. Надо будет задействовать. Спасибо.

2useven10
Posts: 3963
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

APanel.Path0 -- как получить аналог из плагина?

Post by 2useven10 » Tue 26 Dec, 2017 16:44

zg, Наверное можно ничего не добавлять.
Ту же информацию можно получить в ф-и OpenW() плагина (до создания его панели) через FCTL_GETPANELINFO, PANEL_ACTIVE.
Или я не прав?

User avatar
zg
zero-gravity
Posts: 5610
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 100 times
Contact:

APanel.Path0 -- как получить аналог из плагина?

Post by zg » Tue 26 Dec, 2017 17:18

2useven10 wrote:
Tue 26 Dec, 2017 16:44
Ту же информацию можно получить в ф-и OpenW() плагина (до создания его панели) через FCTL_GETPANELINFO, PANEL_ACTIVE.
скорее всего — да.

Post Reply

Return to “Разработка плагинов”