home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 5_2007-2008.ISO / data / Zips / TAPI_Calle2081388302007.psc / CTAPIDeviceDesc.cls < prev    next >
Text File  |  2007-08-30  |  5KB  |  172 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 = "CTAPIDeviceDesc"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = False
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = True
  14. ' TAPI Device Description Object (for client use, through the DeviceList object)
  15.  
  16. '********************************************************
  17. ' Code Sample by Gregory Fox, Data Management Associates, Inc.
  18. ' Portions borrowed and modified from publically posted samples.
  19. ' Provided AS-IS.  Not tested in a production environment.
  20. '********************************************************
  21.  
  22.  
  23. Option Explicit
  24.  
  25.  
  26. Private mlDeviceIndex As Long
  27.  
  28. Private msAPIVersion As String
  29.  
  30. 'devcaps variables
  31. Private msLineName As String
  32. Private msProviderInfo As String
  33. Private msSwitchInfo As String
  34. Private mlPermanentLineID As Long
  35. Private mlStringFormat As Long
  36. Private mlNumAddresses As Long
  37. Private mlMaxDataRate As Long
  38. Private mlBearerModes As Long
  39. Private mlAddressModes As Long
  40. Private mlMediaModes As Long
  41. Private mlGenerateToneMaxNumFreq As Long
  42. Private mlGenerateToneModes As Long
  43. Private mlNumTerminals As Long
  44.  
  45. Private mlExtensionID0 As Long
  46. Private mlExtensionID1 As Long
  47. Private mlExtensionID2 As Long
  48. Private mlExtensionID3 As Long
  49.  
  50.  
  51.  
  52. Public Property Get DeviceIndex() As Long
  53.     DeviceIndex = mlDeviceIndex
  54. End Property
  55. Public Property Get DeviceAPIVersion() As String
  56.     DeviceAPIVersion = msAPIVersion
  57. End Property
  58. Public Property Get LineName() As String
  59.     LineName = msLineName
  60. End Property
  61. Public Property Get ProviderInfo() As String
  62.     ProviderInfo = msProviderInfo
  63. End Property
  64. Public Property Get SwitchInfo() As String
  65.     SwitchInfo = msSwitchInfo
  66. End Property
  67. Public Property Get PermanentLineID() As Long
  68.     PermanentLineID = mlPermanentLineID
  69. End Property
  70. Public Property Get StringFormat() As Long
  71.     StringFormat = mlStringFormat
  72. End Property
  73. Public Property Get NumAddresses() As Long
  74.     NumAddresses = mlNumAddresses
  75. End Property
  76. Public Property Get MaxDataRate() As Long
  77.     MaxDataRate = mlMaxDataRate
  78. End Property
  79. Public Property Get BearerModes() As Long
  80.     BearerModes = mlBearerModes
  81. End Property
  82. Public Property Get AddressModes() As Long
  83.     AddressModes = mlAddressModes
  84. End Property
  85. Public Property Get MediaModes() As Long
  86.     MediaModes = mlMediaModes
  87. End Property
  88. Public Property Get GenerateToneMaxNumFreq() As Long
  89.     GenerateToneMaxNumFreq = mlGenerateToneMaxNumFreq
  90. End Property
  91. Public Property Get GenerateToneModes() As Long
  92.     GenerateToneModes = mlGenerateToneModes
  93. End Property
  94. Public Property Get NumTerminals() As Long
  95.     NumTerminals = mlNumTerminals
  96. End Property
  97.  
  98. Public Property Get DeviceSupportsVoiceCalls() As Boolean
  99.     If mlBearerModes And LINEBEARERMODE_VOICE Then
  100.         If mlMediaModes And LINEMEDIAMODE_INTERACTIVEVOICE Then
  101.             DeviceSupportsVoiceCalls = True
  102.         End If
  103.     End If
  104. End Property
  105.  
  106. Friend Sub CopyDeviceInfo(ByVal oDev As CTAPIDevice)
  107.  
  108.     On Error Resume Next
  109.     
  110.     With oDev
  111.         mlDeviceIndex = .DeviceIndex
  112.         msAPIVersion = MakeVerStr(.DeviceAPIVersion)
  113.         msLineName = .LineName
  114.         msProviderInfo = .ProviderInfo
  115.         msSwitchInfo = .SwitchInfo
  116.         mlPermanentLineID = .PermanentLineID
  117.         mlStringFormat = .StringFormat
  118.         mlNumAddresses = .NumAddresses
  119.         mlMaxDataRate = .MaxDataRate
  120.         mlBearerModes = .BearerModes
  121.         mlAddressModes = .AddressModes
  122.         mlMediaModes = .MediaModes
  123.         mlGenerateToneMaxNumFreq = .GenerateToneMaxNumFreq
  124.         mlGenerateToneModes = .GenerateToneModes
  125.         mlNumTerminals = .NumTerminals
  126.         
  127.         mlExtensionID0 = .ExtensionID0
  128.         mlExtensionID1 = .ExtensionID1
  129.         mlExtensionID2 = .ExtensionID2
  130.         mlExtensionID3 = .ExtensionID3
  131.         
  132.     End With
  133.  
  134. End Sub
  135.  
  136.  
  137. Public Sub PaintDeviceIcon(ByVal hdc As Long, _
  138.                                 Optional ByVal lLeft As Long = 0, _
  139.                                 Optional ByVal lTop As Long = 0, _
  140.                                 Optional ByVal lWidth As Long = 0, _
  141.                                 Optional ByVal lHeight As Long = 0)
  142.     On Error Resume Next
  143.     
  144.     If Not goTAPIApp Is Nothing Then _
  145.         goTAPIApp.TAPIDevice(mlDeviceIndex).PaintDeviceIcon hdc, lLeft, lTop, lWidth, lHeight
  146.      
  147. End Sub
  148.  
  149. Public Function OpenConfigDialog(Optional ByVal hOwnerHwnd As Long = 0&, _
  150.     Optional ByVal sDeviceClass As String = "") As Boolean
  151.     
  152.     On Error Resume Next
  153.     
  154.     If Not goTAPIApp Is Nothing Then _
  155.         OpenConfigDialog = goTAPIApp.TAPIDevice(mlDeviceIndex).OpenConfigDialog(hOwnerHwnd, sDeviceClass)
  156.         
  157. End Function
  158.  
  159. 'this is called from the App class because this fn needs these first 2 parms...
  160. '
  161. Public Function OpenDialingPropDialog(ByVal hOwnerHwnd As Long, _
  162.     ByVal sPhoneNumber As String) As Boolean
  163.     
  164.     On Error Resume Next
  165.     
  166.     If Not goTAPIApp Is Nothing Then _
  167.         OpenDialingPropDialog = goTAPIApp.OpenDialingPropDialog(mlDeviceIndex, hOwnerHwnd, sPhoneNumber)
  168.    
  169. End Function
  170.  
  171.  
  172.