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

  1. #ifndef _IVBVCLSS_
  2.   #define _IVBVCLSS_
  3. /*******************************************************************************
  4. * FILE NAME: ivbvclss.hpp                                                      *
  5. *                                                                              *
  6. * DESCRIPTION:                                                                 *
  7. *   Declaration of the class(es):                                              *
  8. *    IVBVariableClassBase - VB variable class base.                            *
  9. *                                                                              *
  10. * COPYRIGHT:                                                                   *
  11. *   IBM(R) VisualAge(TM) for C++                                               *
  12. *   (C) Copyright International Business Machines Corporation 1991, 1996       *
  13. *   Licensed Material - Program-Property of IBM - All Rights Reserved.         *
  14. *   US Government Users Restricted Rights - Use, duplication, or disclosure    *
  15. *   restricted by GSA ADP Schedule Contract with IBM Corp.                     *
  16. *                                                                              *
  17. *   This program will not run in DOS mode.                                     *
  18. *                                                                              *
  19. *******************************************************************************/
  20. #ifndef _IVBDEFS__
  21. #include <ivbdefs.h>
  22. #endif
  23.  
  24. #ifndef _ISTDNTFY_
  25.   #include <istdntfy.hpp>
  26. #endif
  27.  
  28. /*-------------------------- Pragma Library Support --------------------------*/
  29. #ifndef __NO_DEFAULT_LIBS__
  30.   #ifdef __OS2__
  31.     #ifdef __IMPORTLIB__
  32.        #pragma library("CPPOOV3I.LIB")
  33.     #else
  34.        #pragma library("CPPOOV3.LIB")
  35.     #endif
  36.   #endif
  37.   #ifdef __WINDOWS__
  38.     #ifdef __IMPORTLIB__
  39.        #pragma library("CPPWOV3I.LIB")
  40.     #else
  41.        #pragma library("CPPWOV3.LIB")
  42.     #endif
  43.   #endif
  44. #endif
  45.  
  46. /*----------------------------------------------------------------------------*/
  47. /* Align classes on four byte boundary.                                       */
  48. /*----------------------------------------------------------------------------*/
  49. #pragma pack(4)
  50.  
  51. class IVBVariableClassBase : public IStandardNotifier {
  52.  
  53. public:
  54. /*--------------------------- PUBLIC -----------------------------------------*/
  55.  
  56. /*------------------------ Constructors ----------------------------------------
  57. | You can construct an instance of this class in the following ways:           |
  58. ------------------------------------------------------------------------------*/
  59.   IVBVariableClassBase ();
  60.  
  61. virtual
  62.   ~IVBVariableClassBase ();
  63.  
  64. /*-------------------------------- Attributes ----------------------------------
  65. | These operations can be used to query and change the attributes:             |
  66. |                                                                              |
  67. | isAutoDeleteTarget  - Query the auto delete target attribute for pointer     |
  68. |                       variable types.                                        |
  69. | setAutoDeleteTarget - Set the auto delete target attribute for pointer       |
  70. |                       variable types.                                        |
  71. ------------------------------------------------------------------------------*/
  72. virtual Boolean
  73.   isAutoDeleteTarget       ( ) const;
  74.  
  75. virtual IVBVariableClassBase
  76.  &setAutoDeleteTarget      ( Boolean autoDeleteTarget=true );
  77.  
  78. /*-------------------------------- Events --------------------------------------
  79. | These are notification events provided:                                      |
  80. |   targetId          - target attribute notification id.                      |
  81. ------------------------------------------------------------------------------*/
  82. static INotificationId const
  83.   IVB_IMPORT targetId;
  84.  
  85. protected:
  86. /*--------------------------------- PRIVATE ----------------------------------*/
  87.   Boolean iAutoDeleteTarget;
  88. };
  89.  
  90. /*----------------------------------------------------------------------------*/
  91. /* Resume compiler default packing.                                           */
  92. /*----------------------------------------------------------------------------*/
  93. #pragma pack()
  94.  
  95. #endif /* _IVBVCLSS_ */
  96.