aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/ViewModelLocator.cs
blob: 0473fd028e3a4c720cd82b51efdb6526fb553d28 (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
using Tango.Core.DI;
using Tango.MachineStudio.UsersAndRoles.Navigation;
using Tango.MachineStudio.UsersAndRoles.ViewModels;

namespace Tango.MachineStudio.UsersAndRoles
{
    /// <summary>
    /// This class contains static references to all the view models in the
    /// application and provides an entry point for the bindings.
    /// </summary>
    public static class ViewModelLocator
    {
        /// <summary>
        /// Initializes a new instance of the ViewModelLocator class.
        /// </summary>
        static ViewModelLocator()
        {
            TangoIOC.Default.Register<MainViewVM>();

            TangoIOC.Default.Unregister<UsersAndRolesNavigationManager>();
            TangoIOC.Default.Register<UsersAndRolesNavigationManager>(new UsersAndRolesNavigationManager());
        }

        public static MainViewVM MainViewVM
        {
            get
            {
                return TangoIOC.Default.GetInstance<MainViewVM>();
            }
        }
    }
}
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 0 0 0" VerticalAlignment="Center"> <TextBlock Text="{Binding Message}" TextTrimming="CharacterEllipsis" TextWrapping="Wrap" Foreground="Black" VerticalAlignment="Center" ></TextBlock> <Canvas Margin="0 5 0 0"> <TextBlock Foreground="{StaticResource TangoDarkForegroundBrush}" Text="{Binding ExpandedMessage}" 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> </Canvas> </StackPanel> </DockPanel> </ContentControl> </Grid> </UserControl>