|
|
1.1 ! root 1: Sample: PlgBlt Demonstration ! 2: ! 3: Summary: ! 4: ! 5: Win32 offers a new API function that will copy a bit image ! 6: onto an arbitrary parallelogram. Now, for the first time, ! 7: application programs can trivially rotate or shear bitmaps. ! 8: The PLGBLT SDK sample is an easy to use demonstration of how ! 9: this new API function may be used. ! 10: ! 11: More Information: ! 12: ! 13: The program presents a dialog box on top of the window that ! 14: displays the input parameters to the PlgBlt function. By ! 15: choosing the "New Src" or "New Mask" button, the user can ! 16: select a new bitmap for use as the source bitmap or as the ! 17: monochrome mask bitmap. The client area of the window is ! 18: divided into three regions. The region on the left contains ! 19: the result of the PlgBlt operation. The region in the middle ! 20: provides the source HDC, and the region on the right ! 21: provides the mask bitmap for the PlgBlt operation. ! 22: ! 23: In each of the three regions, there is a "direct ! 24: manipulation object." This object may be picked up and moved ! 25: by clicking the left mouse button in the top-left corner and ! 26: dragging. The three objects are restricted in their response ! 27: to user actions to correctly reflect the parameters to the ! 28: PlgBlt function. The object in the mask region may be moved ! 29: only. The object in the source region may be moved or sized. ! 30: The object in the destination region may be moved, sized, ! 31: sheared, or rotated. Please see the WXFORM sample for more ! 32: information on how this direct manipulation is accomplished. ! 33: Additional information on the WXFORM sample may be obtained ! 34: by querying on the word WXFORM in this knowledge base. ! 35: ! 36: The following is a list of the Win32 API functions used in ! 37: this sample: ! 38: ! 39: _lclose FillRect LocalFree SetCursorPos ! 40: _lopen GetClassLong LocalHandle SetDlgItemInt ! 41: _lread GetClientRect LPtoDP SetDlgItemText ! 42: AngleArc GetClipboardData MessageBox SetROP2 ! 43: BeginPaint GetClipBox ModifyWorldTransform SetViewportOrgEx ! 44: BitBlt GetDC MoveToEx SetWindowPos ! 45: ClientToScreen GetDlgItemInt OpenClipboard SetWorldTransform ! 46: CloseClipBoard GetFileSize OpenFile ShowWindow ! 47: CreateCompatibleBitmap GetMessage PlgBlt StretchBlt ! 48: CreateCompatibleDC GetObject PostMessage ! 49: CreateDialog GetStockObject PostQuitMessage ! 50: CreateDIBitmap GetViewportOrgEx PtInRect ! 51: CreatePen GetWorldTransform Rectangle ! 52: CreateRectRgnIndirect InvalidateRect ReleaseCapture ! 53: CreateWindow IsWindow ReleaseDC ! 54: DeleteDC LineTo SelectClipRgn ! 55: DeleteObject LoadAccelerators SelectObject ! 56: DispatchMessage LoadCursor SendMessage ! 57: DPtoLP LoadIcon SetCapture ! 58: EndPaint LocalAlloc SetClipboardData ! 59: ! 60: ! 61:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.