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

  1. /*******************************************************************************
  2. * FILE NAME: ikeyhdr.c                                                         *
  3. *                                                                              *
  4. * DESCRIPTION:                                                                 *
  5. *   This file contains the definition of the template functions                *
  6. *   declared in ikeyhdr.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 <ikeyhdr.hpp>
  17.  
  18.  
  19. template<class ATarget>
  20. IKeyboardConnectionTo<ATarget>::IKeyboardConnectionTo( ATarget&           target,
  21.                                                        KeyboardMemberFn   characterKeyMemberFn )
  22. : fTarget(target), 
  23.   fConnectedCharacterKeyMember(characterKeyMemberFn),
  24.   fConnectedVirtualKeyMember(0)
  25. {
  26. }
  27.  
  28. template<class ATarget>
  29. IKeyboardConnectionTo<ATarget>::~IKeyboardConnectionTo()
  30. {
  31. }
  32.  
  33. template<class ATarget>
  34. Boolean
  35. IKeyboardConnectionTo<ATarget>::characterKeyPress( IKeyboardEvent& event )
  36. {
  37.     return ( fTarget.*fConnectedCharacterKeyMember ) ( event );
  38. }
  39.  
  40. template<class ATarget>
  41. Boolean
  42. IKeyboardConnectionTo<ATarget>::virtualKeyPress( IKeyboardEvent& event )
  43. {
  44.     if ( fConnectedVirtualKeyMember )
  45.        return ( fTarget.*fConnectedVirtualKeyMember ) ( event );
  46.     else
  47.        return false;
  48. }
  49.  
  50. template<class ATarget>
  51. IKeyboardConnectionTo<ATarget>&
  52. IKeyboardConnectionTo<ATarget>::setVirtualKeyMemberFn ( KeyboardMemberFn virtualKeyMemberFn )
  53. {
  54.     fConnectedVirtualKeyMember = virtualKeyMemberFn;
  55.     return *this;
  56. }
  57.     
  58.