home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 3_2004-2005.ISO / Data / Zips / Advanced_S1855972212005.psc / Subclass / Dll / cSubclasses.cls < prev    next >
Text File  |  2005-02-18  |  2KB  |  86 lines

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4.   Persistable = 0  'NotPersistable
  5.   DataBindingBehavior = 0  'vbNone
  6.   DataSourceBehavior  = 0  'vbNone
  7.   MTSTransactionMode  = 0  'NotAnMTSObject
  8. END
  9. Attribute VB_Name = "cSubclasses"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = True
  14. Option Explicit
  15.  
  16. '==================================================================================================
  17. 'cSubclasses.cls                        7/5/04
  18. '
  19. '           PURPOSE:
  20. '               Adds and removes subclasses for a single object through a familiar collection interface.
  21. '
  22. '           MODULES CALLED FROM THIS MODULE:
  23. '               mSubclass.cls
  24. '
  25. '==================================================================================================
  26.  
  27. '1.  iEnumerable Interface    - For ... Each enumeration
  28. '2.  Friendly Interface       - Used internally to initialize the modular variable.
  29. '3.  Collection Interface     - Methods which manage the collection of cSubclass objects.
  30.  
  31. Private miPtr As Long       'Stores a pointer to the iSubclass object to be called back for messages
  32.  
  33.  
  34. '<Private Interface>
  35. '</Private Interface>
  36.  
  37. '<Friendly Interface>
  38. Friend Sub fInit( _
  39.             iPtr As Long)
  40.     miPtr = iPtr
  41. End Sub
  42. '<Friendly Interface>
  43.  
  44. '<Public Interface>
  45. '<Collection Interface>
  46. Public Function Add( _
  47.             ByVal hWnd As Long) _
  48.                 As cSubclass
  49.     Set Add = mSubclass.Subclasses_Add(miPtr, hWnd)
  50. End Function
  51.  
  52. Public Sub Remove( _
  53.             ByVal hWnd As Long)
  54.     mSubclass.Subclasses_Remove miPtr, hWnd
  55. End Sub
  56.  
  57. Public Function Item( _
  58.             ByVal hWnd As Long) _
  59.                 As cSubclass
  60. Attribute Item.VB_UserMemId = 0
  61.     Set Item = mSubclass.Subclasses_Item(hWnd, miPtr)
  62. End Function
  63.  
  64. Public Function Exists( _
  65.             ByVal hWnd As Long) _
  66.                 As Boolean
  67.     Exists = mSubclass.Subclasses_Exists(hWnd, miPtr)
  68. End Function
  69.  
  70. Public Function Count() As Long
  71.     Count = mSubclass.Subclasses_Count(miPtr)
  72. End Function
  73.  
  74. Public Function Clear() As Long
  75.     Clear = mSubclass.Subclasses_Clear(miPtr)
  76. End Function
  77.  
  78. 'Public Property Get NewEnum() As IUnknown
  79. '    Dim loEnum As cEnumeration
  80. '    Set loEnum = New cEnumeration
  81. '    Set NewEnum = loEnum.GetEnum(Me, Subclasses_Control(miPtr))
  82. 'End Property
  83. '</Collection Interface>
  84. '</Public Interface>
  85.  
  86.