Page 2 of 3

Posted: 2009-10-02, 13:12 UTC
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!

Posted: 2009-10-02, 13:59 UTC
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. :)

Posted: 2009-10-02, 15:03 UTC
by Postkutscher
2MVV
I`m also very interested for your work. I was simply too busy for the forum last time. :(

Posted: 2009-10-03, 11:01 UTC
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.

Posted: 2009-10-07, 06:08 UTC
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.

Posted: 2009-10-08, 06:10 UTC
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!

Posted: 2009-10-10, 06:39 UTC
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.

Posted: 2009-10-11, 10:59 UTC
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.

Posted: 2009-10-11, 12:36 UTC
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).

Posted: 2009-10-15, 10:38 UTC
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..

Posted: 2009-11-02, 09:25 UTC
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...

Posted: 2009-12-20, 18:38 UTC
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.

Posted: 2009-12-21, 17:24 UTC
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.

Posted: 2009-12-25, 04:51 UTC
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)

Posted: 2009-12-28, 16:59 UTC
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.