L_DispContainerSetAnimationStartedCallBack

#include "l_bitmap.h"

L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerSetAnimationStartedCallBack(hCellWnd, pfnCallBack, pUserData)

L_HWND hCellWnd;

handle to the cell window

DISPCONTAINERANIMATIONSTARTEDCALLBACK pfnCallBack;

callback function

LPVOID pUserData;

pointer to more parameters for the callback

Sets a callback function, which will be fired if the control animation has been started.

Parameter

Description

hCellWnd

A handle to the window that represents the Medical Viewer Cell.

pfnCallBack

Pointer to a callback function, which will be fired every time the animation, has been started using L_DispContainerStartAnimation. The callback function must adhere to the function prototype described in DISPCONTAINERANIMATIONSTARTEDCALLBACK.

pUserData

Void pointer that you can use to pass one or more additional parameters that the callback function needs.

 

To use this feature, assign a value to a variable or create a structure that contains as many fields as you need. Then, in this parameter, pass the address of the variable or structure, casting it to L_VOID *. The callback function, which receives the address in its own pUserData parameter, can cast it to a pointer of the appropriate data type to access your variable or structure.

 

If the additional parameters are not needed, you can pass NULL in this parameter.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

This function will set the current animation started callback; to get the current animation started callback call the L_DispContainerGetAnimationStartedCallBack function.

The cell(s) must contain multiple frames.

Required DLLs and Libraries

LTIVW

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

The toolkit comes in Win32 and x64 editions that can support development of software applications for any of the following environments:

Windows 10

Windows 8

Windows 7

Windows Vista

Windows XP

Windows 2000

See Also

Functions:

L_DispContainerGetAnimationStartedCallBack, L_DispContainerGetAnimationStoppedCallBack, L_DispContainerSetAnimationStoppedCallBack, L_DispContainerSetAnimationProperties, L_DispContainerGetAnimationProperties, L_DispContainerIsCellAnimated, L_DispContainerStopAnimation, L_DispContainerStartAnimation, L_DispContainerCreate, L_DispContainerRemoveCell, L_DispContainerInsertCell, L_DispContainerGetCellCount, L_DispContainerGetCellWindowHandle, L_DispContainerSetCellTag, L_DispContainerSetCellProperties, L_DispContainerGetCellProperties, L_DispContainerRepositionCell, L_DispContainerGetCellPosition, L_DispContainerSetCellBitmapList, L_DispContainerGetCellBitmapList, L_DispContainerGetCellBounds, L_DispContainerSelectCell, L_DispContainerIsCellSelected, L_DispContainerIsCellFrozen

Topics:

Implementing Animation

 

Image Viewer Functions: Implementing Animation

Example

This example notifies the user when the animation has started or stopped using the AtartAnimation and StopAnimation procedures.

L_INT EXT_CALLBACK AnimationStartedCallBack(HWND hCellWnd, 
L_INT    nCellIndex, 
L_VOID * pAnimationStartedUserData) 
{ 
   UNREFERENCED_PARAMETER(nCellIndex); 
   UNREFERENCED_PARAMETER(pAnimationStartedUserData); 
   UNREFERENCED_PARAMETER(hCellWnd); 
   MessageBox(NULL, TEXT("Animation started"), TEXT("Animation call Backs"), MB_OK); 
   return SUCCESS; 
} 
L_INT EXT_CALLBACK AnimationStoppedCallBack(HWND hCellWnd, 
L_INT    nCellIndex, 
L_VOID * pAnimationStoppedUserData) 
{ 
   UNREFERENCED_PARAMETER(nCellIndex); 
   UNREFERENCED_PARAMETER(pAnimationStoppedUserData); 
   UNREFERENCED_PARAMETER(hCellWnd); 
   MessageBox(NULL, TEXT("Animation stopped"), TEXT("Animation call Backs"), MB_OK); 
   return SUCCESS; 
} 
L_INT DispContainerAnimationCallbacksExample(HDISPCONTAINER hCon) 
{ 
   DISPCONTAINERANIMATIONSTOPPEDCALLBACK oldAnimationStoppedCallback; 
   DISPCONTAINERANIMATIONSTARTEDCALLBACK oldAnimationStartedCallback; 
   L_VOID * oldAnimationStoppedUserData; 
   L_VOID * oldAnimationStartedUserData; 
   if (L_DispContainerGetCellCount(hCon, 0) == 0) 
   { 
      MessageBox(NULL, TEXT("you must at least have one cell added to the viewer"), TEXT("No Cell attached"), MB_OK); 
      return FAILURE; 
   } 
   HWND hCellWnd = L_DispContainerGetCellWindowHandle(hCon, 0, 0); 
   L_DispContainerGetAnimationStoppedCallBack(hCellWnd, &oldAnimationStoppedCallback, &oldAnimationStoppedUserData); 
   L_DispContainerSetAnimationStoppedCallBack(hCellWnd, AnimationStoppedCallBack, NULL); 
   L_DispContainerGetAnimationStartedCallBack(hCellWnd, &oldAnimationStartedCallback, &oldAnimationStartedUserData); 
   L_DispContainerSetAnimationStartedCallBack(hCellWnd, AnimationStartedCallBack, NULL); 
   return SUCCESS; 
} 
L_VOID StartAnimation(HDISPCONTAINER hCon) 
{ 
   if (L_DispContainerGetCellCount(hCon, 0) == 0) 
   { 
      MessageBox(NULL, TEXT("you must at least have one cell added to the viewer"), TEXT("No Cell attached"), MB_OK); 
      return; 
   } 
   HWND hCellWnd = L_DispContainerGetCellWindowHandle(hCon, 0, 0); 
   L_DispContainerStartAnimation(hCellWnd, 0, -1, FALSE, 0); 
} 
L_VOID StopAnimation(HDISPCONTAINER hCon) 
{ 
   if (L_DispContainerGetCellCount(hCon, 0) == 0) 
   { 
      MessageBox(NULL, TEXT("you must at least have one cell added to the viewer"), TEXT("No Cell attached"), MB_OK); 
      return; 
   } 
   HWND hCellWnd = L_DispContainerGetCellWindowHandle(hCon, 0, 0); 
   L_DispContainerStopAnimation(hCellWnd, 0); 
} 

Help Version 19.0.2017.10.18
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Medical Image Viewer C API Help