The Mouse has a Home in MTM and Reliance
by Stuart Baker
Mouse support may not bring OS/32 up to GUI standards, but it is sure a giant step forward. It has been an interesting challenge, conceiving ways to add mouse support to a terminal emulator so that it works transparently with OS/32 software that was never designed to use the little rodent. Now that mouse support has become an integral part of a PC-based 6312 terminal emulator, who knows what the future holds?
For those of you who are not familiar with using a mouse, let me start by explaining a few terms. Most PCs have a two or three button mouse, a trackball, or some other device that performs the same functions as a mouse. The term click means to depress and release a mouse button within a short period of time without moving the mouse. Documentation for software that uses a mouse refers to this action as click left, click right or click center. If you do not have a three button mouse, the center click is simulated by performing a chorded click (i.e., depressing and releasing both the left and right buttons together). This may sound complicated, but is easily accomplished by pressing the ridge between the two buttons with one finger. The last term we will use is dragging. To perform a drag, depress and hold the left button while moving the mouse. This action is typically used to highlight data for copy and paste or to make menu selections.
Now that we have defined the basic terms, let's look at Reliance. Reliance runs in block mode, meaning that most user input is handled by the terminal emulator and not the host computer. Handling mouse input locally is much more predictable than sending escape sequences to an application program and hoping they are handled in an expected fashion. Since the mouse cursor can be moved anywhere on the screen with ease, it is a natural for cursor positioning. Reliance screens have fields for data entry, so the terminal emulator knows where the user may enter data. With the mouse, you no longer have to use the Tab and arrow keys to tediously move to the field you want to enter data in. Simple move the mouse cursor near the start of the desired field and click left. The real cursor immediately jumps to the start of that field. If the mouse cursor was in the middle of an unprotected field, the real cursor will exactly overlay the mouse cursor. Cursor positioning alone is a giant improvement, but this is just the start.
You can highlight up to one full screen of data for copy and paste by dragging with the left button down. Highlighting can be done on the main screen or any of the review screens. Once you have marked the desired area, click right to copy the data to the edit buffer. At the time you save data into the edit buffer, you can define the character that is used at the end of each line (EOL) during paste. You select the EOL menu by depressing the Ctrl key when you click right. By default this character is an Enter, used by most MTM applications. You can set it to a Tab, a space, or nothing, or append to existing edit buffer data. Your choice depends upon your intended target for the paste. For example, you would choose Tab if you are pasting into a NEM screen in Reliance or you would choose space if you are pasting into an editor that performs automatic word wrap. You probably noticed that I called it an edit buffer and not a copy buffer. Yes, you can edit the data before pasting; I will cover that aspect later. You can paste the data from the edit buffer by clicking right when no highlight is present.
As you go from screen to screen in Reliance, you are frequently required to enter key words from a list that appears next to the field. It would sure save a lot of time if there was an easy way to pick up a word and move it to the data entry field. Rodent to the rescue again! Simply position the mouse cursor over the word you want to use and click center, the word immediately appears in the data entry field. A second center click, while positioned over the same word or a space, sends the screen to Reliance. If you inadvertently selected the wrong word, simply move the mouse cursor over the correct word and click center again; the field is cleared and your new choice appears. If you need to fill in several fields before sending, use a left click to position the cursor to the next field and center click over the desired word. This allows you to move from one screen to the next without ever touching the keyboard. If you need to move more than one word, highlight the data by dragging and center click to move. If you center click with a highlight present, it must be limited to one line.
Many functions in Reliance are accessed by using function keys. Never fear, all 32 function keys are available to you without touching the keyboard. Simply move the mouse cursor to the lower right corner and click center. The mouse cursor will be confined to the status line, which now contains a list of mnemonics representing 16 function keys. A click of the right mouse button will alternately display mnemonics for function keys F01 through F16 or F17 through F32. You select a function key by clicking left over a function key mnemonic. The next time you need to access a function key, the mouse cursor is placed over the last selected function key mnemonic for instant selection.
The configuration screen is essentially a complex block mode screen. It contains a total of 59 fields; 46 of these fields have specific values to choose from. Just as in a Reliance screen, a left click positions you to any field with ease. When the mouse cursor and real cursor overlay each other in one of the 46 fields that contain choices, a left click selects the next choice. The copy and paste functions allow you to easily move complex function key definitions from one configuration screen to another. Since function keys are not active in the configuration mode, a center click in the lower right corner displays a list of configuration commands. You select a command by left clicking over its mnemonic. Making changes to the configuration has never been easier.
Adding mouse support to well organized block mode screens was a natural. MTM programs on the other hand are not as well defined and are therefore harder to deal with. Since MTM programs generally work in conversational mode, all mouse functions transmit data directly to the application program instead of being acted upon locally. To maintain consistency between block and conversational mode, all functions have been duplicated as closely as possible.
If you have an application (like a full screen editor) that responds to the escape sequences generated by the 6312 arrow keys, you can click left to quickly position to any location on the screen. The terminal emulator calculates the number of arrow keys needed to move the real cursor to overlay the mouse cursor and transmits them to the host. Since the number of characters transmitted to the host can easily exceed the typeahead buffer size, the transmission speed can be slowed by using a character pacing delay to prevent data loss.
You can also highlight data for copy and paste exactly as you do in block mode. The paste function sends the characters directly to the host and can be slowed to prevent data loss. You can also center click while positioned over a word or with a highlight present to transmit the data to the host immediately. Center clicking over the same word or a space, sends an Enter to the host computer. Since MTM does not offer the convenience of command lists, you will need to take some additional steps to make things easier. Simply make a menu CSS that lists frequently used commands and assign the name of the CSS to a function key. As in block mode, all 32 function keys and 13 Alt keys are available via the mouse, so you can display the menu without touching the keyboard and then select commands by center clicking.
Earlier I mentioned placing data into the edit buffer. The edit buffer can contain up to 96 lines of data (remember the append mode of the copy function). Once you have placed data into the edit buffer, you can make changes before pasting it. You enter the edit mode by holding down the Ctrl key and clicking right. The edit mode is actually a built in full screen editor. It is even capable of editing data that contains control characters, e.g., function key definitions. You can add and delete lines with ease and toggle between insert and overtype mode. You can even perform cut, copy and paste using the mouse or keyboard. In addition to the basic edit functions, you can write to or read from a DOS file, allowing you to easily save and reload the edit buffer with data from another session. When you save your changes, you can once again select the paste EOL character by depressing the Ctrl key.
The terminal emulator has many popup menus that require user input. The mouse may be used to select the desired response. You can highlight a response by dragging across the menu or clicking left while positioned over the choice. Once your choice is highlighted, click left while positioned over the highlight to respond to the question.
Well that about does it for this issue. If you have any questions about how the mouse can make your life easier, don't hesitate to call.
This SBSW.COM page has been optimized for printing.