aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.Touch/Controls/TouchStaticListBoxItem.cs
blob: ff956ab6ffaf114bee2a44e04addb4a8ee1ed046 (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
<UserControl x:Class="Tango.PPC.Events.Views.MainView"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:vm="clr-namespace:Tango.PPC.Events.ViewModels"
             xmlns:global="clr-namespace:Tango.PPC.Events"
             xmlns:enumerations="clr-namespace:Tango.PPC.Events.Enumerations"
             xmlns:touch="clr-namespace:Tango.Touch.Controls;assembly=Tango.Touch"
             xmlns:local="clr-namespace:Tango.PPC.Events.Views"
             mc:Ignorable="d" 
             d:DesignHeight="1280" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=vm:MainViewVM, IsDesignTimeCreatable=False}" DataContext="{x:Static global:ViewModelLocator.MainViewVM}">

    <UserControl.Resources>

        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <ResourceDictionary Source="../Resources/Styles.xaml" />
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>
    </UserControl.Resources>

    <Grid Background="{StaticResource TangoMidBackgroundBrush}">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="1*"/>
        </Grid.RowDefinitions>

        <Border Padding="20" Background="{StaticResource TangoPrimaryBackgroundBrush}" BorderThickness="0 0 0 1" BorderBrush="{StaticResource TangoDividerBrush}">
            <Border.Effect>
                <DropShadowEffect Color="Silver" ShadowDepth="0" BlurRadius="20" Opacity="1" />
            </Border.Effect>
            <TextBlock VerticalAlignment="Center" FontSize="{StaticResource TangoHeaderFontSize}" FontWeight="SemiBold">Events</TextBlock>
        </Border>

        <Grid Grid.Row="1">
            <DockPanel>

                <touch:TouchNavigationLinks ItemsSource="{Binding Source={x:Type enumerations:EventsSource},Converter={StaticResource EnumToItemsSourceConverter}}" SelectedValue="{Binding SelectedEventsSource}" SelectedValuePath="Value" DisplayMemberPath="DisplayName" DockPanel.Dock="Top" VerticalAlignment="Bottom" Margin="20" FontSize="{StaticResource TangoNavigationLinksFontSize}"></touch:TouchNavigationLinks>

                <Grid>
                    <Grid>
                        <Grid.Style>
                            <Style TargetType="Grid">
                                <Setter Property="Visibility" Value="Hidden"></Setter>
                                <Style.Triggers>
                                    <DataTrigger Binding="{Binding SelectedEventsSource}" Value="CURRENT">
                                        <Setter Property="Visibility" Value="Visible"></Setter>
                                    </DataTrigger>
                                </Style.Triggers>
                            </Style>
                        </Grid.Style>
                        <touch:LightTouchDataGrid SelectionChanged="dataGridEvent_SelectionChanged" RenderOptions.EdgeMode="Unspecified" SelectionMode="Single" EnableDragAndDrop="False" Style="{StaticResource TangoEventsGrid}" x:Name="dataGridEvent" ItemsSource="{Binding CurrentEvents}" SelectedItem="{Binding SelectedEvent,Mode=TwoWay}" Margin="10">
                            <touch:LightTouchDataGrid.Columns>
                                <touch:LightTouchDataGridColumn Width="120" Header="Severity" HorizontalContentAlignment="Center" SortMember="Category">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <touch:TouchIcon Width="32" Height="32" IsHitTestVisible="False">
                                                <touch:TouchIcon.Style>
                                                    <Style TargetType="touch:TouchIcon">
                                                        <Setter Property="Icon" Value="CheckCircleOutline"/>
                                                        <Setter Property="Foreground" Value="{StaticResource TangoSuccessBrush}"/>
                                                        <Style.Triggers>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Warning">
                                                                <Setter Property="Icon" Value="AlertCircleOutline"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoWarningBrush}"/>
                                                            </DataTrigger>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Error">
                                                                <Setter Property="Icon" Value="AlertCircleOutline"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"/>
                                                            </DataTrigger>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Critical">
                                                                <Setter Property="Icon" Value="Alert"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"/>
                                                            </DataTrigger>
                                                        </Style.Triggers>
                                                    </Style>
                                                </touch:TouchIcon.Style>
                                            </touch:TouchIcon>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="1*" Header="Title" SortMember="Name" HorizontalContentAlignment="Left">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False" Text="{Binding EventType,Converter={StaticResource EventTypeTitleConverter},FallbackValue='Unknown Event'}"></TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="100" Header="# Error Code." SortMember="Code" HorizontalContentAlignment="Center">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False">
                                    <Run>#</Run><Run Text="{Binding Code,Mode=OneWay}"></Run>
                                            </TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="200" Header="Date &amp; Time" SortMember="DateTime">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False" Text="{Binding DateTime,Converter={StaticResource DateTimeUTCToStringConverter},ConverterParameter=g}"></TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="50" HorizontalContentAlignment="Center">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <touch:TouchIcon Width="24" Height="24">
                                                <touch:TouchIcon.Style>
                                                    <Style TargetType="touch:TouchIcon">
                                                        <Setter Property="Icon" Value="ChevronRight"></Setter>
                                                        <Style.Triggers>
                                                            <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=touch:LightTouchDataGridRow},Path=IsSelected}" Value="True">
                                                                <Setter Property="Icon" Value="ChevronDown"></Setter>
                                                            </DataTrigger>
                                                        </Style.Triggers>
                                                    </Style>
                                                </touch:TouchIcon.Style>
                                            </touch:TouchIcon>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                            </touch:LightTouchDataGrid.Columns>
                        </touch:LightTouchDataGrid>
                    </Grid>
                    <Grid>
                        <Grid.Style>
                            <Style TargetType="Grid">
                                <Setter Property="Visibility" Value="Hidden"></Setter>
                                <Style.Triggers>
                                    <DataTrigger Binding="{Binding SelectedEventsSource}" Value="HISTORY">
                                        <Setter Property="Visibility" Value="Visible"></Setter>
                                    </DataTrigger>
                                </Style.Triggers>
                            </Style>
                        </Grid.Style>
                        <touch:LightTouchDataGrid x:Name="gridEventsHistory" SelectionChanged="gridEventsHistory_SelectionChanged" RenderOptions.EdgeMode="Unspecified" SelectionMode="Single" EnableDragAndDrop="False" Style="{StaticResource TangoEventsGrid}" ItemsSource="{Binding HistoryEvents}" SelectedItem="{Binding SelectedHistoryEvent,Mode=TwoWay}" Margin="10">
                            <touch:LightTouchDataGrid.Columns>
                                <touch:LightTouchDataGridColumn Width="120" Header="Severity" HorizontalContentAlignment="Center" SortMember="Category">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <touch:TouchIcon Width="32" Height="32" IsHitTestVisible="False">
                                                <touch:TouchIcon.Style>
                                                    <Style TargetType="touch:TouchIcon">
                                                        <Setter Property="Icon" Value="Information"/>
                                                        <Setter Property="Foreground" Value="{StaticResource TangoDarkForegroundBrush}"/>
                                                        <Style.Triggers>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Warning">
                                                                <Setter Property="Icon" Value="AlertCircleOutline"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoWarningBrush}"/>
                                                            </DataTrigger>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Error">
                                                                <Setter Property="Icon" Value="AlertCircleOutline"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"/>
                                                            </DataTrigger>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Critical">
                                                                <Setter Property="Icon" Value="Alert"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"/>
                                                            </DataTrigger>
                                                            <DataTrigger Binding="{Binding Category,Mode=OneWay}" Value="Success">
                                                                <Setter Property="Icon" Value="CheckCircleOutline"/>
                                                                <Setter Property="Foreground" Value="{StaticResource TangoSuccessBrush}"/>
                                                            </DataTrigger>
                                                        </Style.Triggers>
                                                    </Style>
                                                </touch:TouchIcon.Style>
                                            </touch:TouchIcon>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="1*" Header="Title" SortMember="Name" HorizontalContentAlignment="Left">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False" Text="{Binding EventType.Title,Mode=OneWay}"></TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="100" Header="# Error Code." SortMember="Code" HorizontalContentAlignment="Center">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False">
                                    <Run>#</Run><Run Text="{Binding Code,Mode=OneWay}"></Run>
                                            </TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="200" Header="Date &amp; Time" SortMember="DateTime">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <TextBlock IsHitTestVisible="False" Text="{Binding DateTime,Converter={StaticResource DateTimeUTCToStringConverter},ConverterParameter=g}"></TextBlock>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                                <touch:LightTouchDataGridColumn Width="50" HorizontalContentAlignment="Center">
                                    <touch:LightTouchDataGridColumn.CellTemplate>
                                        <DataTemplate>
                                            <touch:TouchIcon Width="24" Height="24">
                                                <touch:TouchIcon.Style>
                                                    <Style TargetType="touch:TouchIcon">
                                                        <Setter Property="Icon" Value="ChevronRight"></Setter>
                                                        <Style.Triggers>
                                                            <DataTrigger Binding="{Binding RelativeSource={RelativeSource AncestorType=touch:LightTouchDataGridRow},Path=IsSelected}" Value="True">
                                                                <Setter Property="Icon" Value="ChevronDown"></Setter>
                                                            </DataTrigger>
                                                        </Style.Triggers>
                                                    </Style>
                                                </touch:TouchIcon.Style>
                                            </touch:TouchIcon>
                                        </DataTemplate>
                                    </touch:LightTouchDataGridColumn.CellTemplate>
                                </touch:LightTouchDataGridColumn>
                            </touch:LightTouchDataGrid.Columns>
                        </touch:LightTouchDataGrid>
                    </Grid>
                </Grid>
            </DockPanel>
        </Grid>
    </Grid>
</UserControl>