Exemple #1
0
VOID DrawOutline(PT *ppt, INT ccrd, DX dx, DY dy)
{
    Y y;
    PT pt;
    INT rop2;
    if(!FGetHdc())
        return;

    pt = *ppt;

    rop2 = SetROP2(hdcCur, R2_NOT);
    MMoveTo(hdcCur, pt.x, pt.y);
    LineTo(hdcCur, pt.x+dxCrd, pt.y);
    LineTo(hdcCur, pt.x+dxCrd, y = pt.y+dyCrd+(ccrd-1) * dy);
    LineTo(hdcCur, pt.x, y);
    LineTo(hdcCur, pt.x, pt.y);
    y = pt.y;
    while(--ccrd)
    {
        y += dy;
        MMoveTo(hdcCur, pt.x, y);
        LineTo(hdcCur, pt.x+dxCrd, y);
    }
    SetROP2(hdcCur, rop2);
    ReleaseHdc();
}
Exemple #2
0
VOID DrawSunkenRect(
    PRECT prc,
    HDC hdc)
{
    HPEN hpenOld;

    hpenOld = SelectObject(hdc, hpenDarkGray);
    MMoveTo(hdc, prc->left, prc->top);
    LineTo(hdc, prc->right - 1, prc->top);
    MMoveTo(hdc, prc->left, prc->top);
    LineTo(hdc, prc->left, prc->bottom - 1);

    SelectObject(hdc, GetStockObject(WHITE_PEN));
    MMoveTo(hdc, prc->left + 1, prc->bottom - 1);
    LineTo(hdc, prc->right, prc->bottom - 1);
    MMoveTo(hdc, prc->right - 1, prc->top + 1);
    LineTo(hdc, prc->right - 1, prc->bottom - 1);

    SelectObject(hdc, hpenOld);
}