home *** CD-ROM | disk | FTP | other *** search
/ Power GUI Programming with VisualAge C++ / powergui.iso / trialva / ibmcppw / include / imoushdr.c < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-22  |  2.6 KB  |  65 lines

  1. /*******************************************************************************
  2. * FILE NAME: imoushdr.c                                                        *
  3. *                                                                              *
  4. * DESCRIPTION:                                                                 *
  5. *   This file contains the definition of the template functions                *
  6. *   declared in imoushdr.hpp.                                                  * 
  7. *                                                                              *
  8. * COPYRIGHT:                                                                   *
  9. *   IBM Open Class Library                                                     *
  10. *   (C) Copyright International Business Machines Corporation 1992, 1996       *
  11. *   Licensed Material - Program-Property of IBM - All Rights Reserved.         *
  12. *   US Government Users Restricted Rights - Use, duplication, or disclosure    *
  13. *   restricted by GSA ADP Schedule Contract with IBM Corp.                     *
  14. *                                                                              *
  15. *******************************************************************************/
  16. #include <imoushdr.hpp>
  17.  
  18. template<class ATarget>
  19. IMouseConnectionTo<ATarget>::IMouseConnectionTo( ATarget&              target,
  20.                                                  ClickMemberFunction   clickMemberFunction,
  21.                                                  MoveMemberFunction    moveMemberFunction, 
  22.                                                  PointerMemberFunction pointerMemberFunction )
  23. : fTarget(target), 
  24.   fConnectedClickMember(clickMemberFunction),
  25.   fConnectedMoveMember(moveMemberFunction), 
  26.   fConnectedPointerMember(pointerMemberFunction) 
  27. {
  28. }
  29.  
  30. template<class ATarget>
  31. IMouseConnectionTo<ATarget>::~IMouseConnectionTo()
  32. {
  33. }
  34.  
  35. template<class ATarget>
  36. Boolean
  37. IMouseConnectionTo<ATarget>::mouseClicked( IMouseClickEvent& event )
  38. {
  39.     if ( fConnectedClickMember )
  40.        return ( fTarget.*fConnectedClickMember ) ( event );
  41.     else
  42.        return false;
  43. }
  44.     
  45. template<class ATarget>
  46. Boolean
  47. IMouseConnectionTo<ATarget>::mouseMoved( IMouseEvent& event )
  48. {
  49.     if ( fConnectedMoveMember )
  50.        return ( fTarget.*fConnectedMoveMember ) ( event );
  51.     else
  52.        return false;
  53. }
  54.     
  55. template<class ATarget>
  56. Boolean
  57. IMouseConnectionTo<ATarget>::mousePointerChange( IMousePointerEvent& event )
  58. {   
  59.     if ( fConnectedPointerMember )
  60.        return ( fTarget.*fConnectedPointerMember ) ( event );
  61.     else
  62.        return false;
  63. }
  64.  
  65.