Filewatcher File Search
FTP Search
  
Directory (beta)
  
Content Search (beta)
   
pkg://Xarm-1.3.0.tar.gz:302535/Xarm-1.3.0/include/Xarm/CallbackP.h  downloads

/* $Id: CallbackP.h,v 1.2 1997/03/23 13:53:01 glgay Exp $ */
/*
 Copyright (C) 1996 Gerald L. Gay
 Copyright (C) 1996 Peter Williams

 This library is free software; you can redistribute it and/or
 modify it under the terms of the GNU Library General Public License
 version 2 as published by the Free Software Foundation.

 This library is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Library General Public License for more details.

 You should have received a copy of the GNU Library General Public
 License along with this library; see the file COPYING.  If not,
 write to the Free Software Foundation, Inc., 675 Mass Ave,
 Cambridge, MA 02139, USA.
*/

#if !defined(_XARM_CALLBACKP_H_)
#define _XARM_CALLBACKP_H_

/* ======================================================================= */
/* Include(s): */
#include <X11/X.h>
#include <X11/IntrinsicP.h>
#include <X11/Intrinsic.h>

template <class T>
struct CallbackInfo {
   typedef void (T::*p_msg)(Widget, XtPointer, XtPointer);

   p_msg _callback;
   XtPointer _closure;
   T *_target;
   _XtString _type; 
   Widget _widget;
};

template <class T>
struct ProtocolInfo {
    typedef void (T::*p_msg)(Widget, XtPointer, XtPointer);

    p_msg _callback;
    XtPointer _closure;
    T *_target;
    Atom _property;
    Atom _protocol;
    Widget _widget;
};

template <class T>
struct WorkInfo {
    typedef Boolean (T::*p_msg)(XtPointer);

    p_msg _callback;
    XtPointer _closure;
    T *_target;
    XtWorkProcId _id;
};

template <class T>
struct TimerInfo {
    typedef void (T::*p_msg)(XtPointer, XtIntervalId *);

    p_msg _callback;
    XtPointer _closure;
    T *_target;
    XtIntervalId _id;
};

template <class T>
struct InputInfo {
    typedef void (T::*p_msg)(XtPointer, int *, XtInputId *);

    p_msg _callback;
    XtPointer _closure;
    T *_target;
    XtInputId _id;
};

template <class T>
struct EventInfo {
    typedef void (T::*p_msg)(Widget, XtPointer, XEvent *, Boolean *);

    p_msg _callback;
    XtPointer _closure;
    T *_target;
    Widget _widget;
    EventMask _em;
    Boolean _nonmaskable;
};

void         registerCallback(void *);
void         unregisterCallback(void *);
void         removeAllCallbacks(Widget, _XtString);

void         registerProtoCallback(void *);
void         unregisterProtoCallback(void *);

XtWorkProcId registerWorkProc(void *, XtAppContext);
void         removeWorkProc(XtWorkProcId);

XtIntervalId registerTimeOut(void *, XtAppContext, unsigned long);
void         removeTimeOut(XtIntervalId);

XtInputId    registerInput(void *, XtAppContext, int, XtPointer);
void         removeInput(XtInputId);

void         registerEventHandler(void *);
void         unregisterEventHandler(void *);

#endif
Results 1 - 1
Help - FTP Sites List - Software Dir.
Searching half a billion files worldwide
© 1997-2008 Oliver Maruhn