aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.Common/Navigation/INavigationResultProvider.cs
blob: dee037432d0a445644baf700b07a64c8c3eb01ba (plain)
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.MachineStudio.Common.Navigation
{
    /// <summary>
    /// Represents a object which provides a result the navigation system navigates away from it.
    /// </summary>
    /// <typeparam name="TResult">The type of the result.</typeparam>
    /// <typeparam name="TPass">The type of the pass.</typeparam>
    public interface INavigationResultProvider<TResult, TPass>
    {
        /// <summary>
        /// Called when the navigation system requests a result when it is navigating away from this instance.
        /// </summary>
        /// <returns></returns>
        TResult GetNavigationResult();

        /// <summary>
        /// Called when navigation system is going to navigate to this instance with the specified object.
        /// </summary>
        /// <param name="obj">The object.</param>
        void OnNavigationObjectReceived(TPass obj);
    }
}
ext="{d:DesignInstance Type=vm:EventDetailsViewVM, IsDesignTimeCreatable=False}" Foreground="{StaticResource MainWindow.Foreground}"> <UserControl.Resources> <converters:DateTimeUTCToStringConverter x:Key="DateTimeUTCToStringConverter" /> </UserControl.Resources> <Grid> <Grid Grid.RowSpan="2"> <Grid.RowDefinitions> <RowDefinition Height="60"/> <RowDefinition Height="31*"/> <RowDefinition Height="50"/> </Grid.RowDefinitions> <StackPanel Orientation="Horizontal"> <materialDesign:PackIcon Width="42" Height="42" VerticalAlignment="Center"> <materialDesign:PackIcon.Style> <Style TargetType="materialDesign:PackIcon"> <Setter Property="Kind" Value="Alert"></Setter> <Style.Triggers> <DataTrigger Binding="{Binding Event.Category}" Value="Info"> <Setter Property="Kind" Value="Information"></Setter> <Setter Property="Foreground" Value="{StaticResource DimGrayBrush}"></Setter> </DataTrigger> <DataTrigger Binding="{Binding Event.Category}" Value="Warning"> <Setter Property="Kind" Value="Alert"></Setter> <Setter Property="Foreground" Value="{StaticResource OrangeBrush}"></Setter> </DataTrigger> <DataTrigger Binding="{Binding Event.Category}" Value="Error"> <Setter Property="Kind" Value="AlertOctagon"></Setter> <Setter Property="Foreground" Value="{StaticResource RedBrush100}"></Setter> </DataTrigger> <DataTrigger Binding="{Binding Event.Category}" Value="Critical"> <Setter Property="Kind" Value="BellPlus"></Setter> <Setter Property="Foreground" Value="Red"></Setter> </DataTrigger> <DataTrigger Binding="{Binding Event.Type}" Value="ApplicationStarted"> <Setter Property="Kind" Value="ClockFast"></Setter> <Setter Property="Foreground" Value="White"></Setter> </DataTrigger> </Style.Triggers> </Style> </materialDesign:PackIcon.Style> </materialDesign:PackIcon> <TextBlock VerticalAlignment="Center" Text="{Binding Event.EventType.Title}" Margin="10 0 0 0" FontSize="16"></TextBlock> </StackPanel> <Grid Grid.Row="1"> <DockPanel> <UniformGrid Columns="2" DockPanel.Dock="Top"> <controls:TableGrid RowHeight="30"> <TextBlock Text="Date:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.DateTime,Converter={StaticResource DateTimeUTCToStringConverter},ConverterParameter='MM/dd/yyyy HH:mm:ss.fff'}"></TextBlock> <TextBlock Text="Host Name:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.HostName}"></TextBlock> <TextBlock Text="Machine:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.Machine.SerialNumber}"></TextBlock> <TextBlock Text="User:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.EventUser.Contact.FullName}"></TextBlock> </controls:TableGrid> <controls:TableGrid RowHeight="30"> <TextBlock Text="Category:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.EventType.Category}"></TextBlock> <TextBlock Text="Group:" FontWeight="SemiBold" /> <TextBlock Text="{Binding Event.EventType.Group}"></TextBlock> </controls:TableGrid> </UniformGrid> <Border Padding="5" BorderThickness="1" BorderBrush="{StaticResource BorderBrushGainsboro}"> <TextBox BorderThickness="0" Text="{Binding Event.Description}" Style="{x:Null}" TextWrapping="Wrap" IsReadOnly="True" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto" Background="Transparent" /> </Border> </DockPanel> </Grid> <Grid Grid.Row="2"> <Button HorizontalAlignment="Right" Width="140" Command="{Binding CloseCommand}">CLOSE</Button> </Grid> </Grid> </Grid> </UserControl>