|
|
1.1 ! root 1: Sample: MaskBlt Function Demonstration ! 2: ! 3: Summary: ! 4: ! 5: The MASKBLT sample is an easy-to-use demonstration of the ! 6: MaskBlt Win32 API function. The program presents a dialog ! 7: box on the top of the window; through this dialog box the ! 8: user can manipulate the parameters to MaskBlt. In the main ! 9: window, the source bitmap is displayed in the center third ! 10: of the window, the monochrome bitmap mask is displayed in ! 11: the right third of the window, and the destination bitmap is ! 12: displayed on the left. ! 13: ! 14: More Information: ! 15: ! 16: The destination rectangle may be changed directly in the ! 17: dialog box, or it may be changed by using the direct ! 18: manipulation object in the left third of the window. ! 19: Clicking and dragging the mouse in the upper-left corner ! 20: moves the rectangle; clicking and dragging the mouse in the ! 21: lower-right corner sizes the rectangle. The function ! 22: requires only a starting point (not a rectangle) for the ! 23: source and mask bitmaps. There is one additional direct ! 24: manipulation object for the source and one for the mask. ! 25: These objects may be moved by clicking and dragging with the ! 26: mouse. ! 27: ! 28: The raster operation for the MaskBlt call may be changed by ! 29: altering the values in the right most entry fields. The ! 30: contents are interpreted to be in hexadecimal. There is a ! 31: combo box directly beneath these entry fields that lists all ! 32: of the standard raster operations. If the user selects a ! 33: standard ROP from this combo box, its contents are copied ! 34: into the ROP entry fields and are then used in the MaskBlt ! 35: call. ! 36: ! 37: This sample provides clipboard support in the following manner. ! 38: Hitting <ctrl>+<insert> will copy the destination image into the ! 39: clipboard. Hitting <shift>+<insert> will copy a bitmap from the ! 40: clipboard into the source region. Hitting <alt>+<insert> will ! 41: do both; the destination image will be copied into the clipboard ! 42: and then down to the source region. ! 43: ! 44: The following is a list of the Win32 API functions used in ! 45: this sample: ! 46: ! 47: _lclose DPtoLP LineTo ReleaseCapture ! 48: _lopen EndPaint LoadAccelerators ReleaseDC ! 49: _lread FillRect LoadIcon SelectClipRgn ! 50: AngleArc GetClassLong LoadCursor SelectObject ! 51: BeginPaint GetClientRect LocalAlloc SendDlgItemMessage ! 52: BitBlt GetClipboardData LocalFree SendMessage ! 53: ClientToScreen GetClipBox LocalHandle SetCapture ! 54: CloseClipBoard GetDC LPtoDP SetClipboardData ! 55: CreateCompatibleBitmap GetDlgItemInt MaskBlt SetCursorPos ! 56: CreateCompatibleDC GetDlgItemtext MessageBox SetDlgItemInt ! 57: CreateDialog GetFileSize ModifyWorldTransform SetDlgItemText ! 58: CreateDIBitmap GetMessage MoveToEx SetROP2 ! 59: CreatePen GetObject OpenClipboard SetViewportOrgEx ! 60: CreateRectRgnIndirect GetStockObject OpenFile SetWindowPos ! 61: CreateWindow GetViewportOrgEx PostMessage SetWorldTransform ! 62: DeleteDC GetWorldTransform PostQuitMessage ShowWindow ! 63: DeleteObject InvalidateRect PtInRect StretchBlt ! 64: DispatchMessage IsWindow Rectangle ! 65: ! 66:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.