home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / include / Xm / DragOverSP.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-06-30  |  2.8 KB  |  102 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC. 
  3.  * ALL RIGHTS RESERVED 
  4. */ 
  5. /* 
  6.  * Motif Release 1.2
  7. */ 
  8. /*   $RCSfile: DragOverSP.h,v $ $Revision: 10.1 $ $Date: 1994/02/03 15:37:22 $ */
  9. /*
  10. *  (c) Copyright 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  11. #ifndef _XmDragOverSP_h
  12. #define _XmDragOverSP_h
  13.  
  14. #include <X11/Shell.h>
  15. #include <X11/ShellP.h>
  16. #include <Xm/XmP.h>
  17. #include <Xm/DragIconP.h>
  18. #include <Xm/DragOverS.h>
  19.  
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif
  23.  
  24. #define DOExpose(do) \
  25.     ((XtClass(do))->core_class.expose) ((Widget)(do), NULL, NULL)
  26.  
  27. /* 
  28.  * DRAGOVER SHELL
  29.  */
  30. typedef struct 
  31. {
  32.     XtPointer                extension;
  33. } XmDragOverShellClassPart;
  34.  
  35. /* Full class record declaration */
  36.  
  37. typedef struct _XmDragOverShellClassRec 
  38. {
  39.     CoreClassPart         core_class;
  40.     CompositeClassPart         composite_class;
  41.     ShellClassPart         shell_class;
  42.     WMShellClassPart            wm_shell_class;
  43.     VendorShellClassPart     vendor_shell_class;
  44.     XmDragOverShellClassPart     dragOver_shell_class;
  45. } XmDragOverShellClassRec;
  46.  
  47. externalref XmDragOverShellClassRec xmDragOverShellClassRec;
  48.  
  49. typedef struct _XmBackingRec{
  50.     Position    x, y;
  51.     Pixmap    pixmap;
  52. }XmBackingRec, *XmBacking;
  53.  
  54. typedef struct _XmDragOverBlendRec{
  55.     XmDragIconObject        sourceIcon;    /* source icon */
  56.     Position            sourceX;    /* source location in blend */
  57.     Position            sourceY;    /* source location in blend */
  58.     XmDragIconObject        mixedIcon;    /* blended icon */
  59.     GC                gc;        /* appropriate depth */
  60. }XmDragOverBlendRec, *XmDragOverBlend;
  61.  
  62. typedef struct _XmDragOverShellPart{
  63.     Position            hotX;        /* current hotX */
  64.     Position            hotY;        /* current hotY */
  65.     unsigned char        cursorState;    /* current cursor state */
  66.     unsigned char        mode;
  67.     unsigned char        activeMode;
  68.  
  69.     Position            initialX;    /* initial hotX */
  70.     Position            initialY;    /* initial hotY */
  71.  
  72.     XmDragIconObject        stateIcon;    /* current state icon */
  73.     XmDragIconObject        opIcon;        /* current operation icon */
  74.  
  75.     XmDragOverBlendRec        cursorBlend;    /* cursor blending */
  76.     XmDragOverBlendRec        rootBlend;    /* pixmap or window blending */
  77.     Pixel            cursorForeground;
  78.     Pixel            cursorBackground;
  79.     Cursor            ncCursor;    /* noncached cursor */
  80.     Cursor            activeCursor;    /* the current cursor */
  81.  
  82.     XmBackingRec        backing;     /* backing store for pixdrag */
  83.     Pixmap            tmpPix;        /* temp storage for pixdrag */
  84.     Pixmap            tmpBit;        /* temp storage for pixdrag */
  85.     Boolean                     isVisible;    /* shell is visible */
  86. }XmDragOverShellPart;
  87.  
  88. typedef  struct _XmDragOverShellRec{
  89.     CorePart         core;
  90.     CompositePart     composite;
  91.     ShellPart         shell;
  92.     WMShellPart        wm;
  93.     VendorShellPart    vendor;
  94.     XmDragOverShellPart    drag;
  95. } XmDragOverShellRec;
  96.  
  97. #ifdef __cplusplus
  98. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  99. #endif
  100.  
  101. #endif /* _XmDragOverSP_h */
  102.