How to improve request-file ?
[1/6] from: jason::cunliffe::verizon::net at: 21-Jan-2002 21:05
Apologies if this is becoming a FAQ.. Q: How can I improve request-file? features drivin me nuts + wishlist: a. I can't resize it .. and it truncate filenames :-(( b. /file option is handy but I need it to default to open in specified directory, but where I do not know the names of any files there in advance. ie: I need /folder option c. Dir: window is *pathetically* small and cannot be resized. Unbelievable to me in 2002 that anyone creates an interface this primitive for something so basic. d: Does not respond to the mouse-wheel [I know that's an cross OS problem, but is there any way to make it work in some systems??] e. There is no doubleclicking on filenames. Users have to click first on filename to 'select it' then again on OPEN, SAVE or whatver one names the action button. f. I want to add a 'rotate' type button next to the top path field near wher it says "parent". This would allow one to cycle though the previous N path entries. /path option would be a block one could preload. This could make it very userfriendly epsecially if one coudl cotrnol the text label easily on teh rotate button. g. No history... I really want a popup selector with access to request-file history. This would extend the very useful /keep refinement, making it more like FileEx dialog tool for Win32 or others which offer rich history shortcuts: recent files, recent folders, favorite files, favorite folders etc. When doing intensive and repetitive multimedia transfer operations, these are incredible timesavers. h. Visited indication. Styled text: color text with highlight background tint as required. This is sort of a byproduct of history. Files which have been accessed before [since whenever history was defined to start] will be styled differently just like a:link, a:hover, a:visited, in CSS thanks ./Jason
[2/6] from: greggirwin:mindspring at: 22-Jan-2002 11:37
Hi Jason, << Q: How can I improve request-file? >> I started on one of my own, before I knew that request-file existed. I would like a better file requestor as well but it hasn't gotten back up to the top of my priority list yet. Some of the newer stuff RT is doing uses the OS file requestor (at least under Windows) which gives you good functionality, but doesn't match the look of the natvie REBOL UI components. I think lots of people would love to have a file requestor with all the features you mention, but request-file isn't so horrid that anyone has taken the time to write a robust, and greatly enhanced, replacement for it. It's on *my* list, though, along with about 1000 other ideas. :) --Gregg
[3/6] from: petr:krenzelok:trz:cz at: 22-Jan-2002 19:43
Hi, the situation is as follows - there used to be some project dedicated to creation of configurable fm. But it died imo. Let's answer one of your questions and then state one final note :-) Jason Cunliffe wrote:
>Apologies if this is becoming a FAQ.. > >d: Does not respond to the mouse-wheel [I know that's an cross OS problem, >but is there any way to make it work in some systems??] >
not directly related to file-requester, but you have to explicitly support mouse-wheel in your VID design, but it is already achievable. The problem is, RT has not set mouse-wheel events for certain styles as default ... As for file-requester in Rebol - I think it is doable. "Problem" of load function upon directory is, that it returns mixture of files and directories, and first thing you have to do in interpreter level is, you have to sort the block, and choose what is directory and what is ordinary file. Time consuming for dirs containing lots of stuff ... One refinement could solve the situation: load/dir %. - [[dir1/ dir/2 dir/3] [file1 file2 .... fileX]] ... it's unlikely thought that RT will add something like that, in regard to following good/bad news - judge for yourself: Rebol based file requester is gone with IOS. It was replaced by platform native one. I really don't like it, but it is imo thing most not die-hard rebol users will welcome. On the other hand it limits Rebol usage from the embedded area. The same goes for inability to hide mouse pointer. Having current file-requestor with limitations you described, then even I prefer native one ... -pekr-
[4/6] from: ryanc:iesco-dms at: 22-Jan-2002 12:32
> load/dir %. - [[dir1/ dir/2 dir/3] [file1 file2 .... fileX]]
Dont let that stop anybody. There is more than one way to skin a cat. dir-split: func [contents [block!] /local blk][ blk: copy/deep [ ] foreach name contents [append either #"/" = last name [blk/1] [blk/2] name] return blk ] How fast?
>> t: now/time loop 1000 [dir-split read %.] now/time - t
>> length? read %.
Thats was running on a 450 Mhz box, but still a blink of an eye even on a 100 Mhz box. --Ryan
[5/6] from: petr:krenzelok:trz:cz at: 23-Jan-2002 6:00
Ryan Cole wrote:
> > > > load/dir %. - [[dir1/ dir/2 dir/3] [file1 file2 .... fileX]]
<<quoted lines omitted: 12>>> Thats was running on a 450 Mhz box, but still a blink of an eye even on a 100 > Mhz box.
Hmm, then maybe I was confused because of load/read time itself. I tried some > 700 file directory on our network. Now it seems to me that 'foreach loop is only a fraction of total dir load time .... thanks a lot ... btw: I would welcome functions like split-dir (we have already split-path), clone (deep copied objects, non shared sub-objects) becoming mezzanine level functions default for everybody ... -pekr-
[6/6] from: ryanc:iesco-dms at: 23-Jan-2002 9:19
Petr Krenzelok wrote:
> Hmm, then maybe I was confused because of load/read time itself. I tried some > 700 > file directory on our network. Now it seems to me that 'foreach loop is only a > fraction of total dir load time .... thanks a lot ... >
Good point, I was really trying to test only the splitting portion. According to the following test, it is actually in the single millisecond range.
>> blk: read %.
== [%cgi-scan.r %REBOL.lnk %win.r %bin-clean.r %Factory Fire/ %xo/ %Internet Explorer.lnk %temp/ %Tune.sfa %tune.txt %user-list...
>> t: now/time loop 1000 [dir-split blk] now/time - t
> btw: I would welcome functions like split-dir (we have already split-path), clone > (deep copied objects, non shared sub-objects) becoming mezzanine level functions > default for everybody ... > > -pekr-
I would'nt mind seeing split-dir as part of file orientated module--whenever RT gets around to adding support for modules. I am also reluctant to add more functions to /Core. Take care, --Ryan
- Quoted lines have been omitted from some messages.
View the message alone to see the lines that have been omitted