-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChannelLabelImportWindow.xaml
More file actions
154 lines (147 loc) · 8.7 KB
/
Copy pathChannelLabelImportWindow.xaml
File metadata and controls
154 lines (147 loc) · 8.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<Window x:Class="DanteConfigEditor.ChannelLabelImportWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Importer des labels"
Width="1040"
Height="720"
MinWidth="900"
MinHeight="620"
WindowStartupLocation="CenterOwner">
<Grid Margin="16">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="260" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Border Padding="12" Background="#EEF4FF" BorderBrush="#B9D1F7" BorderThickness="1" CornerRadius="5">
<StackPanel>
<TextBlock x:Name="IntroTextBlock"
Text="Choisissez la liste source, les machines Dante cibles et la plage. Aucun XML n'est modifié avant Appliquer."
TextWrapping="Wrap" />
<TextBlock x:Name="SourceInfoTextBlock" Margin="0,5,0,0" Foreground="#475569" TextWrapping="Wrap" />
</StackPanel>
</Border>
<Grid Grid.Row="1" Margin="0,12,0,12">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1.05*" />
<ColumnDefinition Width="1.25*" />
<ColumnDefinition Width="1.1*" />
</Grid.ColumnDefinitions>
<GroupBox x:Name="SourceGroupBox" Header="Source" Margin="0,0,10,0" Padding="10">
<StackPanel>
<Label x:Name="SourceSetLabel" Content="Liste de labels" />
<ComboBox x:Name="SourceSetComboBox" SelectionChanged="SourceSetComboBox_SelectionChanged" />
<CheckBox x:Name="AutoMatchCheckBox"
Content="Associer automatiquement les listes aux machines de même nom"
Margin="0,12,0,0"
Checked="AutoMatchCheckBox_Changed"
Unchecked="AutoMatchCheckBox_Changed" />
</StackPanel>
</GroupBox>
<GroupBox x:Name="TargetsGroupBox" Grid.Column="1" Header="Machines Dante cibles" Margin="0,0,10,0" Padding="8">
<DataGrid x:Name="TargetDevicesGrid"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
HeadersVisibility="Column"
SelectionMode="Extended"
SelectionUnit="FullRow">
<DataGrid.Columns>
<DataGridTemplateColumn x:Name="UseTargetColumn" Header="Utiliser" Width="75">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Click="TargetDeviceCheckBox_Click" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn x:Name="TargetNameColumn" Header="Machine" Binding="{Binding Name}" IsReadOnly="True" Width="*" />
<DataGridTextColumn x:Name="TargetCountsColumn" Header="TX / RX" Binding="{Binding Counts}" IsReadOnly="True" Width="90" />
</DataGrid.Columns>
</DataGrid>
</GroupBox>
<GroupBox x:Name="MappingGroupBox" Grid.Column="2" Header="Correspondance" Padding="10">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<StackPanel Grid.ColumnSpan="2">
<Label x:Name="TargetKindLabel" Content="Type de canal Dante" />
<ComboBox x:Name="TargetKindComboBox" SelectionChanged="TargetKindComboBox_SelectionChanged">
<ComboBoxItem Content="TX" Tag="tx" />
<ComboBoxItem Content="RX" Tag="rx" />
</ComboBox>
</StackPanel>
<StackPanel Grid.Row="1" Margin="0,6,6,0">
<Label x:Name="SourceStartLabel" Content="Premier canal source" />
<TextBox x:Name="SourceStartTextBox" Text="1" />
</StackPanel>
<StackPanel Grid.Row="1" Grid.Column="1" Margin="6,6,0,0">
<Label x:Name="TargetStartLabel" Content="Premier canal Dante" />
<TextBox x:Name="TargetStartTextBox" Text="1" />
</StackPanel>
<StackPanel Grid.Row="2" Grid.ColumnSpan="2" Margin="0,6,0,0">
<Label x:Name="CountLabel" Content="Nombre de canaux" />
<TextBox x:Name="CountTextBox" Text="1" />
</StackPanel>
<Button x:Name="PreviewButton"
Grid.Row="3"
Grid.ColumnSpan="2"
Margin="0,12,0,0"
Padding="10,7"
Content="Prévisualiser"
ToolTip="Construit la liste des renommages sans modifier le XML."
Click="PreviewButton_Click" />
</Grid>
</GroupBox>
</Grid>
<GroupBox x:Name="PreviewGroupBox" Grid.Row="2" Header="Prévisualisation" Padding="8">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<TextBlock x:Name="PreviewSummaryTextBlock"
Text="Prévisualisez le transfert pour vérifier chaque correspondance."
Margin="0,0,0,8"
TextWrapping="Wrap" />
<DataGrid x:Name="PreviewGrid"
Grid.Row="1"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
IsReadOnly="True">
<DataGrid.Columns>
<DataGridTextColumn x:Name="PreviewSourceDeviceColumn" Header="Source" Binding="{Binding SourceDevice}" Width="1.15*" />
<DataGridTextColumn x:Name="PreviewSourceChannelColumn" Header="Canal source" Binding="{Binding SourceChannel}" Width="90" />
<DataGridTextColumn x:Name="PreviewTargetDeviceColumn" Header="Machine Dante" Binding="{Binding TargetDevice}" Width="1.15*" />
<DataGridTextColumn x:Name="PreviewTargetChannelColumn" Header="Canal Dante" Binding="{Binding TargetDanteId}" Width="90" />
<DataGridTextColumn x:Name="PreviewBeforeColumn" Header="Avant" Binding="{Binding CurrentLabel}" Width="1.2*" />
<DataGridTextColumn x:Name="PreviewAfterColumn" Header="Après" Binding="{Binding NewLabel}" Width="1.2*" />
<DataGridTextColumn x:Name="PreviewStatusColumn" Header="État" Binding="{Binding StatusDisplay}" Width="110" />
</DataGrid.Columns>
</DataGrid>
</Grid>
</GroupBox>
<DockPanel Grid.Row="3" Margin="0,14,0,0">
<TextBlock x:Name="SafetyTextBlock"
Text="Les renommages TX mettront à jour les subscriptions reconnues."
VerticalAlignment="Center"
Foreground="#475569" />
<StackPanel DockPanel.Dock="Right" Orientation="Horizontal" HorizontalAlignment="Right">
<Button x:Name="CancelButton" Content="Annuler" MinWidth="100" Margin="0,0,8,0" IsCancel="True" />
<Button x:Name="ApplyButton" Content="Appliquer" MinWidth="120" IsDefault="True" IsEnabled="False" Click="ApplyButton_Click" />
</StackPanel>
</DockPanel>
</Grid>
</Window>