aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/Notifications/NotificationItems/MessageNotificationItemView.xaml
blob: cab40e50e48fac89b4e9a1e07052e7d9c5f23d10 (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
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
<UserControl x:Class="Tango.PPC.Common.Notifications.NotificationItems.MessageNotificationItemView"
             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:touch="clr-namespace:Tango.Touch.Controls;assembly=Tango.Touch"
             xmlns:local="clr-namespace:Tango.PPC.Common.Notifications.NotificationItems"
             xmlns:common="clr-namespace:Tango.PPC.Common.Converters"
             mc:Ignorable="d" 
             x:Name="MessageNotificationItemControl"
             d:DesignHeight="60" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=local:MessageNotificationItem, IsDesignTimeCreatable=False}" MinHeight="90" Height="90" MaxHeight="150" Background="White">

    <UserControl.Resources>
        <common:HeightToOpacityConverter x:Key="heightToOpacityConverter" />
    </UserControl.Resources>
    <Grid>
        <Border BorderThickness="0 0 0 2">
            <Border.Style>
                <Style TargetType="Border">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding MessageType}" Value="Info">
                            <Setter Property="Background">
                                <Setter.Value>
                                    <SolidColorBrush Color="{StaticResource TangoPrimaryAccentColor}" Opacity="0.2"></SolidColorBrush>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="BorderBrush" Value="{StaticResource TangoPrimaryAccentBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Success">
                            <Setter Property="Background">
                                <Setter.Value>
                                    <SolidColorBrush Color="{StaticResource TangoSuccessColor}" Opacity="0.2"></SolidColorBrush>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="BorderBrush" Value="{StaticResource TangoSuccessBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Warning">
                            <Setter Property="Background">
                                <Setter.Value>
                                    <SolidColorBrush Color="{StaticResource TangoWarningColor}" Opacity="0.2"></SolidColorBrush>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="BorderBrush" Value="{StaticResource TangoWarningBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Error">
                            <Setter Property="Background">
                                <Setter.Value>
                                    <SolidColorBrush Color="{StaticResource TangoErrorColor}" Opacity="0.2"></SolidColorBrush>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="BorderBrush" Value="{StaticResource TangoErrorBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Critical">
                            <Setter Property="Background">
                                <Setter.Value>
                                    <SolidColorBrush Color="{StaticResource TangoErrorColor}" Opacity="0.2"></SolidColorBrush>
                                </Setter.Value>
                            </Setter>
                            <Setter Property="BorderBrush" Value="{StaticResource TangoErrorBrush}"></Setter>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </Border.Style>
        </Border>
        <ContentControl>
            <ContentControl.Style>
                <Style TargetType="ContentControl">
                    <Setter Property="Foreground" Value="{StaticResource TangoLightForegroundBrush}"></Setter>
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding MessageType}" Value="Info">
                            <Setter Property="Foreground" Value="{StaticResource TangoLightForegroundBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Success">
                            <Setter Property="Foreground" Value="{StaticResource TangoSuccessBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Warning">
                            <Setter Property="Foreground" Value="{StaticResource TangoWarningBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Error">
                            <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"></Setter>
                        </DataTrigger>
                        <DataTrigger Binding="{Binding MessageType}" Value="Critical">
                            <Setter Property="Foreground" Value="{StaticResource TangoErrorBrush}"></Setter>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </ContentControl.Style>
            <DockPanel>
                <touch:TouchIcon Margin="15" DockPanel.Dock="Left" MaxHeight="40">
                    <touch:TouchIcon.Style>
                        <Style TargetType="touch:TouchIcon">
                            <Setter Property="Icon" Value="Information"></Setter>
                            <Style.Triggers>
                                <DataTrigger Binding="{Binding MessageType}" Value="Info">
                                    <Setter Property="Icon" Value="Information"></Setter>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding MessageType}" Value="Success">
                                    <Setter Property="Icon" Value="Check"></Setter>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding MessageType}" Value="Warning">
                                    <Setter Property="Icon" Value="AlertCircleOutline"></Setter>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding MessageType}" Value="Error">
                                    <Setter Property="Icon" Value="AlertCircleOutline"></Setter>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding MessageType}" Value="Critical">
                                    <Setter Property="Icon" Value="Alert"></Setter>
                                </DataTrigger>
                            </Style.Triggers>
                        </Style>
                    </touch:TouchIcon.Style>
                </touch:TouchIcon>

                <StackPanel Margin="10 5 40 5" VerticalAlignment="Center">
                    <TextBlock Text="{Binding Message}" TextTrimming="CharacterEllipsis" TextWrapping="Wrap" Foreground="Black" VerticalAlignment="Center" ></TextBlock>

                    
                        <TextBlock Margin="0 5 0 0" Foreground="{StaticResource TangoDarkForegroundBrush}" Text="{Binding ExpandedMessage}" FontSize="{StaticResource TangoSmallFontSize}" TextWrapping="Wrap" VerticalAlignment="Center" >
                            <!--<TextBlock.Opacity>
                                <MultiBinding Converter="{StaticResource heightToOpacityConverter}">
                                    <Binding Path="ActualHeight" ElementName="MessageNotificationItemControl" />
                                    <Binding Path="MinHeight" ElementName="MessageNotificationItemControl" />
                                    <Binding Path="MaxHeight" ElementName="MessageNotificationItemControl" />
                                </MultiBinding>
                            </TextBlock.Opacity>-->
                        </TextBlock>
                    
                </StackPanel>
            </DockPanel>
        </ContentControl>
    </Grid>
</UserControl>