Files related to Workspace Objects
Introduction
This page lists the various files that may comprise a workspace object. Each workspace object must have a unique keyword (unique in the sense that in any given Rave installation, each keyword must be unique). For this reason it is suggested that if you code your own workspace object and intend to distribute it to others, you give it a keyword that is specific enough to almost guarantee uniqueness. Conversely, the workspace objects that are distributed with Rave have very generic keywords. You may find it useful to code your workspace objects as specialized versions of these generic objects, by making copies of their folder and all its files, renaming them to have a new keyword, and making whatever changes are necessary. (Keep in mind that any modifications you make to the existing Rave files can only be distributed under the GPLv2 license.)
The files described below are named for a workspace object whose keyword is KEYWORD. All files related to this object must be placed in a folder named KEYWORD that is placed in one of the six folders below the graphics directory (rave\graphics\). Any time KEYWORD appears in a file name you must replace it with the unique keyword for the object you are coding. Otherwise, the filenames must be exactly as they appear below or Rave will not recognize them. Note that some file names do not include the keyword---Rave recognizes these by their location within the KEYWORD directory.
General File Info
All files must be functions except as indicated. None of the functions should have outputs. Each function must take two inputs. The first (usually called "src") is a handle to a graphics object in the main Rave window. The sole purpose of this input is to retrieve the handles structure. The second input (usually called "ev") is empty and unused, but must appear in the function definition at the top of the file. If you need to make additional functions used by any of the files below, you could include them as subfunctions inside one of the files listed below, or in separate files. Note that the preferred practice is to reserve the main identifying words that appear in the file names below (e.g. create, initialize, tab, etc...) for the files described below. To avoid confusion, other files you create should not include these words in their names.