Imports System.Collections.ObjectModel
Imports System.IO
Imports EgtBEAMWALL.Core
Imports EgtUILib
Imports EgtWPFLib5

Public Class BeamVM
   Inherits Core.BeamVM

   Private m_bDo As Boolean
   Public Property bDO As Boolean
      Get
         Return m_bDo
      End Get
      Set(value As Boolean)
         m_bDo = value
         EgtSetInfo(m_BeamM.nPartId, MGR_PRT_DO, If(value, 1, 0))
      End Set
   End Property

#Region "CONSTRUCTOR"

   Sub New(BeamM As BeamM, ParentMachGroupVM As BeamMachGroupVM)
      MyBase.New(BeamM, ParentMachGroupVM)
   End Sub

#Region "METHODS"

   Protected Overrides Sub CreateBTLFeatureVMList()
      Dim all As List(Of BTLFeatureVM) = (From BTLFeatureM In m_PartM.GetBTLFeatures()
                                          Select New BTLFeatureVM(BTLFeatureM)).ToList()

      For Each BTLFeatureVM As BTLFeatureVM In all
         AddHandler BTLFeatureVM.PropertyChanged, AddressOf OnBTLFeatureVMPropertyChanged
      Next

      m_FeatureVMList = New ObservableCollection(Of Core.BTLFeatureVM)(all)
      AddHandler m_FeatureVMList.CollectionChanged, AddressOf OnBTLFeatureVMListChanged

   End Sub

#End Region    ' METHODS

#End Region    ' CONSTRUCTOR

End Class
