-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathIpConnectWizardWindow.xaml
More file actions
54 lines (54 loc) · 4.12 KB
/
IpConnectWizardWindow.xaml
File metadata and controls
54 lines (54 loc) · 4.12 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
<Window x:Class="Ari61850Bridge.IpConnectWizardWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="IP Connect IED" Height="430" Width="680"
WindowStartupLocation="CenterOwner" ResizeMode="NoResize"
Background="{StaticResource Bg}" FontFamily="Aptos, Segoe UI Variable Text, Segoe UI, Calibri" Icon="Assets/app-icon.ico">
<Grid Margin="22">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Margin="0,0,0,18">
<TextBlock Text="IP-only IEC 61850 discovery" FontSize="24" FontWeight="SemiBold" Foreground="{StaticResource Ink}"/>
<TextBlock Text="Enter actual relay endpoint. ArServer will scan the online MMS model, recommend SCADA-ready logical nodes, then open the signal/binding wizard." FontSize="13" Foreground="{StaticResource Muted}" TextWrapping="Wrap" Margin="0,5,0,0"/>
</StackPanel>
<Border Grid.Row="1" Style="{StaticResource Card}" Padding="20">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="14"/>
<ColumnDefinition Width="130"/>
</Grid.ColumnDefinitions>
<StackPanel Grid.Row="0" Grid.Column="0">
<TextBlock Text="IED Runtime IP Address" FontSize="12.5" FontWeight="SemiBold" Foreground="{StaticResource Ink}" Margin="0,0,0,6"/>
<TextBox x:Name="RelayIpBox" Text="{Binding RelayIpAddress, RelativeSource={RelativeSource AncestorType=Window}, UpdateSourceTrigger=PropertyChanged}"/>
</StackPanel>
<StackPanel Grid.Row="0" Grid.Column="2">
<TextBlock Text="MMS Port" FontSize="12.5" FontWeight="SemiBold" Foreground="{StaticResource Ink}" Margin="0,0,0,6"/>
<TextBox Text="{Binding MmsPort, RelativeSource={RelativeSource AncestorType=Window}, UpdateSourceTrigger=PropertyChanged}"/>
</StackPanel>
<CheckBox Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" Content="Use real IEC 61850 MMS engine if available" IsChecked="{Binding UseRealIecEngine, RelativeSource={RelativeSource AncestorType=Window}, UpdateSourceTrigger=PropertyChanged}" Margin="0,18,0,0"/>
<TextBlock x:Name="WizardStatusText" Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="3" Text="" FontSize="12.5" FontWeight="SemiBold" Foreground="#E04F16" Margin="0,12,0,0"/>
<Border Grid.Row="3" Grid.Column="0" Grid.ColumnSpan="3" Background="#F8FAFC" BorderBrush="#E5EAF3" BorderThickness="1" CornerRadius="16" Padding="14" Margin="0,18,0,0">
<TextBlock Text="Flow: IP → MMS GetServerDirectory/GetLogicalDeviceDirectory/GetLogicalNodeDirectory → auto-select important LN/DO/DA → Modbus binding → save to runtime → Start Runtime for polling." TextWrapping="Wrap" FontSize="12.5" Foreground="{StaticResource Muted}"/>
</Border>
</Grid>
</Border>
<Grid Grid.Row="2" Margin="0,16,0,0">
<Grid.ColumnDefinitions><ColumnDefinition Width="*"/><ColumnDefinition Width="Auto"/></Grid.ColumnDefinitions>
<TextBlock Text="Failed IPs are not saved to history." Foreground="{StaticResource Muted}" FontSize="12.2" VerticalAlignment="Center"/>
<StackPanel Grid.Column="1" Orientation="Horizontal">
<Button Content="Cancel" Style="{StaticResource SoftButton}" Click="Cancel_Click" Margin="0,0,8,0"/>
<Button Content="Connect & Discover" Style="{StaticResource PrimaryButton}" Click="Connect_Click"/>
</StackPanel>
</Grid>
</Grid>
</Window>