Functional Recycle Bin. (FilerAction proxy APIs)
Gareth Lock (2186) 51 posts |
v4.39 already had this in the form of !Recyclone. Contacted Alex Macfarlane Smith via e-mail about why I was having trouble trying to get this running on the Pi. He got back to me saying that the main sticking point regards to getting it up and running on ROOL v5.x was the lack of the implementation of the FilerAction proxy APIs added by ROL to their fork of the OS. |
Trevor Johnson (329) 1645 posts |
For info, that’s mentioned in Justin Fletcher’s RISC OS Rambles and ROL’s newsletter #27 too. |
Gareth Lock (2186) 51 posts |
I have an A7000+ running v4.39. The point of my original post was to ask when, and if, this feature was going to make it’s way over to the Castle (ROOL) fork… |
Steve Pampling (1551) 8170 posts |
Dunno, but I have the !Blackhole recycle/bin working on RPCEmu RO5. Note that unless someone offers the Select branch source to ROOL the only option is to implement the same sort of thing independently (possibly clean room implementation) which takes longer. Is the functionality of Recyclone documented anywhere? Looking at the moment |
Jeffrey Lee (213) 6048 posts |
The relevant documentation for the FilerAction proxying is here: http://riscos.com/support/developers/riscos6/desktop/fileraction.html So basically we need to update FilerAction to check for the appropriate alias variable and execute it in place of using its builtin functionality. Doesn’t sound too hard! |
Andrew Conroy (370) 740 posts |
Can I put in a request here for a recyle bin to (optionally) trap file overwrites too? I have !Recycler on my RiscPC which traps file overwrites as well as deletes, and has been very useful in the past where I’ve managed to overwrite something important by mistake (eg. saving out a new document that was based on an old document, but forgetting to change the name)! |
Steve Pampling (1551) 8170 posts |
That’s there in Blackhole – automatically copies the original to the bin, and thus available for retrieval, if you copy a file over the existing item. Not tested all circumstances it could have thrown at it. The base module does quite a bit, the Basic program (front end as far as I can see) is a bit, er, different. Certain elements lead me to believe the author(s) may have partaken of products available at certain specialist cafes in the Netherlands.
Recycler? Is that a reference to ReCyclone in Select/RO6 or a different bit of software? |
Andrew Conroy (370) 740 posts |
I was suggesting it should be a feature included if a recycle bin feature is added to RISC OS though, rather than being in third party apps, or appropriate hooks can be added to RISC OS to make it easy for third party apps to trap overwrites.
Recycler was a commercial recycle bin from Fabis. I have a feeling APDL took it over at one point, although I can’t see it on their site now. It’s not 32bit friendly though, or at least the version I have here (1.00g) isn’t. |
Sprow (202) 1158 posts |
Is this a rerun of the dicussion had previously? . Justin’s ramble seems to hint that the proxying was only ever used by 1 person – in implementing Recyclone – and this discussion has shown it doesn’t help with overwrites, and the earlier discussion concluded some other deletion cases aren’t covered. The effort of implementing the proxy might be small, but it sounds like it only covers 1 of the 3 desired use cases. Is there some other solution/scheme which gets all 3? |
Steve Fryatt (216) 2105 posts |
Ahem. It was at least two… http://www.stevefryatt.org.uk/software/locate/ |
Gareth Lock (2186) 51 posts |
Once we can implement what’s already there, whether it be by clean room implementation or whatever, how easy would it be to extend this to cover the other two points. Seems to me that getting the existing API implemented is the first step. |
Steve Pampling (1551) 8170 posts |
Pretty much so, probably because people want a recycle function :).
You get one recycler, why make five?
Which I suppose is where the Fabis version seems to cover things – Andrew might be able to comment but this bit suggests it catches other cases: A quick test of Blackhole on RPCEmu shows it responds to the GUI delete by moving the file to the singularity bin folder and that its response to a save from BASIC over an existing file will move the existing file to the bin folder and write the new version in place of the old. This is only good for the first over-write as the next does the same operation and ends up overwriting the first version in the bin with the second version. There’s probably a way of getting it to do a number of renames like Gigo (I think that was Harriets comment) |
Steve Pampling (1551) 8170 posts |
Ah, time to dig through sets of old discs and CD’s I think. I have stuff from Fabis in the non-indexed heap.
Odds on the core is a module. What does Armalyser make of it? |
Steve Pampling (1551) 8170 posts |
and then get Recyclone modified by its author to work on RO5? There might be some lock-in to use in Select (speculation, but worth considering before chasing a willo-the-wisp) |
Andrew Conroy (370) 740 posts |
Recycler keeps copies of a file however many times you overwrite it, so overwrite it three times and there’s three copies in the bin, and you can restore any of the three overwritten copies. It shows the original datestamp and the time of deletion for each copy. |
Gareth Lock (2186) 51 posts |
Have been in touch with Alex Macfarlane Smith. !Recyclone is NOT subject to a lock-in clause, indeed he posted a link to the source code somewhere in csap a while ago… “Probably best if someone ROOL-y gets in touch and they can look at integrating/tweaking it if necessary to get it running on RO5.” |
Steve Pampling (1551) 8170 posts |
March – responded to by news user id spam.pling with something about donating the source to ROOL. |
Steve Revill (20) 1361 posts |
Did anything ever come of this? It’s possible I just missed an email about it… |
Steve Pampling (1551) 8170 posts |
From earlier in this thread: “Probably best if someone ROOL-y gets in touch and they can look at integrating/tweaking it if necessary to get it running on RO5.” So I think you may have missed sending an email :) What would be really interesting is tweaking it even more to provide a restore from bin to original location feature. |
Steve Pampling (1551) 8170 posts |
If it helps the zip also contains the source: Which obviously also requires the correct API to be in RO5 |