#ifndef __OOL_XHANDLER_H__
#define __OOL_XHANDLER_H__

/*===========================================================================*/
/* OOL ------------------- the Open Object Library ------ OS/2 version 0.01a */
/*===========================================================================*/
/*                              class: XHandler                              */
/*                       derived from: XObject                               */
/*                        last update: 5/96                                  */
/*                      programmed by: Stefan von Brauk                      */
/*===========================================================================*/

#include "xobject.h"

class XWindow;


#define OOL_DRAGHANDLER                  1
#define OOL_MOUSEHANDLER                 2
#define OOL_CONTAINERHANDLER             3
#define OOL_KEYBHANDLER                  4
#define OOL_ITMDRAWHANDLER               5
#define OOL_BACKDRAWHANDLER              6
#define OOL_STYLEHANDLER                 7
#define OOL_DEFAULTHANDLER               8

class _export_ XHandler: public XObject
{
      friend XWindow;
   private:
      USHORT id;
      XWindow * handleFor;
   protected:
      XHandler( USHORT id, XWindow * handleWindow);
   public:
      USHORT GetID( void ) { return id; }
      virtual ~XHandler();
      XWindow * GetWindow(void) { return handleFor; }
};


#endif
