home *** CD-ROM | disk | FTP | other *** search
- This file documents ClipTool.
-
- Copyright (C) 1994 Torsten Poulin
-
- Permission is granted to make and distribute verbatim copies of this
- manual provided the copyright notice and this permission notice are
- preserved on all copies.
-
- Permission is granted to copy and distribute modified versions of
- this manual under the conditions for verbatim copying, provided also
- that the sections entitled "Distribution" and "GNU General Public
- License" are included exactly as in the original, and provided that the
- entire resulting derived work is distributed under the terms of a
- permission notice identical to this one.
-
- Permission is granted to copy and distribute translations of this
- manual into another language, under the above conditions for modified
- versions, except that the sections entitled "Distribution" and "GNU
- General Public License" may be included in a translation approved by
- the author instead of in the original English.
-
-
- ClipTool V38.1
- **************
-
- ClipTool is a Commodities Exchange program that among other things is a
- graphic user interface to the Amiga system clipboard. It can function as
- a storehouse for multiple text clips and it can use all the clipboard
- units; thus you can move data from one unit to another. It is also
- possible to load and save data to and from the clipboard. Its convenient
- ARexx interface makes it easy to operate it by remote control. A simple
- example script that shows how clipboard support can be added to the Ed
- text editor is included.
-
- [This is an unfinished version of the documentation. ClipTool was
- intended as the prototype of a more ambitious clipboard tool, capable of
- handling graphics, having scrollbars so you could move around the
- clipped data, etc. Nothing has been done about the code and this
- document for almost a year and I haven't got time to work on them in the
- foreseeable future. For that reason, I have decided to release the
- "package" in its unfinished state, hoping that somebody will pick it up
- and improve it.
-
- Torsten (2-Jan-95)]
-
-
- Distribution
- *************
-
- ClipTool is "free"; this means that everyone is free to use it and free
- to redistribute it on a free basis. ClipTool is not in the public
- domain; it is copyrighted and there are restrictions on its
- distribution, but these restrictions are designed to permit everything
- that a good cooperating citizen would want to do. What is not allowed
- is to try to prevent others from further sharing any version of ClipTool
- that they might get from you. The precise conditions are found in the
- GNU General Public License that comes with ClipTool and also appears
- following this section.
-
- The easiest way to get a copy of ClipTool is from someone else who has
- it. You need not ask for permission to do so, or tell any one else;
- just copy it.
-
- If you have access to the Internet, you can get the latest distribution
- version of ClipTool from Aminet:
-
- Scandinavia
- `ftp.luth.se'
-
- Switzerland
- `litamiga.epfl.ch'
-
- Germany
- `ftp.uni-kl.de'
- `ftp.uni-erlangen.de'
- `ftp.cs.tu-berlin.de'
- `ftp.uni-paderborn.de'
-
- USA
- `ftp.etsu.edu'
- `wuarchive.wustl.edu'
-
- UK
- `src.doc.ic.ac.uk'
-
- Australia
- `splat.aarnet.edu.au'
-
- Most of these sites delete old files, however `wuarchive.wustl.edu'
- and `ftp.luth.se' keep all files.
-
-
- GNU General Public License
- ***************************
-
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 675 Mass Ave, Cambridge, MA 02139, USA
-
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
- ========
-
- The licenses for most software are designed to take away your freedom
- to share and change it. By contrast, the GNU General Public License is
- intended to guarantee your freedom to share and change free
- software--to make sure the software is free for all its users. This
- General Public License applies to most of the Free Software
- Foundation's software and to any other program whose authors commit to
- using it. (Some other Free Software Foundation software is covered by
- the GNU Library General Public License instead.) You can apply it to
- your programs, too.
-
- When we speak of free software, we are referring to freedom, not price.
- Our General Public Licenses are designed to make sure that you have the
- freedom to distribute copies of free software (and charge for this
- service if you wish), that you receive source code or can get it if you
- want it, that you can change the software or use pieces of it in new
- free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid anyone
- to deny you these rights or to ask you to surrender the rights. These
- restrictions translate to certain responsibilities for you if you
- distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether gratis
- or for a fee, you must give the recipients all the rights that you
- have. You must make sure that they, too, receive or can get the source
- code. And you must show them these terms so they know their rights.
-
- We protect your rights with two steps: (1) copyright the software, and
- (2) offer you this license which gives you legal permission to copy,
- distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
- that everyone understands that there is no warranty for this free
- software. If the software is modified by someone else and passed on, we
- want its recipients to know that what they have is not the original, so
- that any problems introduced by others will not reflect on the original
- authors' reputations.
-
- Finally, any free program is threatened constantly by software patents.
- We wish to avoid the danger that redistributors of a free program will
- individually obtain patent licenses, in effect making the program
- proprietary. To prevent this, we have made it clear that any patent
- must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
- modification follow.
-
- TERMS AND CONDITIONS
-
- 1. This License applies to any program or other work which contains a
- notice placed by the copyright holder saying it may be distributed
- under the terms of this General Public License. The "Program",
- below, refers to any such program or work, and a "work based on
- the Program" means either the Program or any derivative work under
- copyright law: that is to say, a work containing the Program or a
- portion of it, either verbatim or with modifications and/or
- translated into another language. (Hereinafter, translation is
- included without limitation in the term "modification".) Each
- licensee is addressed as "you".
-
- Activities other than copying, distribution and modification are
- not covered by this License; they are outside its scope. The act of
- running the Program is not restricted, and the output from the
- Program is covered only if its contents constitute a work based on
- the Program (independent of having been made by running the
- Program). Whether that is true depends on what the Program does.
-
- 2. You may copy and distribute verbatim copies of the Program's
- source code as you receive it, in any medium, provided that you
- conspicuously and appropriately publish on each copy an appropriate
- copyright notice and disclaimer of warranty; keep intact all the
- notices that refer to this License and to the absence of any
- warranty; and give any other recipients of the Program a copy of
- this License along with the Program.
-
- You may charge a fee for the physical act of transferring a copy,
- and you may at your option offer warranty protection in exchange
- for a fee.
-
- 3. You may modify your copy or copies of the Program or any portion
- of it, thus forming a work based on the Program, and copy and
- distribute such modifications or work under the terms of Section 2
- above, provided that you also meet all of these conditions:
-
- * You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- * You must cause any work that you distribute or publish, that
- in whole or in part contains or is derived from the Program
- or any part thereof, to be licensed as a whole at no charge
- to all third parties under the terms of this License.
-
- * If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display
- an announcement including an appropriate copyright notice and
- a notice that there is no warranty (or else, saying that you
- provide a warranty) and that users may redistribute the
- program under these conditions, and telling the user how to
- view a copy of this License. (Exception: if the Program
- itself is interactive but does not normally print such an
- announcement, your work based on the Program is not required
- to print an announcement.)
-
- These requirements apply to the modified work as a whole. If
- identifiable sections of that work are not derived from the
- Program, and can be reasonably considered independent and separate
- works in themselves, then this License, and its terms, do not
- apply to those sections when you distribute them as separate
- works. But when you distribute the same sections as part of a
- whole which is a work based on the Program, the distribution of
- the whole must be on the terms of this License, whose permissions
- for other licensees extend to the entire whole, and thus to each
- and every part regardless of who wrote it.
-
- Thus, it is not the intent of this section to claim rights or
- contest your rights to work written entirely by you; rather, the
- intent is to exercise the right to control the distribution of
- derivative or collective works based on the Program.
-
- In addition, mere aggregation of another work not based on the
- Program with the Program (or with a work based on the Program) on
- a volume of a storage or distribution medium does not bring the
- other work under the scope of this License.
-
- 4. You may copy and distribute the Program (or a work based on it,
- under Section 3) in object code or executable form under the terms
- of Sections 2 and 3 above provided that you also do one of the
- following:
-
- * Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of
- Sections 2 and 3 above on a medium customarily used for
- software interchange; or,
-
- * Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 2 and 3 above on a
- medium customarily used for software interchange; or,
-
- * Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with
- such an offer, in accord with the previous Subsection.)
-
- The source code for a work means the preferred form of the work for
- making modifications to it. For an executable work, complete source
- code means all the source code for all modules it contains, plus
- any associated interface definition files, plus the scripts used to
- control compilation and installation of the executable. However,
- as a special exception, the source code distributed need not
- include anything that is normally distributed (in either source or
- binary form) with the major components (compiler, kernel, and so
- on) of the operating system on which the executable runs, unless
- that component itself accompanies the executable.
-
- If distribution of executable or object code is made by offering
- access to copy from a designated place, then offering equivalent
- access to copy the source code from the same place counts as
- distribution of the source code, even though third parties are not
- compelled to copy the source along with the object code.
-
- 5. You may not copy, modify, sublicense, or distribute the Program
- except as expressly provided under this License. Any attempt
- otherwise to copy, modify, sublicense or distribute the Program is
- void, and will automatically terminate your rights under this
- License. However, parties who have received copies, or rights,
- from you under this License will not have their licenses
- terminated so long as such parties remain in full compliance.
-
- 6. You are not required to accept this License, since you have not
- signed it. However, nothing else grants you permission to modify or
- distribute the Program or its derivative works. These actions are
- prohibited by law if you do not accept this License. Therefore, by
- modifying or distributing the Program (or any work based on the
- Program), you indicate your acceptance of this License to do so,
- and all its terms and conditions for copying, distributing or
- modifying the Program or works based on it.
-
- 7. Each time you redistribute the Program (or any work based on the
- Program), the recipient automatically receives a license from the
- original licensor to copy, distribute or modify the Program
- subject to these terms and conditions. You may not impose any
- further restrictions on the recipients' exercise of the rights
- granted herein. You are not responsible for enforcing compliance
- by third parties to this License.
-
- 8. If, as a consequence of a court judgment or allegation of patent
- infringement or for any other reason (not limited to patent
- issues), conditions are imposed on you (whether by court order,
- agreement or otherwise) that contradict the conditions of this
- License, they do not excuse you from the conditions of this
- License. If you cannot distribute so as to satisfy simultaneously
- your obligations under this License and any other pertinent
- obligations, then as a consequence you may not distribute the
- Program at all. For example, if a patent license would not permit
- royalty-free redistribution of the Program by all those who
- receive copies directly or indirectly through you, then the only
- way you could satisfy both it and this License would be to refrain
- entirely from distribution of the Program.
-
- If any portion of this section is held invalid or unenforceable
- under any particular circumstance, the balance of the section is
- intended to apply and the section as a whole is intended to apply
- in other circumstances.
-
- It is not the purpose of this section to induce you to infringe any
- patents or other property right claims or to contest validity of
- any such claims; this section has the sole purpose of protecting
- the integrity of the free software distribution system, which is
- implemented by public license practices. Many people have made
- generous contributions to the wide range of software distributed
- through that system in reliance on consistent application of that
- system; it is up to the author/donor to decide if he or she is
- willing to distribute software through any other system and a
- licensee cannot impose that choice.
-
- This section is intended to make thoroughly clear what is believed
- to be a consequence of the rest of this License.
-
- 9. If the distribution and/or use of the Program is restricted in
- certain countries either by patents or by copyrighted interfaces,
- the original copyright holder who places the Program under this
- License may add an explicit geographical distribution limitation
- excluding those countries, so that distribution is permitted only
- in or among countries not thus excluded. In such case, this
- License incorporates the limitation as if written in the body of
- this License.
-
- 10. The Free Software Foundation may publish revised and/or new
- versions of the General Public License from time to time. Such new
- versions will be similar in spirit to the present version, but may
- differ in detail to address new problems or concerns.
-
- 11. Each version is given a distinguishing version number. If the
- Program specifies a version number of this License which applies
- to it and "any later version", you have the option of following
- the terms and conditions either of that version or of any later
- version published by the Free Software Foundation. If the Program
- does not specify a version number of this License, you may choose
- any version ever published by the Free Software Foundation.
-
- 12. If you wish to incorporate parts of the Program into other free
- programs whose distribution conditions are different, write to the
- author to ask for permission. For software which is copyrighted by
- the Free Software Foundation, write to the Free Software
- Foundation; we sometimes make exceptions for this. Our decision
- will be guided by the two goals of preserving the free status of
- all derivatives of our free software and of promoting the sharing
- and reuse of software generally.
-
- NO WARRANTY
-
- 13. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
- WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE
- LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS
- AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
- OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
- FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND
- PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
- DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR
- OR CORRECTION.
-
- 14. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
- WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY
- MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE
- LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
- INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
- INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
- DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU
- OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY
- OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN
- ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-
- Appendix: How to Apply These Terms to Your New Programs
- =======================================================
-
- If you develop a new program, and you want it to be of the greatest
- possible use to the public, the best way to achieve this is to make it
- free software which everyone can redistribute and change under these
- terms.
-
- To do so, attach the following notices to the program. It is safest to
- attach them to the start of each source file to most effectively convey
- the exclusion of warranty; and each file should have at least the
- "copyright" line and a pointer to where the full notice is found.
-
- ONE LINE TO GIVE THE PROGRAM'S NAME AND A BRIEF IDEA OF WHAT IT DOES.
- Copyright (C) 19YY NAME OF AUTHOR
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
- Also add information on how to contact you by electronic and paper mail.
-
- If the program is interactive, make it output a short notice like this
- when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) 19YY NAME OF AUTHOR
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
- The hypothetical commands `show w' and `show c' should show the
- appropriate parts of the General Public License. Of course, the
- commands you use may be called something other than `show w' and `show
- c'; they could even be mouse-clicks or menu items--whatever suits your
- program.
-
- You should also get your employer (if you work as a programmer) or your
- school, if any, to sign a "copyright disclaimer" for the program, if
- necessary. Here a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- SIGNATURE OF TY COON, 1 April 1989
- Ty Coon, President of Vice
-
- This General Public License does not permit incorporating your program
- into proprietary programs. If your program is a subroutine library, you
- may consider it more useful to permit linking proprietary applications
- with the library. If this is what you want to do, use the GNU Library
- General Public License instead of this License.
-
-
- Introduction
- *************
-
- ClipTool is basically a storehouse for text you may want to paste into
- other programs, perhaps multiple times.
-
-
- Options
- ********
-
- ClipTool understands the following icon tooltypes:
-
- `CX_PRIORITY=PRIORITY'
- lets you change the priority of ClipTool relative to other
- Commodities Exchange programs. The default priority is 0. The
- valid range is -128 to 127; the higher the number, the higher the
- priority. This only changes the order in which the Commodities
- gets to look at input events.
-
- `CX_POPKEY=HOTKEY STRING'
- specifies the key or keys that must be pressed to pop up ClipTool's
- window. The default is `control lalt c'. Please refer to your
- Workbench manual for a list of valid key combinations.
-
- `CX_POPUP=yes|no'
- determines whether the GUI window is opened when ClipTool is
- launched. The default is `yes'. You will probably want to change
- this if you put the program in the `WBStartup' drawer.
-
- `EMBOSSED=yes|no'
- Normally ClipTool will use embossed imagery to give its buttonbar
- a 3-D look, unless it is run on a two colour screen. Setting
- EMBOSSED=no forces ClipTool to always use its simpler 2-D imagery.
- This may be useful if your colour preferences make the 3-D buttons
- look strange.
-
- `CREATEICONS=yes|no'
- can be used to enable or suppress the creation of icons when data
- is saved to a file. The default is to create icons. This can be
- turned on and off at will.
-
- `UNIT=0-255'
- is the clipboard unit to use when ClipTool is launched. It can be
- changed while the program is running. The default is 0.
-
- `APPICON=yes|no'
- determines whether ClipTool shall put an AppIcon, a dropbox, on the
- Workbench. The default is `yes'.
-
- `PORTNAME=AREXX PORT NAME'
- is used to override the default port name, which is `CLIPTOOL'.
-
- When started from the shell, ClipTool accepts arguments corresponding to
- the icon tooltypes according to this AmigaDOS template:
-
-
- CX_PRIORITY/K/N,CX_POPKEY/K,CX_POPUP/K,EMBOSSED/K,CREATEICONS/K,UNIT/K/N,APPICON/K,PORTNAME/K
-
- The case and order of the keywords doesn't matter. The defaults are the
- same as when used as tooltypes.
-
-
- ARexx Interface
- ****************
-
-
- ARexx Commands
- ===============
-
- In this section, each ARexx command is explained following a standard
- outline:
-
- The format listing shows all the arguments and keywords accepted by the
- command. Square brackets enclose arguments and keywords that are
- optional. They are accepted by the command but are not required. A
- vertical bar is used to separate options of which you may only choose
- one.
-
- In the command template, each argument is specified by a keyword (a
- preset argument that the command understands) followed by a modifier
- `/X' where `X' is one of the characters `A', `K', `N', or `S'. Each
- keyword can have several of the modifiers. Neither the keywords nor the
- modifiers are case-dependent.
-
- This is followed by a description of the command.
-
-
- OPEN
- -----
-
- Format: OPEN FILENAME FILE [DIR DIRECTORY]
- Template: NAME=FILENAME/K/A,DIR/K
-
- This command tries to open the file specified by the FILE argument,
- load it, and make it the current buffer. It recognizes IFF FTXT files
- automatically.
-
- If you specify a relative pathname, ClipTool may not be able to locate
- the file, because its current directory may differ from the current
- directory of the process that sent the OPEN command. To overcome this
- problem, you can use the DIR keyword to tell ClipTool to *temporarily*
- change its current directory to DIRECTORY:
-
- 'open filename' foo 'dir' pragma('D')
-
- The built-in ARexx function `pragma()', with the option `D', returns
- the *full* path of the current directory.
-
- The keyword NAME is provided as an alternative to the AUISG compliant
- FILENAME.
-
-
- SAVEAS
- -------
-
- Format: SAVEAS NAME FILE [FTXT] [DIR DIRECTORY]
- Template: NAME/K/A,FTXT/S,DIR/K
-
- This command saves the contents of the current buffer to the file
- specified by the FILE argument. If the FTXT switch is used, it will be
- saved as an IFF FTXT file.
-
- If you specify a relative pathname, the result may not be what you
- expect, because ClipTool's current directory may differ from the current
- directory of the process that sent the SAVEAS command. To overcome this
- problem, you can use the DIR keyword to tell ClipTool to *temporarily*
- change its current directory to DIRECTORY (for a full example, *note
- SaveClip.rexx::.):
-
- 'saveas name' foo 'dir' pragma('D')
-
- The built-in ARexx function `pragma()', with the option `D', returns
- the *full* path of the current directory.
-
-
- SHOW
- -----
-
- Format: SHOW
- Template: (none)
-
- This command opens ClipTool's main window on the default public screen.
- If it is already open, it is moved in front of the other windows on the
- screen and made active.
-
- SHOW is a synonym for the AUISG compliant command ACTIVATE.
-
-
- HIDE
- -----
-
- Format: HIDE
- Template: (none)
-
- This command closes ClipTool's main window. It is not an error, if the
- window is already closed.
-
- HIDE is a synonym for the AUISG compliant command DEACTIVATE.
-
-
- ACTIVATE
- ---------
-
- Format: ACTIVATE
- Template: (none)
-
- This command opens ClipTool's main window on the default public screen.
- If it is already open, it is moved in front of the other windows on the
- screen and made active.
-
- ACTIVATE is an AUISG compliant synonym for the SHOW command.
-
-
- DEACTIVATE
- -----------
-
- Format: DEACTIVATE
- Template: (none)
-
- This command closes ClipTool's main window. It is not an error, if the
- window is already closed.
-
- DEACTIVATE is an AUISG compliant synonym for the HIDE command.
-
-
- QUIT
- -----
-
- Format: QUIT
- Template: (none)
-
- This command stops ClipTool.
-
-
- CUT
- ----
-
- Format: CUT
- Template: (none)
-
- This command removes the current buffer and places it in the current
- clipboard unit.
-
-
- COPY
- -----
-
- Format: COPY
- Template: (none)
-
- This command places a duplicate of the current buffer into the current
- clipboard unit.
-
-
- PASTE
- ------
-
- Format: PASTE
- Template: (none)
-
- This command puts the contents of the current clipboard unit into a new
- buffer. This buffer is made the current buffer.
-
-
- ERASE
- ------
-
- Format: ERASE
- Template: (none)
-
- This command removes the current buffer.
-
-
- PREVIOUS
- ---------
-
- Format: PREVIOUS
- Template: (none)
-
- This command makes the previous buffer the current buffer.
-
-
- NEXT
- -----
-
- Format: NEXT
- Template: (none)
-
- This command makes the next buffer the current buffer.
-
-
- GETNUMBER
- ----------
-
- Format: GETNUMBER VAR NAME
- Template: VAR/K/A
-
- Returns the number of clip buffers in the ARexx variable NAME.
-
-
- GETCURRENT
- -----------
-
- Format: GETCURRENT VAR NAME
- Template: VAR/K/A
-
- Returns the number of the current buffer in the ARexx variable NAME.
-
-
- CREATEICONS
- ------------
-
- Format: CREATEICONS ON|OFF
- Template: ON/S,OFF/S
-
- This command controls the creation of icons when saving files. One of
- the switches must be given.
-
-
- GETCREATEICONS
- ---------------
-
- Format: GETCREATEICONS VAR NAME
- Template: VAR/K/A
-
- Returns the current state of the `Create icons?' menu item in the ARexx
- variable NAME. The state is one of two possible strings: `ON' or `OFF'.
- Thus, the contents of NAME can be used as an argument to CREATEICONS
- (*note CREATEICONS::.).
-
-
- APPICON
- --------
-
- Format: APPICON ON|OFF
- Template: ON/S,OFF/S
-
- This command turns the AppIcon on and off.
-
-
- GETUNIT
- --------
-
- Format: GETUNIT VAR NAME
- Template: VAR/K/A
-
- Returns the clipboard unit number in the ARexx variable NAME.
-
-
- SETUNIT
- --------
-
- Format: SETUNIT NUMBER
- Template: /N/A
-
- This command sets the clipboard unit to NUMBER.
-
-
- Examples
- =========
-
- This section contains a few example scripts, showing how you may control
- ClipTool from ARexx.
-
-
- LoadClip.rexx
- --------------
-
- /*
- * loadclip - Load a file into the clipboard.
- */
-
- parse arg fname
- address cliptool
- 'open filename' fname 'dir' pragma(d)
- 'cut'
-
-
- SaveClip.rexx
- --------------
-
- /*
- * saveclip - Save the contents of the clipboard to a file.
- */
-
- parse arg fname
- address cliptool
- 'getnumber var before'
- 'paste'
- 'getnumber var after'
- if before < after then do
- 'getcreateicons var state'
- 'createicons off' /* we don't want an icon */
- 'saveas name' fname 'dir' pragma('Directory')
- 'erase'
- 'createicons' state /* restore the previous state */
- end
- else say 'Clipboard is empty'
-
-
- EDCopy.ed
- ----------
-
- /*
- * EDCopy - Copy the marked block to the current clipboard unit.
- * Assumes ClipTool is running.
- * You can add it to Ed's EDIT menu if you put
- * the following command in S:Ed-startup:
- *
- * SI n 2 "Copy to Clipboard" "rx!EDCopy.ed!"
- *
- * where n is the menu item number.
- *
- * You can also add it to a key with something like
- *
- * SF n "rx!EDCopy.ed!"
- *
- * where n range from 1 to 57. Please refer to the Ed docs for details.
- */
-
- tempfile = 'T:EDCLIP-'pragma('ID')
- options failat 21
- 'WB!'tempfile'!' /* Tell Ed to write the block */
- if rc = 0 then do
- address cliptool 'open filename' tempfile
- address cliptool 'cut'
- address command 'delete quiet force' tempfile
- 'SM!Copied!'
- end
- else 'SM!No block selected!'
- exit
-
-