#ifndef __INC_POS_PLIB_SPGADGET_H
#define __INC_POS_PLIB_SPGADGET_H
/*******************************************************************
 Includes Release 24
 (C) Copyright 1995-1997 proDAD
     All Rights Reserved

 $AUT Holger Burkarth
 $DAT >>SpGadget.h<<   08 Mar 1997    09:05:40 - (C) ProDAD
*******************************************************************/
#include <pExec/Library.h>

extern struct pOS_GadgetBase *gb_GadgetBase;

/*----------------------------------
-----------------------------------*/
struct pOS_GadLibFunction
{

  __ARID__ pOS_GadgetItem* (*pOS_CreateGadgetItemA_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_GadgetTagManage*,_R_A1 const pOS_GadgetTagItem*,_R_A2 const pOS_TagItem*);
  UBYTE _d25[8];
  __ARID__ pOS_GadgetTagManage* (*pOS_CreateGadgetItemsA_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_GadgetTagItem*,_R_A1 const pOS_TagItem*);
  UBYTE _d24[8];
  VOID (*pOS_DeleteGadgetItems_func)(_R_LB pOS_GadgetBase*,_R_A0 __ARID__ pOS_GadgetTagManage*);
  UBYTE _d23[8];
  pOS_Gadget* (*pOS_GetSuccGadget_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,_R_A1 const pOS_Gadget*);
  UBYTE _d22[8];
  pOS_Gadget* (*pOS_GetPredGadget_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,_R_A1 const pOS_Gadget*);
  UBYTE _d21[8];
  VOID (*pOS_CalcGadgetInner_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,_R_A1 const pOS_Gadget*,_R_A2 pOS_Rectangle*,_R_D0 ULONG);
  UBYTE _d20[8];

/** 20 **/
  BOOL (*pOS_IsGadgetMember_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Gadget*,_R_A1 const pOS_Gadget*);
  UBYTE _d19[8];
  VOID (*pOS_GadgetDeleteDragList_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_DragList*);
  UBYTE _d18[8];
  pOS_Gadget* (*pOS_GadgetDropTest_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_GadgetMethod*,_R_A1 const pOS_Gadget*);
  UBYTE _d17[8];
  BOOL (*pOS_GadgetDropIEvent_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_IntuiUnit*,_R_A1 pOS_InputEvent*,_R_A2 pOS_DragList*);
  UBYTE _d16[8];
  VOID (*pOS_DrawDisableRect_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_RastPort*,_R_D0 SLONG,_R_D1 SLONG,_R_D2 SLONG,_R_D3 SLONG);
  UBYTE _d15[8];
  BOOL (*pOS_GadgetHandleIEvent_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_IntuiUnit*,_R_A1 pOS_InputEvent*);
  UBYTE _d14[8];
  VOID (*pOS_CalcGadgetBox_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,
                   _R_A1 const pOS_Gadget*,_R_A2 pOS_Rectangle*);
  UBYTE _d13[8];
  VOID (*pOS_CalcGadgetInnerBox_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,
                   _R_A1 const pOS_Gadget*,_R_A2 pOS_Rectangle*);
  UBYTE _d12[8];
  VOID (*pOS_CalcGadgetInnerBox2_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Window*,
                   _R_A1 const pOS_Gadget*,_R_A2 pOS_Rectangle*);
  UBYTE _d11[8];
  VOID (*pOS_DrawGadget_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Gadget*,
                   _R_A1 pOS_GadgetMethod*,_R_D0 ULONG);
  UBYTE _d10[8];

/** 10 **/
  __ARID__ APTR (*pOS_NewGObjectA_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_NClass*,
                   _R_A1 const CHAR*,_R_D0 ULONG,_R_A2 const pOS_TagItem*);
  UBYTE _d9[8];
  VOID (*pOS_DisposeGObject_func)(_R_LB pOS_GadgetBase*,_R_A0 __ARID__ APTR);
  UBYTE _d8[8];
  pOS_RastPort* (*pOS_ObtainGRastPort_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Gadget*,
                   _R_A1 const pOS_IClassInfo*);
  UBYTE _d7[8];
  VOID (*pOS_ReleaseGRastPort_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_IClassInfo*,
                   _R_A1 pOS_RastPort*);
  UBYTE _d6[8];
  pOS_Gadget* (*pOS_GadgetHitTest_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_GadgetMethod*,
                   _R_A1 const pOS_Gadget*);
  UBYTE _d5[8];
  pOS_Gadget* (*pOS_GadgetHitTestC_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_GadgetMethod*,
                   _R_A1 const pOS_Gadget*,_R_D0 ULONG);
  UBYTE _d4[8];
  const CHAR* (*pOS_LinkGadHelpIDs_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_Screen*,
                   _R_A1 const pOS_Point*,_R_A2 CHAR*,_R_D0 size_t,_R_D1 ULONG);
  UBYTE _d3[8];
  VOID (*pOS_AddLinkGadHelpID_func)(_R_LB pOS_GadgetBase*,_R_A0 pOS_GadgetMethod*,_R_A1 const CHAR*);
  UBYTE _d2[8];
  ULONG (*pOS_AddLinkGadHelpAll_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Gadget*,
                   _R_A1 pOS_GadgetMethod*);
  UBYTE _d1[8];
  VOID (*pOS_CalcRelMousePoint_func)(_R_LB pOS_GadgetBase*,_R_A0 const pOS_Gadget*,
                   _R_A1 const pOS_Window*,_R_A2 const pOS_Point* ap,_R_A3 pOS_Point* rel);
  UBYTE _d0[8];

  pOS_StdLibraryFunction StdLib;
}; /* => Base */


#endif
