There are some standard procedures for incorporating text windows in a programmer's own View, which are probably best obtained by copying them from a program which already has them, and then making appropriate changes in file names, storage arrays, and options. Lacking examples or desiring better information, the book of Garfinkel and Mahoney [3] can be consulted. The tricky aspect of the process is that files have to be opened on at least two levels, first in the MACH or C level, and then again on the NeXTSTEP level; correspondingly they must be closed in stages, running along in reverse order just like balancing parentheses.
Any file manipulation should be connected to the item ``Document'' in the program's menu, which can be seen in Figure 5, so as to preserve the uniformity in appearance of NeXTSTEP programs.
All text fields are automatically connected to an editor. Besides performing the expected functions of inserting, deleting, and searching, they can share information with other programs through a buffer called the pasteboard. It communicates with editors running in other windows or even from different programs. Besides responding to the keyboard, editing can be accomplished by selecting options in the ``Edit'' item on the main menu, once having wiped the editing I-beam cursor over a portion of text.
If the ``Services'' item has been incorporated in a program menu (which has not been done in REC-R), it is possible to have still more elaborate communication between programs, passing selected text either as data or as program instructions.
Of course, there is no reason that a REC program cannot be placed in some file using the text editor the regular way, and subsequently executed. The advantage of editing from the REC program itself is that the code can be tested immediately, and saved only after it is performing satisfactorily.
Supposing that a program is to be loaded from the disk, the ``Document'' line in the SERO menu will process the file in the standard way, by opening a secondary browser window for disk files. Of course, it will only do that because the necessary programs had already been included in RECView.m and were linked when the interfaces were constructed.