3.2.4 On-Screen Selection

When a non-Windows application runs in a window, the user can select all or
a portion of the application's output for copying to the clipboard. Carry out the
following procedure to create a selection:

1.Choose the MS-DOS icon.

2.From the System menu, choose the Edit command.

3.From the Edit cascading menu, choose the Mark command.

4.Move the cursor to the start point of the selection.

5.Sweep through a selection using the SHIFT+arrow key combination.

WINOLDAP calls the BeginSelection function, with starting point (0,0), when the user chooses the Mark command. Each time the user subsequently presses an arrow key or SHIFT+arrow key combination, WINOLDAP calls the KeySelection function. KeySelection returns a new starting point for arrow keys and a new end point for SHIFT+arrow key combinations.

For each new start point, WINOLDAP calls EndSelection to cancel the previous selection, and calls the BeginSelection function to start the new selection. For each new end point, WINOLDAP calls the MakeSelctRect function to record the current selection rectangle.

In text mode, the start and end points must be aligned on character boundaries. In graphics mode, the points should be aligned on byte or multiple-byte boundaries.

The coordinates of the start and end points are given in screen coordinates, and represent a window client area position corrected by the scroll bar position. The client area coordinate (0,0) corresponds to the screen coordinate (ColOrg, RowOrg). The EXTPAINTSTRUC structure contains the ColOrg and RowOrg members.