Example #1
0
int INTERNAL_cursorpos(float *x, float *y)
{
    POINT point;

    GetCursorPos(&point);
    ScreenToClient(WI[GD.win_id].child[C_DRAWAREA].hwnd, &point);
    *x = usercoorx((float) point.x);
    *y = usercoorx((float) point.y);
    return TRUE;
}
Example #2
0
int INTERNAL_cursorpos(float *x, float *y)
{
    int    rootx, rooty, wx, wy, ret;
    Window root, child;
    unsigned int mask;
    Widget wid;
    
    *x = *y = 0.0;
    if ((wid=XtWindowToWidget(INTERNAL_display,xwini[GD.win_id].xwin))==NULL)
        return FALSE;
    if (XtIsManaged(wid)==FALSE)
        return FALSE;
    if (XmGetVisibility(wid) == XmVISIBILITY_FULLY_OBSCURED)
        return FALSE;
    ret = (int) XQueryPointer(INTERNAL_display,
                              xwini[GD.win_id].xwin,
                              &root,
                              &child,
                              &rootx, &rooty,
                              &wx, &wy,
                              &mask);
    *x = usercoorx((float) wx);
    *y = usercoory((float) wy);
    return ret;
}