Temp panel plugin issues

Here you can propose new features, make suggestions etc.

Moderators: white, Hacker, petermad, Stefan2

Valery_Kondakoff
Junior Member
Junior Member
Posts: 92
Joined: 2004-06-27, 15:24 UTC

Post by *Valery_Kondakoff »

You are not the only one. I'm pretty interested in the fully working Temp panel implementation as well, bu I just can't answer your questions.

It seems you are asking these questions in a wrong forum. Try to create s new thread here: http://ghisler.ch/board/viewforum.php?f=6 and ask your questions once again.

HTH!
CU
VK
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Valery_Kondakoff wrote:It seems you are asking these questions in a wrong forum. Try to create s new thread here: http://ghisler.ch/board/viewforum.php?f=6 and ask your questions once again.
Thanks for interest but I think this forum is right for my questions. Because I write things (except some posts) that TC doesn't have but should - so they are suggestions. :)
Postkutscher
Power Member
Power Member
Posts: 556
Joined: 2006-04-01, 00:11 UTC

Post by *Postkutscher »

2MVV
I`m also very interested for your work. I was simply too busy for the forum last time. :(
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

I had one good idea but it may require to update FS interface. Currently if user copies/moves folder to a FS plugin, TC uses FsMkDir and FsPutFile in order to recreate folder structure. It would be great sometimes to pass entire folder at once (i.e. for adding link to folder into TP plugin). Also
Here I see two variants:
* adding additional flag like FS_COPYFLAGS_RECURSE, but in this case there is no way to know if plugin supports this flag. So, some way to tell to TC supported interface version is required (currently only TC tells to plugin interface version). For this task perhaps may be used return value of function FsInit that's not used for now;
* adding function like FsPutFolder (if plugin has no this function TC will operate as usually with FsMkDir and FsPutFile) - this variant is fully compatible with existing interface and old plugins.


And when user wants to delete folder, TC deletes each file separately but sometimes it is better to let plugin remove folder. E.g. TC may try to delete whole folder and if plugin returns error (and GetLastError returns ERROR_DIR_NOT_EMPTY) TC may use usual method - this is very useful for operating with links to folders or reparse points.
This behaviour is quite unexpected sometimes and dangerous!


I was wonder when saw that my NTLinks plugin works for my temporary panel objects and show correct type and reparse point target within real folder opened through virtual panel link! But it is sad that TC ignores FILE_ATTRIBUTE_REPARSE_POINT flag when deleting folder from FS plugin - and tries to remove all files inside folder, as I wrote above.
Last edited by MVV on 2009-10-10, 17:34 UTC, edited 1 time in total.
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Another issue: I select large folder, press to copy it to FS plugin, wait... wait... wait... 'til TC calcs folder's size... wait... wait... press Escape to skip calculations! And ProcessProc returns 1 as if I want to cancel operation! If I ask user about cancelling and continue, on the next call ProgressProc returns 1 again! So I have no chance to know if user really wants to abort operation or not.
Possible solutions:
1. not to return 1 if user cancels only folder size calculation;
2. not to return 1 every time, return 1 only when user presses Escape/Cancel button.
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

I created in my temp panel virtual folder pointing to my local folder F:\. I entered this folder and used Shift+F4 in order to create text file. But TC created and opened file with entered name in other panel's folder instead of F:\ folder!
This behaviour is quite unexpected!
TC should call RemoteNameToLocal and create file according to returned path or warn if user tries to use Shift+F4 in plugin's folder but not to create file somewhere!
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

And one issue that has place when user has two or more same plugins installed. All of them have same INI file and same section in this file. All of them return to TC default room name but TC renames it. Second, third etc plugin gets new root name (not default), but plugin don't know about it.

So, I think that actual plugin root name should be added into FsDefaultParamStruct structure, as INI path that's already there. So, plugin would use this name as INI section name if TC will tell this name to it. Structure already has size field, so plugin may check it in order to detect root name field presence in structure.


If you're have interest to my work, you may read more about plugin (and try it :)) here.
Postkutscher
Power Member
Power Member
Posts: 556
Joined: 2006-04-01, 00:11 UTC

Post by *Postkutscher »

MVV wrote:And one issue that has place when user has two or more same plugins installed.......
........
So, I think that actual plugin root name should be added into FsDefaultParamStruct structure, as INI path that's already there. So, plugin would use this name as INI section name if TC will tell this name to it. Structure already has size field, so plugin may check it in order to detect root name field presence in structure.
IMHO it is not needed because the situation with the same plugin installed more then once is not normal.
If you need this for test purpose using different builds of your plugin, you may simply play with several wincmd.inis.
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Postkutscher wrote:IMHO it is not needed because the situation with the same plugin installed more then once is not normal.
Maybe. But maybe sometimes it is needed in one TC instance (e.g. if plugin don't support multiple instances of its system).


Little bug: when I type within TP command like <add Temp F:\Temp, TC shows drop-down hint on F:\ where I may choose Temp e.g. But when I specify relative path starting with \ or .., TC suggests wrong items taken from its real current folder.
Action: This should be disabled in this case (or TC should suggest right items).
User avatar
nsp
Power Member
Power Member
Posts: 1804
Joined: 2005-12-04, 08:39 UTC
Location: Lyon (FRANCE)
Contact:

Post by *nsp »

MVV wrote:Seems I'm the one here:)

Or I bother people too much with this things:)
You are not alone in this quest !

But if you search in the forum, you will find that either M. ghisler do not respond or do not care of all suggestions made for virtual folder in the past !

If we have one thing in the wish list this is good....

But it should be implemented by TC as a "filelist manager" or whatever but with supporting all function that TC can provide..
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

I can't believe! Internal associations don't work at all inside temporary panel!
So, I can't pass real filename as param for button bar button, and I can't execute a program through internal associations... Sad...
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

Another issue - in FS/TP panel Lister can't switch between files in multiple selection using P/N keys. I think that's because TC needs to get every file but this is a bit sad.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Internal associations don't work at all inside temporary panel
Sorry, that's an oversight. I will add it.
Lister can't switch between files in multiple selection
That's because TC cannot "know" if all files can be retrieved via a local name or not - TC therefore switches to single file view mode.
Author of Total Commander
https://www.ghisler.com
User avatar
MVV
Power Member
Power Member
Posts: 8702
Joined: 2008-08-03, 12:51 UTC
Location: Russian Federation

Post by *MVV »

ghisler(Author) wrote:
Internal associations don't work at all inside temporary panel
Sorry, that's an oversight. I will add it.
Thanks!
Also please realize first issue (similar to this) - passing real filenames from VP to command line commands, internal commands and to button bar commands (item #0). :)

Also there are cosmetic issue that is not hard to realize - do not show "to: " label in delete dialog (item #9)
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48021
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

I have just tested it: To make internal associations work, just return FS_EXEC_YOURSELF. Currently TC will transfer the file to temp and execute it with internal association. In the next release, TC will try to get the local name. You can try to return it in RemoteName field, but I haven't tested that yet.
Author of Total Commander
https://www.ghisler.com
Post Reply