Dragging folder to a field under linux adds "file://" before thefolder
Matthias Rebbe
matthias_livecode_150811 at m-r-d.de
Wed Sep 28 14:00:22 EDT 2011
Oliver,
I do not drag multiple folders simultaneously, but one folder which contains subfolders.
I use the following field scripts
ON dragEnter
IF there is a folder the dragdata["files"] THEN set the dragaction to copy
END dragEnter
## The DragEnter checks if a folder is dragged. No folder no dragaction.
##dragDrop then removes the file:// from the path
ON dragDrop
IF the platform="Linux" THEN replace "file://" WITH "" in fld 1 of me
END dragDrop
If you need a list of that subfolders or the files in the subfolder you can use the following script from David Vaughan. I found it in the ScripterScrapbook.
FUNCTION walkDir dirPath
put empty into tList
set defaultfolder to dirPath
put the files into fList
REPEAT FOR each line fLine in fList
IF char 1 of fLine <> "." THEN
put fLine into fData -- & comma & last item of fLine into fData
put dirPath & "/" & fData & return after tList
END IF
END REPEAT
get the folders
REPEAT FOR each line x in it
IF char 1 of x <> "." THEN
put walkDir(dirPath & "/" & x) after tList
END IF
END REPEAT
return tList
END walkDir
HTH,
Matthias
Am 28.09.2011 um 18:51 schrieb Olivier Dussutour:
> Hello,
> I am interested in your script, but how can you drag multiple folders simultaneously.
> If you could help me, thank you in advance
>
> Cordialement,
> Olivier Dussutour
> olivierdussutour at gmail.com
> ----- Original Message ----- From: "Matthias Rebbe" <matthias_livecode_150811 at m-r-d.de>
> To: "How to use LiveCode" <use-livecode at lists.runrev.com>
> Sent: Sunday, September 25, 2011 2:34 AM
> Subject: Dragging folder to a field under linux adds "file://" before thefolder
>
>
>> Hi,
>>
>> i want to drag a folder into a field to get the path displayed. I am using the following code in the field script:
>>
>> ON dragEnter
>> IF there is a folder the dragdata["files"]
>> THEN
>> set the dragaction to copy
>> END IF
>> END dragEnter
>>
>> ON dragDrop
>> set the text of me to the dragdata["files"]
>> END dragDrop
>>
>>
>> This works fine under Win and Mac OS x. The path is displayed correctly. Under Linux there is "file://" added before the path.
>>
>> For example the path /home/matthias/desktop becomes file:///home/matthias/desktop
>>
>> If i do not use any script in the field, the path is displayed correctly without the leading "file://".
>> But I need to use a field script, because my original script is doing some adjustments to the path (replace backslash with slash under windows). Is this Linux specific? Or am i doing something wrong? I know i can solve this with
>> "replace "file://" with "" in field ...." , but i would like to know and understand why "file://" is added to the path.
>>
>> Regards,
>>
>> Matthias
>>
>>
>>
>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list