home *** CD-ROM | disk | FTP | other *** search
- /* WinCopy for Directory Opus 5.
- by Leo 'Nudel' Davidson for Gods'Gift Utilities
- email: leo.davidson@keble.oxford.ac.uk www: http://users.ox.ac.uk/~kebl0364
-
- $VER: WinCopy.dopus5 1.4 (26.12.95)
-
- NOTE: This script _requires_ DOpus v5.11 or above.
- NOTE: DOpusFuncs is an assembler version of this (and other) scripts.
- NOTE: This script does *NOT* do the same thing as Gary Gagnon's
- "CloneSRCE.dopus5" or "same.dopus5", read on...
-
- This script will copy the source lister to the destination lister,
- like the old copywin command in DOpus4.
-
- If you wish to open a _new_ lister which is a copy of the source
- one (as apposed to turning an existing lister into a copy of the
- source), you should use Gary Gagnon's "CloneSRCR.dopus5" script,
- which was included in the official DOpus v5.11 update as
- "DOpus5:ARexx/same.dopus5". Gary's script is also able to clone
- multiple source listers at once.
-
- Call as:
- ------------------------------------------------------------------------------
- ARexx DOpus5:ARexx/WinCopy.dopus5 {Qp}
- ------------------------------------------------------------------------------
- Turn off all switches.
-
- v1.01 -> v1.02 - Made "PathOnly" the default behaviour and removed the
- option to copy the window dimensions (Did anyone want it?).
- Some minor tidying up.
- Now checks to make sure the DOPUS.x port exists.
- v1.02 -> v1.3 - Now uses Show() instead of ShowList(). (Thanks Stoebi)
- Style Guide compliant version numbering and $VER string.
- v1.3 -> v1.4 - Works properly with paths containing spaces, finally.
- */
-
- options results
- options failat 99
- signal on syntax;signal on ioerr /* Error trapping */
- parse arg DOpusPort
- DOpusPort = Strip(DOpusPort,"B",'" ')
-
- If DOpusPort="" THEN Do
- Say "Not correctly called from Directory Opus 5!"
- Say "Load this ARexx script into an editor for more info."
- EXIT
- END
- If ~Show("P",DOpusPort) Then Do
- Say DOpusPort "is not a valid port."
- EXIT
- End
- Address value DOpusPort
-
- lister query source stem source_handle.
-
- IF source_handle.count = 0 | source_handle.count = "SOURCE_HANDLE.COUNT" Then Do
- dopus request '"You must have a SOURCE lister!" OK'
- EXIT
- End
-
-
- lister query dest stem dest_handle.
-
- IF dest_handle.count = 0 | dest_handle.count = "DEST_HANDLE.COUNT" Then Do
- dopus request '"You must have a DESTINATION lister!" OK'
- EXIT
- End
-
-
- lister query source_handle.0 path
- source_path = RESULT
- lister read dest_handle.0 '"'||source_path||'"'
-
- syntax:;ioerr: /* In case of error, jump here */
- EXIT
-