- modifiche di adattamento pagina Macchina da versione FiveLakes a DoorArreda

- impostato delimitatore csv da file ini
- gestito colore sfondo riga su lista porte
- annullati stati di avanzamento intermedi su ripartenza
This commit is contained in:
Emmanuele Sassi
2024-11-19 16:20:12 +01:00
parent e490597a7b
commit 7fa35ee121
5 changed files with 121 additions and 714 deletions
@@ -28,6 +28,7 @@ Module ConstIni
Public Const K_WIDTH As String = "Width"
Public Const K_THICKNESS As String = "Thickness"
Public Const K_MANUALADDEDDOORNAME As String = "ManualAddedDoorName"
Public Const K_DELIMITER As String = "Delimiter"
Public Const S_DEBUG As String = "Debug"
Public Const K_VARIABLELIST As String = "VariableList"
@@ -138,5 +138,11 @@
<KeyBinding Key="Delete" Command="{Binding Tag.SelectedMachGroup.DeleteMachGroup_Command,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:RawPartListV}}}"/>
</DataGrid.InputBindings>-->
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background" Value="{Binding Background}"/>
</Style>
</DataGrid.RowStyle>
</DataGrid>
</Grid>
@@ -131,8 +131,14 @@ Public Class DoorListPageVM
Dim JsonDoorList As List(Of JsonDoor) = JsonConvert.DeserializeObject(Of List(Of JsonDoor))(sReadedFile)
JsonDoorList = JsonDoorList.OrderBy(Of Integer)(Function(x) x.nListIndex).ToList()
m_DoorList = New ObservableCollection(Of Door)((From JsonDoor In JsonDoorList
Select New Door(JsonDoor)).ToList())
Dim TempDoorList As ObservableCollection(Of Door) = New ObservableCollection(Of Door)((From JsonDoor In JsonDoorList
Select New Door(JsonDoor)).ToList())
For Each CurrDoor In TempDoorList
If CurrDoor.nState > Door.DoorStates.VERIFIED AndAlso CurrDoor.nState < Door.DoorStates.PRODUCED Then
CurrDoor.SetState(Door.DoorStates.VERIFIED)
End If
Next
m_DoorList = TempDoorList
End Sub
Public Sub Write(FilePath As String)
@@ -224,6 +230,7 @@ Public Class DoorListPageVM
End If
Next
End Sub
#End Region ' METHODS
#Region "COMMANDS"
@@ -252,7 +259,9 @@ Public Class DoorListPageVM
Dim sCSVPath As String = OpenFileDialog.FileName
Using MyReader As New Microsoft.VisualBasic.FileIO.TextFieldParser(sCSVPath)
MyReader.TextFieldType = FileIO.FieldType.Delimited
MyReader.SetDelimiters(";")
Dim sDelimiter As String = ""
GetPluginPrivateProfileString(S_CSV, K_DELIMITER, ";", sDelimiter)
MyReader.SetDelimiters(sDelimiter)
' leggo intestazione
Dim Headers As String() = MyReader.ReadFields()
Dim sDDFName As String = ""
@@ -337,7 +346,6 @@ Public Class DoorListPageVM
If IsNothing(m_ExecProcessManager) Then
bStartExecProcessManager = True
m_ExecProcessManager = New ExecProcessManager(sCamExePath, """" & sMainLuaPath & """")
'm_ExecProcessManager.SetPostProcess(AddressOf ExecProcessManager_PostProcess)
AddHandler m_ExecProcessManager.m_AllArgsProcessed, AddressOf ExecProcessManager_AllArgsProcessed
m_ExecProcessManager.SetMaxCamInstances(3)
End If
@@ -850,7 +858,10 @@ Public Class Door
End Property
Friend Sub SetState(value As DoorStates, Optional bUpdate As Boolean = True)
m_nState = value
If bUpdate Then NotifyPropertyChanged(NameOf(nState))
If bUpdate Then
NotifyPropertyChanged(NameOf(nState))
NotifyPropertyChanged(NameOf(Background))
End If
End Sub
#Region "Statistics"
@@ -976,6 +987,28 @@ Public Class Door
#End Region ' Statistics
Public ReadOnly Property Background As SolidColorBrush
Get
Select Case m_nState
Case DoorStates.LOADED_FROM_CSV
Return Brushes.White
Case DoorStates.VERIFICATION_FAILED
Return Brushes.Red
Case DoorStates.SKIPPED
Return Brushes.Orange
Case DoorStates.READY_FOR_PRODUCTION
Return Brushes.LightSkyBlue
Case DoorStates.MACHINE_1_START
Return Brushes.DodgerBlue
Case DoorStates.MACHINE_1_END, DoorStates.PRODUCED
Return Brushes.LightGray
Case Else ' ItemState.Scrapped
Return Brushes.White
End Select
End Get
End Property
Sub New(nId As Integer, nCSVLine As Integer, sDDFName As String, sCSVName As String, nQuantity As Integer, dWidth As Double, dHeight As Double, dThickness As Double, HeaderList As String(), ValueList As String())
m_nId = nId
m_nCSVLine = nCSVLine
@@ -1,7 +1,7 @@
<Grid x:Class="MachinePageV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:Effector.Plugin.FiveLakes"
xmlns:local="clr-namespace:Effector.Plugin.DoorArreda"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
@@ -41,8 +41,7 @@
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<Grid Grid.Column="1"
VerticalAlignment="Center">
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
@@ -86,220 +85,16 @@
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<!--Bottoni di debug-->
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<!--M1-->
<Grid Grid.Column="1"
Grid.ColumnSpan="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Reset-->
<GroupBox Header="Reset"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[13].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1365,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1365,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Mast-->
<GroupBox Grid.Column="2"
Header="Master"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[14].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1366,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1366,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Start-->
<GroupBox Grid.Column="4"
Header="Start"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[15].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1367,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1367,1"/>
</Grid>
</Grid>
</GroupBox>
</Grid>
<!--M2-->
<Grid Grid.Column="5"
Grid.ColumnSpan="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="15"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<!--Reset-->
<GroupBox Header="Reset"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[37].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1365,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1365,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Mast-->
<GroupBox Grid.Column="2"
Header="Master"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[38].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1366,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1366,1"/>
</Grid>
</Grid>
</GroupBox>
<!--Start-->
<GroupBox Grid.Column="4"
Header="Start"
Style="{StaticResource Parameter_MachinePage_Border}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[39].sValue}"
HorizontalAlignment="Center"/>
<Grid Grid.Row="1"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1367,0"/>
<Button Grid.Column="1"
Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1367,1"/>
</Grid>
</Grid>
</GroupBox>
</Grid>
</Grid>
<!--Gestori macchine-->
<!--Gestore macchina-->
<Grid Grid.Column="1"
Grid.Row="1"
Visibility="{Binding MachineCommands_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="2">
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
@@ -340,72 +135,20 @@
Text="Sent 1"/>
<CheckBox Grid.Column="1"
Grid.Row="0"
IsChecked="{Binding VariableList[10].sValue, Converter={StaticResource StringToBooleanConverter}}"
IsChecked="{Binding VariableList[3].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Sent 2"/>
<CheckBox Grid.Column="1"
Grid.Row="1"
IsChecked="{Binding VariableList[11].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
</Grid>
</Grid>
<Grid Grid.Column="6">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding VariableList[36].sValue, Converter={StaticResource StringToMachineStateConverter}}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Button Grid.Row="1"
Content="Initialize"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,1"
Style="{StaticResource Advancement_Button}"/>
<StackPanel Grid.Row="2"
Orientation="Horizontal"
HorizontalAlignment="Center">
<Button Content="Start&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="2,1"
Style="{StaticResource Advancement_Button}"/>
<Button Content="End&#x0d;&#x0a;Machining"
Command="{Binding ManageMachining_Command}"
CommandParameter="2,2"
Style="{StaticResource Advancement_Button}"/>
</StackPanel>
<Grid Grid.Row="3"
HorizontalAlignment="Center">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock Grid.Column="0"
Grid.Row="0"
Text="Sent 1"/>
<CheckBox Grid.Column="1"
Grid.Row="0"
IsChecked="{Binding VariableList[34].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="Sent 2"/>
<CheckBox Grid.Column="1"
Grid.Row="1"
IsChecked="{Binding VariableList[35].sValue, Converter={StaticResource StringToBooleanConverter}}"
IsChecked="{Binding VariableList[4].sValue, Converter={StaticResource StringToBooleanConverter}}"
Style="{StaticResource MachDrawVar_CheckBox}"/>
</Grid>
</Grid>
</Grid>
<!--Bottoni avanzamento-->
<Grid Grid.Column="1"
<!--<Grid Grid.Column="1"
Grid.Row="2"
Visibility="{Binding MachineCommands_Visibility}">
<Grid>
@@ -481,6 +224,18 @@
CommandParameter="2,1,1363/2,2,983->2,1,1364/2,2,984"
Style="{StaticResource Advancement_Button}"/>
</Grid>
</Grid>-->
<!--Immagine macchina-->
<Grid Grid.Column="1"
Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="0.4*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.14*"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="1"
Source="{Binding sMachineImagePath}"
Stretch="Uniform"/>
</Grid>
<!--Intestazioni-->
<Grid Grid.Row="3"
@@ -503,25 +258,16 @@
<TextBlock Grid.Row="7"
Text="Door Presence"/>
</Grid>
<!--Immagine macchina-->
<Image Grid.Column="1"
Grid.Row="3"
Source="{Binding sMachineImagePath}"
Stretch="Uniform"/>
<!--TextBox variabili-->
<!--<Grid Grid.Column="1"
Grid.Row="3">-->
<Grid Grid.Column="1"
Grid.Row="3"
Visibility="{Binding VariableOnDraw_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3.8*"/>
Grid.Row="3"
Visibility="{Binding VariableOnDraw_Visibility}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.7*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.5*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="3.8*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1.7*"/>
@@ -533,7 +279,7 @@
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="0"
Grid.Row="1"
Text="{Binding VariableList[5].sValue}"
Text="{Binding VariableList[6].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="0"
Grid.Row="2"
@@ -544,7 +290,7 @@
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="1"
Grid.Row="1"
Text="{Binding VariableList[6].sValue}"
Text="{Binding VariableList[7].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="1"
Grid.Row="2"
@@ -555,134 +301,31 @@
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="2"
Grid.Row="1"
Text="{Binding VariableList[7].sValue}"
Text="{Binding VariableList[8].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="2"
Grid.Row="2"
Text="{Binding VariableList[2].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="3"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="3"
Grid.Row="1"
Text="{Binding VariableList[8].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="3"
Grid.Row="2"
Text="{Binding VariableList[3].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="4"
Grid.Row="1"
Style="{StaticResource Table}"/>
<StackPanel Grid.Column="4"
Grid.Row="1"
Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<TextBlock Text="{Binding VariableList[9].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Text="{Binding VariableList[29].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</StackPanel>
<StackPanel Grid.Column="4"
Grid.Row="2"
Orientation="Horizontal"
VerticalAlignment="Center"
HorizontalAlignment="Center">
<TextBlock Text="{Binding VariableList[4].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Text="{Binding VariableList[24].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</StackPanel>
<Border Grid.Column="5"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="5"
Grid.Row="1"
Text="{Binding VariableList[30].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="5"
Grid.Row="2"
Text="{Binding VariableList[25].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="6"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="6"
Grid.Row="1"
Text="{Binding VariableList[31].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="6"
Grid.Row="2"
Text="{Binding VariableList[26].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="7"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="7"
Grid.Row="1"
Text="{Binding VariableList[32].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="7"
Grid.Row="2"
Text="{Binding VariableList[27].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<Border Grid.Column="8"
Grid.Row="1"
Style="{StaticResource Table}"/>
<TextBlock Grid.Column="8"
Grid.Row="1"
Text="{Binding VariableList[33].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
<TextBlock Grid.Column="8"
Grid.Row="2"
Text="{Binding VariableList[28].sValue}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Grid>
<!--Sensori-->
<Grid Grid.Column="1"
Grid.Row="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.6*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.5*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.9*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="0.2*"/>
<ColumnDefinition Width="0.6*"/>
<ColumnDefinition Width="0.4*"/>
<ColumnDefinition Width="0.1*"/>
<ColumnDefinition Width="1.5*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1.7*"/>
@@ -690,49 +333,22 @@
<RowDefinition Height="1.7*"/>
</Grid.RowDefinitions>
<Ellipse Grid.Column="1"
Fill="{Binding VariableList[16].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Fill="{Binding VariableList[6].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="4"
Fill="{Binding VariableList[17].sValue, Converter={StaticResource StringToBackgroundConverter}}"
<Ellipse Grid.Column="3"
Fill="{Binding VariableList[7].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="5"
Fill="{Binding VariableList[8].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="7"
Fill="{Binding VariableList[18].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Fill="{Binding VariableList[9].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="9"
Fill="{Binding VariableList[19].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Fill="{Binding VariableList[10].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="11"
Fill="{Binding VariableList[20].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="13"
Fill="{Binding VariableList[21].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="16"
Fill="{Binding VariableList[22].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="19"
Fill="{Binding VariableList[23].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="22"
Fill="{Binding VariableList[41].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="25"
Fill="{Binding VariableList[42].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="27"
Fill="{Binding VariableList[43].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="29"
Fill="{Binding VariableList[44].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="31"
Fill="{Binding VariableList[45].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="34"
Fill="{Binding VariableList[46].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
<Ellipse Grid.Column="37"
Fill="{Binding VariableList[47].sValue, Converter={StaticResource StringToBackgroundConverter}}"
<Ellipse Grid.Column="12"
Fill="{Binding VariableList[11].sValue, Converter={StaticResource StringToBackgroundConverter}}"
Style="{StaticResource Sensor}"/>
</Grid>
<!--Porte-->
@@ -745,18 +361,6 @@
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.3*"/>
<ColumnDefinition Width="2.5*"/>
<ColumnDefinition Width="0.7*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
@@ -785,49 +389,6 @@
<TextBlock Text="{Binding DoorOnMachineArray[2].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="7"
Grid.Row="1"
Visibility="{Binding VariableList[3].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[3].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="9"
Grid.Row="1"
Visibility="{Binding VariableList[4].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[4].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="11"
Grid.Row="1"
Visibility="{Binding VariableList[25].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[5].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="13"
Grid.Row="1"
Visibility="{Binding VariableList[26].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[6].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="15"
Grid.Row="1"
Visibility="{Binding VariableList[27].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[7].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
<Border Grid.Column="17"
Grid.Row="1"
Visibility="{Binding VariableList[28].sValue, Converter={StaticResource StringToVisibilityConverter}}"
Style="{StaticResource Door}">
<TextBlock Text="{Binding DoorOnMachineArray[8].nId}"
Style="{StaticResource MachDrawVar_TextBlock}"/>
</Border>
</Grid>
<!--Descrizione porte-->
<ItemsControl Grid.Column="1"
@@ -835,7 +396,7 @@
ItemsSource="{Binding DoorOnMachineArray}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="9"/>
<UniformGrid Columns="3"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
@@ -957,150 +518,6 @@
</ItemsControl.ItemTemplate>
</ItemsControl>
</Grid>
<!--Bottoni macchina vecchi-->
<!--<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal">
<StackPanel>
<TextBlock Text="Presenza porta M1S0"/>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,2,980,0"
Width="30"/>
<Button Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,2,980,1"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M1S1"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1360/1,980->1,1,1361/1,981"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M1S2"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1361/1,981->1,1,1362/1,982"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M1S3"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1362/1,982->1,1,1363/1,983"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M1S4/M2S0"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1363/1,983->1,1,1364;2,1,1360/1,984;2,980"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Presenza porta M2S0"/>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,2,980,0"
Width="30"/>
<Button Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,2,980,1"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M2S1"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="1,1,1364;2,1,1360/1,984;2,980->2,1,1361/2,981"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M2S2"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1361/2,981->2,1,1362/2,982"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M2S3"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1362/2,982->2,1,1363/2,983"
Width="30"/>
</StackPanel>
<StackPanel>
<TextBlock Text="Avanza porta in M2S4"/>
<Button Content="0"
Command="{Binding MoveVariable_Command}"
CommandParameter="2,1,1363/2,983->2,1,1364/2,984"
Width="30"/>
</StackPanel>
</StackPanel>
<StackPanel Grid.Row="1"
Orientation="Horizontal">
<TextBlock Text="State M1"/>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,0"
Width="30"/>
<Button Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,1"
Width="30"/>
<Button Content="2"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,2"
Width="30"/>
<Button Content="3"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,3"
Width="30"/>
<Button Content="4"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,4"
Width="30"/>
<Button Content="5"
Command="{Binding WriteVariable_Command}"
CommandParameter="1,1,1352,5"
Width="30"/>
</StackPanel>
<StackPanel Grid.Row="2"
Orientation="Horizontal">
<TextBlock Text="State M2"/>
<Button Content="0"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,0"
Width="30"/>
<Button Content="1"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,1"
Width="30"/>
<Button Content="2"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,2"
Width="30"/>
<Button Content="3"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,3"
Width="30"/>
<Button Content="4"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,4"
Width="30"/>
<Button Content="5"
Command="{Binding WriteVariable_Command}"
CommandParameter="2,1,1352,5"
Width="30"/>
</StackPanel>
</Grid>-->
<!--Lista circolare porte-->
<Grid Grid.Row="2"
Visibility="{Binding DoorCircList_Visibility}">
@@ -4,7 +4,7 @@ Imports System.Globalization
Imports System.Reflection
Imports System.Windows.Threading
Imports Newtonsoft.Json.Linq
Imports Effector.Plugin.FiveLakes.Variable
Imports Effector.Plugin.DoorArreda.Variable
Imports Effector.Plugin.Interface
Public Class MachinePageVM
@@ -108,61 +108,50 @@ Public Class MachinePageVM
Sub New()
' imposto riferimento in Map
Map.SetRefMachinePageVM(Me)
m_VariableList = New ObservableCollection(Of Variable)({New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_00", "980", 1),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_01", "981", 1),
'm_VariableList = New ObservableCollection(Of Variable)({New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_00", "980", 1),
' New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_01", "981", 1),
' New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_02", "982", 1),
' New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_03", "983", 1),
' New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_04", "984", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S0", "1360", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S1", "1361", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S2", "1362", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S3", "1363", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S4", "1364", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@SENT_1", "1350", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@SENT_2", "1351", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@STATE", "1352", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@RESET_ON", "1365", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@MAST_OK", "1366", 1),
' New Variable(Variable.VariableTypes.INTEGER, "@START_OK", "1367", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF00", "901.0", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF01", "901.1", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF02", "901.2", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF03", "901.3", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF04", "901.4", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF05", "901.5", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF06", "901.6", 1),
' New Variable(Variable.VariableTypes.BOOLEAN, "@BF07", "901.7", 1)})
m_VariableList = New ObservableCollection(Of Variable)({New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_01", "981", 1),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_02", "982", 1),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_03", "983", 1),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_04", "984", 1),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S0", "1360", 1),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S1", "1361", 1),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S2", "1362", 1),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S3", "1363", 1),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S4", "1364", 1),
New Variable(Variable.VariableTypes.INTEGER, "@SENT_1", "1350", 1),
New Variable(Variable.VariableTypes.INTEGER, "@SENT_2", "1351", 1),
New Variable(Variable.VariableTypes.INTEGER, "@STATE", "1352", 1),
New Variable(Variable.VariableTypes.INTEGER, "@RESET_ON", "1365", 1),
New Variable(Variable.VariableTypes.INTEGER, "@MAST_OK", "1366", 1),
New Variable(Variable.VariableTypes.INTEGER, "@START_OK", "1367", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF00", "901.0", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF01", "901.1", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF02", "901.2", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF03", "901.3", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF04", "901.4", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF05", "901.5", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF06", "901.6", 1),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF07", "901.7", 1),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_00", "980", 2),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_01", "981", 2),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_02", "982", 2),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_03", "983", 2),
New Variable(Variable.VariableTypes.DOUBLE, "@WP_PR_04", "984", 2),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S0", "1360", 2),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S1", "1361", 2),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S2", "1362", 2),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S3", "1363", 2),
New Variable(Variable.VariableTypes.INTEGER, "@DOORN_S4", "1364", 2),
New Variable(Variable.VariableTypes.INTEGER, "@SENT_1", "1350", 2),
New Variable(Variable.VariableTypes.INTEGER, "@SENT_2", "1351", 2),
New Variable(Variable.VariableTypes.INTEGER, "@STATE", "1352", 2),
New Variable(Variable.VariableTypes.INTEGER, "@RESET_ON", "1365", 2),
New Variable(Variable.VariableTypes.INTEGER, "@MAST_OK", "1366", 2),
New Variable(Variable.VariableTypes.INTEGER, "@START_OK", "1367", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF00", "901.0", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF01", "901.1", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF02", "901.2", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF03", "901.3", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF04", "901.4", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF05", "901.5", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF06", "901.6", 2),
New Variable(Variable.VariableTypes.BOOLEAN, "@BF07", "901.7", 2)})
New Variable(Variable.VariableTypes.INTEGER, "@P1000_END", "1353", 1),
New Variable(Variable.VariableTypes.INTEGER, "@P2000_END", "1354", 1)})
AddHandler m_VarTimer.Tick, AddressOf VarTimer_Tick
m_VarTimer.Interval = New TimeSpan(100)
m_VarTimer.Start()
m_DoorOnMachineList.Add(New Door(35, 1, "Test.ddf", "Produzione2024", 1, 800, 1800, 40, {""}, {""}))
Dim sResourcesDirPath As String = ""
GetPluginPrivateProfileString(S_GENERAL, K_RESOURCESDIR, "", sResourcesDirPath)
m_sMachineImagePath = sResourcesDirPath & "\FiveLakesMachine.png"
m_sMachineImagePath = sResourcesDirPath & "\Machine.png"
' creo posti in lista descrizioni
For nIndex As Integer = 0 To 8
m_DoorOnMachineArray.Add(Nothing)
@@ -218,25 +207,6 @@ Public Class MachinePageVM
Map.refSupervisorFunction.ComWriteDoubleVar(nIndex, 2, Machine1Var.nMachine)
End If
Next
' se presente un sent
Dim Sent1Var As Variable = m_VariableList.FirstOrDefault(Function(x) x.sName = "@SENT_1" AndAlso x.nMachine = 2)
Dim Sent2Var As Variable = m_VariableList.FirstOrDefault(Function(x) x.sName = "@SENT_2" AndAlso x.nMachine = 2)
If Sent1Var.nValue = 1 OrElse Sent2Var.nValue = 1 Then
' aggiorno stato porta su rulliera intermedia da 2 a 1
For nMachineIndex = 1 To 2
Dim nMachineId As Integer = nMachineIndex
Dim sVariableName As String = "@WP_PR_04"
If nMachineIndex = 2 Then
sVariableName = "@WP_PR_00"
End If
Dim Machine1Var As Variable = m_VariableList.FirstOrDefault(Function(x) x.sName = sVariableName AndAlso x.nMachine = nMachineId)
If Not IsNothing(Machine1Var) AndAlso Machine1Var.dValue = 2 Then
Dim nIndex As Integer = -1
Integer.TryParse(Machine1Var.sIndex, nIndex)
Map.refSupervisorFunction.ComWriteDoubleVar(nIndex, 1, Machine1Var.nMachine)
End If
Next
End If
End If
' leggo stato calcolo da lua
Dim nState As Integer = -1
@@ -312,26 +282,6 @@ Public Class MachinePageVM
End If
End If
Next
'For nVarIndex As Integer = 0 To m_VariableList.Count - 1
' Dim Var As Variable = m_VariableList(nVarIndex)
' If nVarIndex >= 5 AndAlso nVarIndex <= 9 Then
' Dim nId As Integer = -1
' If Var.nValue > 0 Then
' m_DoorOnMachineArray(nVarIndex - 5) = m_LuaDoorList(Var.nValue - 1)
' Else
' m_DoorOnMachineArray(nVarIndex - 5) = Nothing
' End If
' End If
' If nVarIndex >= 30 AndAlso nVarIndex <= 33 Then
' Dim nId As Integer = -1
' If Var.nValue > 0 Then
' m_DoorOnMachineArray(nVarIndex - 25) = m_LuaDoorList(Var.nValue - 1)
' Else
' m_DoorOnMachineArray(nVarIndex - 25) = Nothing
' End If
' End If
'Next
NotifyPropertyChanged(NameOf(DoorOnMachineArray))
End Sub