kxerrorhandler.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 
00022 
00023 
00024 
00025 #ifndef KXERRORHANDLER_H
00026 #define KXERRORHANDLER_H
00027 
00028 #include <qvaluelist.h>
00029 #include <qwindowdefs.h>
00030 #include <X11/Xlib.h>
00031 
00056 class KXErrorHandler
00057     {
00058     public:
00063         KXErrorHandler( Display* dpy = qt_xdisplay());
00069         KXErrorHandler( bool (*handler)( int request, int error_code, unsigned long resource_id ), Display* dpy = qt_xdisplay());
00076         KXErrorHandler( int (*handler)( Display*, XErrorEvent* ), Display* dpy = qt_xdisplay());
00085         bool error( bool sync ) const;
00086         ~KXErrorHandler();
00087     private:
00088         void addHandler();
00089         int handle( Display* dpy, XErrorEvent* e );
00090         bool (*user_handler1)( int request, int error_code, unsigned long resource_id );
00091         int (*user_handler2)( Display*, XErrorEvent* );
00092         int (*old_handler)( Display*, XErrorEvent* );
00093         unsigned long first_request;
00094         Display* display;
00095         bool was_error;
00096         static int handler_wrapper( Display*, XErrorEvent* );
00097         static KXErrorHandler** handlers;
00098         static int pos;
00099         static int size;
00100         class KXErrorHandlerPrivate* d;
00101     };
00102 
00103 #endif
 
This file is part of the documentation for kdecore Library Version 3.2.0.