[Mono-dev] Setting XSetErrorHandler in Cs ?

Quandary quandary82 at hailmail.net
Wed Mar 23 08:29:47 EDT 2011


Question:

I started porting XSendEvent of KeyboardKeys from C to C#.
I have only one minor question:

Consider the below method ResizeWindow:
How can I set XSetErrorHandler to a managed code (C#) function ?
Delegate ?


// gcc -o xwinspy xwinspy.c -L/usr/X11R6/lib -lX11

// ERROR HANDLER, GENERIC
static int ErrorHandler (Display *display, XErrorEvent *error)
{
    //printf ("\r\n error! \r\n");
    return 0;
}
// END ERROR HANDLER


void ResizeWindow(char* szWindow, unsigned int width, unsigned int height)
{
     Display *display = XOpenDisplay (NULL);

     XSetErrorHandler(ErrorHandler);

     Window wdThisWindow = FindWindow(szWindow);

     char* win_name;
     if (XFetchName(display, wdThisWindow, &win_name))
     {
         printf("Moving: %s\n", win_name);
     }

     XResizeWindow(display, wdThisWindow, width, height);

     XCloseDisplay (display);
}



More information about the Mono-devel-list mailing list