home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: WPS_PM / WPS_PM.zip / xfld085s.zip / helpers / animate.h < prev    next >
C/C++ Source or Header  |  1999-02-23  |  3KB  |  67 lines

  1.  
  2. /*
  3.  * animate.h:
  4.  *      header file for animate.c.
  5.  *
  6.  *      Copyright (C) 1997-99 Ulrich Möller.
  7.  *      This file is part of the XFolder source package.
  8.  *      XFolder is free software; you can redistribute it and/or modify
  9.  *      it under the terms of the GNU General Public License as published
  10.  *      by the Free Software Foundation, in version 2 as it comes in the
  11.  *      "COPYING" file of the XFolder main distribution.
  12.  *      This program is distributed in the hope that it will be useful,
  13.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  14.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15.  *      GNU General Public License for more details.
  16.  */
  17.  
  18. #if __cplusplus
  19. extern "C" {
  20. #endif
  21.  
  22. #ifndef ANIMATE_HEADER_INCLUDED
  23.     #define ANIMATE_HEADER_INCLUDED
  24.  
  25.     typedef struct _ANIMATIONDATA {
  26.         // ULONG       cb;                 // size of structure
  27.         // HWND        hwndIcon;           // the static control hwnd
  28.         ULONG       ulDelay;            // delay per animation step in ms
  29.  
  30.         RECTL       rclIcon;            // ** internal use only
  31.         // LONG        lBkgndColor;        // ** internal use only
  32.         HPOINTER    hptr;               // ** internal use only
  33.         HBITMAP     hbm;                // ** internal use only
  34.         ULONG       ulSysIconSize;      // ** internal use only
  35.         USHORT      usAniCurrent;       // ** internal use only
  36.         PFNWP       OldStaticProc;      // ** internal use only
  37.  
  38.         USHORT      usAniCount;         // no. of animation steps
  39.         HPOINTER    ahptrAniIcons[1];   // array of animation steps;
  40.                                         // there must be usAniCount items
  41.     } ANIMATIONDATA, *PANIMATIONDATA;
  42.  
  43.     PANIMATIONDATA anmPrepareStaticIcon(HWND hwndStatic, USHORT usAnimCount);
  44.  
  45.     BOOL anmPrepareAnimation(HWND hwndStatic,   // icon hwnd
  46.                     USHORT usAnimCount,         // no. of anim steps
  47.                     HPOINTER *pahptr,           // array of HPOINTERs
  48.                     ULONG ulDelay,              // delay per anim step (in ms)
  49.                     BOOL fStartAnimation);      // TRUE: start animation now
  50.  
  51.     BOOL anmStartAnimation(HWND hwndStatic);
  52.  
  53.     BOOL anmStopAnimation(HWND hwndStatic);
  54.  
  55.     BOOL anmBlowUpBitmap(HPS hps,
  56.                          HBITMAP hbm,
  57.                          ULONG ulAnimationTime);
  58.  
  59.     VOID anmPowerOff(HPS hps, ULONG ulSteps);
  60.  
  61. #endif
  62.  
  63. #if __cplusplus
  64. }
  65. #endif
  66.  
  67.