diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-02-14 19:14:06 +0200 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-02-14 19:14:06 +0200 |
| commit | b7b277736c7e3ec9258915cdd5a54e7b33ba1123 (patch) | |
| tree | 57e83d678e2221083b73a5289b506773868e1c63 /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI | |
| parent | 2dfa224ed624075752defff77ef96961ec766bff (diff) | |
| download | Tango-b7b277736c7e3ec9258915cdd5a54e7b33ba1123.tar.gz Tango-b7b277736c7e3ec9258915cdd5a54e7b33ba1123.zip | |
Working on Data Capture Module.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI')
4 files changed, 83 insertions, 18 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Notifications/DefaultNotificationProvider.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Notifications/DefaultNotificationProvider.cs index 31fb4b1e0..1ea22c587 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Notifications/DefaultNotificationProvider.cs +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Notifications/DefaultNotificationProvider.cs @@ -31,6 +31,11 @@ namespace Tango.MachineStudio.UI.Notifications public ObservableCollection<TaskItem> TaskItems { get; private set; } /// <summary> + /// Gets the collection of active bar items. + /// </summary> + public ObservableCollection<BarItem> BarItems { get; private set; } + + /// <summary> /// Gets a value indicating whether there are any queued task items. /// </summary> public bool HasTaskItems @@ -58,6 +63,7 @@ namespace Tango.MachineStudio.UI.Notifications public DefaultNotificationProvider() { TaskItems = new ObservableCollection<TaskItem>(); + BarItems = new ObservableCollection<BarItem>(); } /// <summary> @@ -290,6 +296,39 @@ namespace Tango.MachineStudio.UI.Notifications } /// <summary> + /// Pushes the specified bar item. + /// </summary> + /// <param name="barItem">The bar item.</param> + /// <returns></returns> + public BarItem PushBarItem(BarItem barItem) + { + BarItems.Add(barItem); + return barItem; + } + + /// <summary> + /// Creates and push a new bar item from the specified framework element. + /// </summary> + /// <param name="element">The element.</param> + /// <returns></returns> + public BarItem PushBarItem(FrameworkElement element) + { + BarItem item = new BarItem(this); + item.Element = element; + PushBarItem(item); + return item; + } + + /// <summary> + /// Removed the specified bar item. + /// </summary> + /// <param name="barItem">The bar item.</param> + public void PopBarItem(BarItem barItem) + { + BarItems.Remove(barItem); + } + + /// <summary> /// Shows a dialog with a text input field and returns the response. /// </summary> /// <param name="message">The message.</param> diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Tango.MachineStudio.UI.csproj b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Tango.MachineStudio.UI.csproj index 4569d1439..f48561e40 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Tango.MachineStudio.UI.csproj +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Tango.MachineStudio.UI.csproj @@ -292,6 +292,10 @@ <Project>{74e700b0-1156-4126-be40-ee450d3c3026}</Project> <Name>Tango.Transport</Name> </ProjectReference> + <ProjectReference Include="..\Modules\Tango.MachineStudio.DataCapture\Tango.MachineStudio.DataCapture.csproj"> + <Project>{fc337a7f-1214-41d8-9992-78092a3b961e}</Project> + <Name>Tango.MachineStudio.DataCapture</Name> + </ProjectReference> <ProjectReference Include="..\Modules\Tango.MachineStudio.DB\Tango.MachineStudio.DB.csproj"> <Project>{94f7acf8-55e1-4a02-b9bc-a818413fdbbf}</Project> <Name>Tango.MachineStudio.DB</Name> diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModelLocator.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModelLocator.cs index 7ee3d50d5..1907074c0 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModelLocator.cs +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModelLocator.cs @@ -5,6 +5,7 @@ using System; using Tango.Integration.Services; using Tango.Logging; using Tango.MachineStudio.Common.Authentication; +using Tango.MachineStudio.Common.Diagnostics; using Tango.MachineStudio.Common.Modules; using Tango.MachineStudio.Common.Navigation; using Tango.MachineStudio.Common.Notifications; @@ -53,6 +54,7 @@ namespace Tango.MachineStudio.UI SimpleIoc.Default.Unregister<IStudioApplicationManager>(); SimpleIoc.Default.Unregister<ExternalBridgeScanner>(); SimpleIoc.Default.Unregister<IVideoCaptureProvider>(); + SimpleIoc.Default.Unregister<IDiagnosticsFrameProvider>(); SimpleIoc.Default.Register<INotificationProvider, DefaultNotificationProvider>(); SimpleIoc.Default.Register<IAuthenticationProvider, DefaultAuthenticationProvider>(); @@ -61,6 +63,7 @@ namespace Tango.MachineStudio.UI SimpleIoc.Default.Register<IStudioApplicationManager, DefaultStudioApplicationManager>(); SimpleIoc.Default.Register<ExternalBridgeScanner, ExternalBridgeScanner>(); SimpleIoc.Default.Register<IVideoCaptureProvider, DefaultVideoCaptureProvider>(); + SimpleIoc.Default.Register<IDiagnosticsFrameProvider, DefaultDiagnosticsFrameProvider>(); SimpleIoc.Default.Register<MainViewVM>(); SimpleIoc.Default.Register<LoadingViewVM>(); diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/MainView.xaml b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/MainView.xaml index 7fe900dff..479052cc5 100644 --- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/MainView.xaml +++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/Views/MainView.xaml @@ -18,7 +18,7 @@ <UserControl.Resources> <converters:StringEllipsisConverter x:Key="StringEllipsisConverter" /> </UserControl.Resources> - + <Grid> <Grid.Style> <Style TargetType="Grid"> @@ -131,8 +131,23 @@ </StackPanel> <Grid HorizontalAlignment="Right"> - <StackPanel Orientation="Horizontal"> - <Button Margin="10 0 0 0" Style="{StaticResource MaterialDesignFlatButton}" FontSize="12" ToolTip="Connect to machine on the local network" BorderThickness="0" Command="{Binding ConnectCommand}"> + <StackPanel Orientation="Horizontal" VerticalAlignment="Center"> + <Grid Margin="0 0 20 0"> + <ItemsControl ItemsSource="{Binding NotificationProvider.BarItems}"> + <ItemsControl.ItemsPanel> + <ItemsPanelTemplate> + <StackPanel Orientation="Horizontal" IsItemsHost="True" VerticalAlignment="Center"></StackPanel> + </ItemsPanelTemplate> + </ItemsControl.ItemsPanel> + <ItemsControl.ItemTemplate> + <DataTemplate> + <ContentControl Margin="0 0 10 0" Content="{Binding Element}" VerticalAlignment="Center"></ContentControl> + </DataTemplate> + </ItemsControl.ItemTemplate> + </ItemsControl> + </Grid> + + <Button VerticalAlignment="Center" Margin="10 0 0 0" Style="{StaticResource MaterialDesignFlatButton}" FontSize="12" ToolTip="Connect to machine on the local network" BorderThickness="0" Command="{Binding ConnectCommand}"> <!--<Button.Background> <LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1"> <GradientStop Color="White" Offset="0.4" /> @@ -140,21 +155,25 @@ </LinearGradientBrush> </Button.Background>--> <StackPanel Orientation="Horizontal"> - <TextBlock Text="Machine Connection" VerticalAlignment="Center" Foreground="White"></TextBlock> - <materialDesign:PackIcon Margin="10 0 0 0" Width="24" Height="24"> - <materialDesign:PackIcon.Style> - <Style TargetType="materialDesign:PackIcon"> - <Setter Property="Foreground" Value="#333333"></Setter> - <Setter Property="Kind" Value="LanDisconnect"></Setter> - <Style.Triggers> - <DataTrigger Binding="{Binding ApplicationManager.IsMachineConnected,Mode=OneWay}" Value="True"> - <Setter Property="Foreground" Value="#03FF8E"></Setter> - <Setter Property="Kind" Value="LanConnect"></Setter> - </DataTrigger> - </Style.Triggers> - </Style> - </materialDesign:PackIcon.Style> - </materialDesign:PackIcon> + <Grid> + <StackPanel Orientation="Horizontal" VerticalAlignment="Center"> + <TextBlock Text="Machine Connection" VerticalAlignment="Center" Foreground="White"></TextBlock> + <materialDesign:PackIcon Margin="10 0 0 0" Width="24" Height="24"> + <materialDesign:PackIcon.Style> + <Style TargetType="materialDesign:PackIcon"> + <Setter Property="Foreground" Value="#333333"></Setter> + <Setter Property="Kind" Value="LanDisconnect"></Setter> + <Style.Triggers> + <DataTrigger Binding="{Binding ApplicationManager.IsMachineConnected,Mode=OneWay}" Value="True"> + <Setter Property="Foreground" Value="#03FF8E"></Setter> + <Setter Property="Kind" Value="LanConnect"></Setter> + </DataTrigger> + </Style.Triggers> + </Style> + </materialDesign:PackIcon.Style> + </materialDesign:PackIcon> + </StackPanel> + </Grid> </StackPanel> </Button> </StackPanel> |
