home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv8.zip / VACPP / IBMCPP / samples / VISBUILD / RAPSHEET / CPPOV23 / IALIAS.CPP < prev    next >
Text File  |  1995-05-12  |  5KB  |  121 lines

  1. //****************************************************************************
  2. // IAlias Class - C++ Source File (ialias.cpp)                               *
  3. //                                                                           *
  4. // COPYRIGHT: Copyright (C) International Business Machines Corp., 1994,1995 *
  5. //                                                                           *
  6. // DISCLAIMER OF WARRANTIES:                                                 *
  7. //   The following [enclosed] code is sample code created by IBM             *
  8. //   Corporation.  This sample code is not part of any standard IBM product  *
  9. //   and is provided to you solely for the purpose of assisting you in the   *
  10. //   development of your applications.  The code is provided "AS IS",        *
  11. //   without warranty of any kind.  IBM shall not be liable for any damages  *
  12. //   arising out of your use of the sample code, even if they have been      *
  13. //   advised of the possibility of such damages.                             *
  14. //****************************************************************************
  15. //NOTE: WE RECOMMEND USING A FIXED-SPACE FONT TO LOOK AT THE SOURCE.
  16. //
  17.  
  18. #include "IAlias.hpp"
  19. #ifndef _INOTIFEV_
  20.    #include "inotifev.hpp"
  21. #endif
  22.  
  23. /****************************************************************************
  24.  * Constructors
  25.  ****************************************************************************/
  26. IAlias :: IAlias() :
  27.     dAlias("")
  28. {
  29. }
  30.  
  31. /****************************************************************************
  32.  * Destructor
  33.  ****************************************************************************/
  34. IAlias :: ~IAlias()
  35. {
  36. }
  37.  
  38.  
  39. /****************************************************************************
  40.  * Events
  41.  ****************************************************************************/
  42. INotificationId IAlias :: aliasId = "IAlias::alias";
  43.  
  44.  
  45. /****************************************************************************
  46.  * Attribute Access Member Functions
  47.  ****************************************************************************/
  48. /*------------------------------------------------------------------
  49.  * alias
  50.  *-----------------------------------------------------------------*/
  51. IString IAlias :: alias() const
  52. {
  53.   return dAlias;
  54. }
  55.  
  56. IAlias &  IAlias :: 
  57.   setAlias(const IString & iAlias)
  58. {
  59.   if (dAlias != iAlias)
  60.   {
  61.      dAlias = iAlias;
  62.      notifyObservers(INotificationEvent(aliasId, *this, true,
  63.                                         IEventData((char *)iAlias)));
  64.   }
  65.   else
  66.      notifyObservers(INotificationEvent(aliasId, *this, false));
  67.   return *this;
  68. }
  69.  
  70.  
  71. /****************************************************************************
  72.  * Action Member Functions 
  73.  ****************************************************************************/
  74. /*------------------------------------------------------------------
  75.  * asString()
  76.  *-----------------------------------------------------------------*/
  77. IString  IAlias :: asString() const
  78. {
  79.   return alias();
  80. }
  81.  
  82.  
  83. /**************************************************************************** 
  84.  * Operators
  85.  ****************************************************************************/
  86. /*------------------------------------------------------------------
  87.  * Operator == (const IAlias & value)
  88.  *-----------------------------------------------------------------*/
  89. Boolean IAlias::operator ==(const IAlias & value) const
  90. {
  91.   if (alias() != value.alias()) return false;
  92.   return true;
  93. }
  94.       
  95. /*------------------------------------------------------------------
  96.  * Operator == (const IAlias * value)
  97.  *-----------------------------------------------------------------*/
  98. Boolean IAlias::operator == (const IAlias * value) const
  99. {
  100.   if (alias() != value->alias()) return false;
  101.   return true;
  102. }
  103.  
  104. /*------------------------------------------------------------------
  105.  * Operator != (const IAlias & value)
  106.  *-----------------------------------------------------------------*/
  107. Boolean IAlias::operator != (const IAlias & value) const
  108. {
  109.   if (alias() != value.alias()) return true;
  110.   return false;
  111. }
  112.  
  113. /*------------------------------------------------------------------
  114.  * Operator != (const IAlias * value)
  115.  *-----------------------------------------------------------------*/
  116. Boolean IAlias::operator != (const IAlias * value) const
  117. {
  118.   if (alias() != value->alias()) return true;
  119.   return false;
  120. }
  121.