LRasterPaint::SetClipRgn
#include "Ltwrappr.h"
L_INT LRasterPaint::SetClipRgn(hClipRgn)
HRGN hClipRgn; |
/* region handle */ |
Sets the current clipping region for the toolkit.
Parameter |
Description |
hClipRgn |
A handle to the region to be used to clip the painting output. If this parameter is NULL, there is no clipping region. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes |
Comments
This function creates a copy of the specified region and uses it to clip the painting output. The toolkit will use the region as it is, without doing any transformations.
If a bitmap has been set using the LRasterPaint::SetMetrics function, the toolkit will perform any necessary clipping, draw to the bitmap, and finally draw the resulting bitmap to the specified device context.
Required DLLs and Libraries
LTPNT For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application |
See Also
Functions: |
LRasterPaint::OffsetClipRgn, LRasterPaint::GetClipRgn, Class Members |
Topics: |
Example
L_INT LRasterPaint_SetClipRgnExample( CWnd* pWnd ) { L_INT nRet; LRasterPaint rstp; CDC* pDC = pWnd->GetDC() ; HRGN hClipRgn ; RECT rcShapeRect ; /* Initiate the Paint toolkit */ nRet = rstp.Initialize ( ); if(nRet != SUCCESS) return nRet; /* Set the rectangle coordinates with respect to the DC dimensions*/ SetRect ( &rcShapeRect, 10, 10, 110, 110 ) ; /* Use the current shape properties to draw an ellipse */ nRet = rstp.DrawShapeEllipse ( pDC->m_hDC, &rcShapeRect ) ; if(nRet != SUCCESS) return nRet; hClipRgn = CreateRectRgn ( 120, 20, 200, 100 ) ; /* Set painting clip region */ nRet = rstp.SetClipRgn ( hClipRgn ) ; if(nRet != SUCCESS) return nRet; /* Set the rectangle coordinates with respect to the DC dimensions*/ SetRect ( &rcShapeRect, 110, 10, 210, 110 ) ; /* Use the current shape properties to draw an ellipse*/ nRet = rstp.DrawShapeEllipse ( pDC->m_hDC, &rcShapeRect ) ; if(nRet != SUCCESS) return nRet; /* Delete the clip region */ DeleteObject ( ( HRGN ) hClipRgn ) ; /* Free the paint tools handle */ nRet = rstp.Free ( ) ; if(nRet != SUCCESS) return nRet; pWnd->ReleaseDC( pDC ) ; return SUCCESS ; }