diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-02-28 23:54:22 +0200 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2020-02-28 23:54:22 +0200 |
| commit | eb5e79f5dc4983612b1716cf6e52323dc0da0ba6 (patch) | |
| tree | 0df0b2a34990a80401723a1d7064f36463a95f20 | |
| parent | d9d8ca61ee95dff152b05fd9d5bcae8aac0fa3da (diff) | |
| download | Tango-eb5e79f5dc4983612b1716cf6e52323dc0da0ba6.tar.gz Tango-eb5e79f5dc4983612b1716cf6e52323dc0da0ba6.zip | |
Started FSE Console & Remote Desktop.
18 files changed, 257 insertions, 49 deletions
diff --git a/Software/Graphics/FSE/tablet.png b/Software/Graphics/FSE/tablet.png Binary files differnew file mode 100644 index 000000000..a8c85647b --- /dev/null +++ b/Software/Graphics/FSE/tablet.png diff --git a/Software/Graphics/FSE/tablet_background.png b/Software/Graphics/FSE/tablet_background.png Binary files differnew file mode 100644 index 000000000..22330bc3b --- /dev/null +++ b/Software/Graphics/FSE/tablet_background.png diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Tango.FSE.PPCConsole.csproj b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Tango.FSE.PPCConsole.csproj index 9fc74f443..bcb1242a3 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Tango.FSE.PPCConsole.csproj +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Tango.FSE.PPCConsole.csproj @@ -80,10 +80,18 @@ <ItemGroup> <Compile Include="ViewModelLocator.cs" /> <Compile Include="PPCConsoleModule.cs" /> + <Compile Include="ViewModels\ConsoleViewVM.cs" /> <Compile Include="ViewModels\MainViewVM.cs" /> + <Compile Include="ViewModels\RemoteDesktopViewVM.cs" /> + <Compile Include="Views\ConsoleView.xaml.cs"> + <DependentUpon>ConsoleView.xaml</DependentUpon> + </Compile> <Compile Include="Views\MainView.xaml.cs"> <DependentUpon>MainView.xaml</DependentUpon> </Compile> + <Compile Include="Views\RemoteDesktopView.xaml.cs"> + <DependentUpon>RemoteDesktopView.xaml</DependentUpon> + </Compile> </ItemGroup> <ItemGroup> <Compile Include="Properties\AssemblyInfo.cs"> @@ -169,10 +177,18 @@ <SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator> </Page> + <Page Include="Views\ConsoleView.xaml"> + <SubType>Designer</SubType> + <Generator>MSBuild:Compile</Generator> + </Page> <Page Include="Views\MainView.xaml"> <SubType>Designer</SubType> <Generator>MSBuild:Compile</Generator> </Page> + <Page Include="Views\RemoteDesktopView.xaml"> + <SubType>Designer</SubType> + <Generator>MSBuild:Compile</Generator> + </Page> </ItemGroup> <ItemGroup> <Resource Include="Images\ppc_console.png" /> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModelLocator.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModelLocator.cs index f6397cfa9..1d07a1684 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModelLocator.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModelLocator.cs @@ -13,6 +13,8 @@ namespace Tango.FSE.PPCConsole static ViewModelLocator() { TangoIOC.Default.Register<MainViewVM>(); + TangoIOC.Default.Register<ConsoleViewVM>(); + TangoIOC.Default.Register<RemoteDesktopViewVM>(); } public static MainViewVM MainViewVM @@ -22,5 +24,21 @@ namespace Tango.FSE.PPCConsole return TangoIOC.Default.GetInstance<MainViewVM>(); } } + + public static ConsoleViewVM ConsoleViewVM + { + get + { + return TangoIOC.Default.GetInstance<ConsoleViewVM>(); + } + } + + public static RemoteDesktopViewVM RemoteDesktopViewVM + { + get + { + return TangoIOC.Default.GetInstance<RemoteDesktopViewVM>(); + } + } } } diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/ConsoleViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/ConsoleViewVM.cs new file mode 100644 index 000000000..fd1567e0d --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/ConsoleViewVM.cs @@ -0,0 +1,53 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.Console; +using Tango.FSE.Common; + +namespace Tango.FSE.PPCConsole.ViewModels +{ + public class ConsoleViewVM : FSEViewModel + { + private List<ConsoleSuggestion> _lastSuggestions; + + private ConsoleControlVM _consoleVM; + public ConsoleControlVM ConsoleVM + { + get { return _consoleVM; } + set { _consoleVM = value; RaisePropertyChangedAuto(); } + } + + public ConsoleViewVM() + { + _lastSuggestions = new List<ConsoleSuggestion>(); + ConsoleVM = new ConsoleControlVM(); + ConsoleVM.CommandExecuting += ConsoleVM_CommandExecuting; + ConsoleVM.Clear(); + } + + private async void ConsoleVM_CommandExecuting(object sender, ConsoleCommandExecutingEventArgs e) + { + try + { + var result = await MachineProvider.MachineOperator.SendGenericRequest<ConsoleCommandDTO, ConsoleCommandExecutionResult>(new ConsoleCommandDTO() + { + Command = e.Command.CommandText, + WorkingFolder = e.Command.WorkingFolder, + }); + _lastSuggestions = result.Suggestions; + e.Complete(result); + } + catch (Exception ex) + { + e.Complete(new ConsoleCommandExecutionResult() + { + Output = ex.FlattenMessage(), + WorkingFolder = e.Command.WorkingFolder, + Suggestions = _lastSuggestions + }); + } + } + } +} diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/MainViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/MainViewVM.cs index fa6898937..8273b9d39 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/MainViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/MainViewVM.cs @@ -13,41 +13,6 @@ namespace Tango.FSE.PPCConsole.ViewModels { public class MainViewVM : FSEViewModel { - private List<ConsoleSuggestion> _lastSuggestions; - - public ConsoleControlVM ConsoleVM { get; set; } - - public MainViewVM() - { - _lastSuggestions = new List<ConsoleSuggestion>(); - ConsoleVM = new ConsoleControlVM(); - ConsoleVM.CommandExecuting += ConsoleVM_CommandExecuting; - ConsoleVM.Clear(); - } - - private async void ConsoleVM_CommandExecuting(object sender, ConsoleCommandExecutingEventArgs e) - { - try - { - var result = await MachineProvider.MachineOperator.SendGenericRequest<ConsoleCommandDTO, ConsoleCommandExecutionResult>(new ConsoleCommandDTO() - { - Command = e.Command.CommandText, - WorkingFolder = e.Command.WorkingFolder, - }); - _lastSuggestions = result.Suggestions; - e.Complete(result); - } - catch (Exception ex) - { - e.Complete(new ConsoleCommandExecutionResult() - { - Output = ex.FlattenMessage(), - WorkingFolder = e.Command.WorkingFolder, - Suggestions = _lastSuggestions - }); - } - } - public override void OnApplicationStarted() { InvokeUI(() => diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/RemoteDesktopViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/RemoteDesktopViewVM.cs new file mode 100644 index 000000000..32a85ada6 --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/ViewModels/RemoteDesktopViewVM.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.FSE.Common; + +namespace Tango.FSE.PPCConsole.ViewModels +{ + public class RemoteDesktopViewVM : FSEViewModel + { + } +} diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml new file mode 100644 index 000000000..4e2afa884 --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml @@ -0,0 +1,24 @@ +<UserControl x:Class="Tango.FSE.PPCConsole.Views.ConsoleView" + 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:global="clr-namespace:Tango.FSE.PPCConsole" + xmlns:vm="clr-namespace:Tango.FSE.PPCConsole.ViewModels" + xmlns:local="clr-namespace:Tango.FSE.PPCConsole.Views" + xmlns:console="clr-namespace:Tango.Console;assembly=Tango.Console" + xmlns:material="http://materialdesigninxaml.net/winfx/xaml/themes" + mc:Ignorable="d" + d:DesignHeight="450" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=vm:ConsoleViewVM, IsDesignTimeCreatable=False}" DataContext="{x:Static global:ViewModelLocator.ConsoleViewVM}"> + <Grid> + <Border Background="Black" CornerRadius="10" BorderBrush="{StaticResource FSE_BorderBrush}" BorderThickness="1"> + <console:ConsoleControl Margin="10" BorderBrush="{StaticResource FSE_BorderBrush}" SuggestionsBackground="{StaticResource FSE_PrimaryBackgroundBrush}" SuggestionsBorderBrush="{StaticResource FSE_BorderBrush}" SuggestionsForeground="Silver" DataContext="{Binding ConsoleVM}"> + <console:ConsoleControl.BusyTemplate> + <DataTemplate> + <ProgressBar Style="{StaticResource MaterialDesignCircularProgressBar}" IsIndeterminate="True" Width="16" Height="16" /> + </DataTemplate> + </console:ConsoleControl.BusyTemplate> + </console:ConsoleControl> + </Border> + </Grid> +</UserControl> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml.cs new file mode 100644 index 000000000..96d4974b9 --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/ConsoleView.xaml.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace Tango.FSE.PPCConsole.Views +{ + /// <summary> + /// Interaction logic for ConsoleView.xaml + /// </summary> + public partial class ConsoleView : UserControl + { + public ConsoleView() + { + InitializeComponent(); + } + } +} diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/MainView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/MainView.xaml index 756e00aad..39fb4549d 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/MainView.xaml +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/MainView.xaml @@ -9,17 +9,33 @@ xmlns:console="clr-namespace:Tango.Console;assembly=Tango.Console" xmlns:material="http://materialdesigninxaml.net/winfx/xaml/themes" mc:Ignorable="d" - d:DesignHeight="450" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=vm:MainViewVM, IsDesignTimeCreatable=False}" DataContext="{x:Static global:ViewModelLocator.MainViewVM}"> - <Grid> - <DockPanel> - <TextBlock DockPanel.Dock="Top" Margin="10" HorizontalAlignment="Center" FontSize="30">PPC Console</TextBlock> - <console:ConsoleControl BorderBrush="{StaticResource FSE_BorderBrush}" SuggestionsBackground="{StaticResource FSE_PrimaryBackgroundBrush}" SuggestionsBorderBrush="{StaticResource FSE_BorderBrush}" SuggestionsForeground="Silver" Margin="10" DataContext="{Binding ConsoleVM}"> - <console:ConsoleControl.BusyTemplate> - <DataTemplate> - <ProgressBar Style="{StaticResource MaterialDesignCircularProgressBar}" IsIndeterminate="True" Width="16" Height="16" /> - </DataTemplate> - </console:ConsoleControl.BusyTemplate> - </console:ConsoleControl> - </DockPanel> + d:DesignHeight="720" d:DesignWidth="1280" d:DataContext="{d:DesignInstance Type=vm:MainViewVM, IsDesignTimeCreatable=False}" DataContext="{x:Static global:ViewModelLocator.MainViewVM}"> + <Grid Margin="10"> + <Grid.RowDefinitions> + <RowDefinition Height="327*"/> + <RowDefinition Height="5"/> + <RowDefinition Height="50*"/> + </Grid.RowDefinitions> + <Grid> + <Grid.ColumnDefinitions> + <ColumnDefinition Width="257*"/> + <ColumnDefinition Width="137*"/> + </Grid.ColumnDefinitions> + + <!--CONSOLE--> + <Grid> + <local:ConsoleView Margin="5" /> + </Grid> + + <!--REMOTE DESKTOP--> + <Grid Grid.Column="1"> + <local:RemoteDesktopView Margin="5" /> + </Grid> + </Grid> + + <!--SOMETHING OTHER ?--> + <Grid Grid.Row="2"> + + </Grid> </Grid> </UserControl> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml new file mode 100644 index 000000000..8d986a04a --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml @@ -0,0 +1,37 @@ +<UserControl x:Class="Tango.FSE.PPCConsole.Views.RemoteDesktopView" + 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:global="clr-namespace:Tango.FSE.PPCConsole" + xmlns:vm="clr-namespace:Tango.FSE.PPCConsole.ViewModels" + xmlns:local="clr-namespace:Tango.FSE.PPCConsole.Views" + xmlns:console="clr-namespace:Tango.Console;assembly=Tango.Console" + xmlns:material="http://materialdesigninxaml.net/winfx/xaml/themes" + mc:Ignorable="d" + d:DesignHeight="1280" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=vm:RemoteDesktopViewVM, IsDesignTimeCreatable=False}" DataContext="{x:Static global:ViewModelLocator.RemoteDesktopViewVM}"> + <Grid> + <Border CornerRadius="15" BorderBrush="{StaticResource FSE_BorderBrush}" BorderThickness="1"> + <Border CornerRadius="1" BorderThickness="30"> + <Border.BorderBrush> + <LinearGradientBrush> + <GradientStop Color="#101010" Offset="0" /> + <GradientStop Color="#202020" Offset="1" /> + </LinearGradientBrush> + </Border.BorderBrush> + <Border BorderThickness="1"> + <Border.BorderBrush> + <LinearGradientBrush> + <GradientStop Color="#3E3E3E" Offset="0" /> + <GradientStop Color="#101010" Offset="0.5" /> + <GradientStop Color="#3E3E3E" Offset="1" /> + </LinearGradientBrush> + </Border.BorderBrush> + <Border.Background> + <ImageBrush ImageSource="{StaticResource FSE_PPC_Back}" /> + </Border.Background> + </Border> + </Border> + </Border> + </Grid> +</UserControl> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml.cs new file mode 100644 index 000000000..27be82c5d --- /dev/null +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.PPCConsole/Views/RemoteDesktopView.xaml.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Data; +using System.Windows.Documents; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Imaging; +using System.Windows.Navigation; +using System.Windows.Shapes; + +namespace Tango.FSE.PPCConsole.Views +{ + /// <summary> + /// Interaction logic for RemoteDesktopView.xaml + /// </summary> + public partial class RemoteDesktopView : UserControl + { + public RemoteDesktopView() + { + InitializeComponent(); + } + } +} diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet.png b/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet.png Binary files differnew file mode 100644 index 000000000..a8c85647b --- /dev/null +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet.png diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet_background.png b/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet_background.png Binary files differnew file mode 100644 index 000000000..22330bc3b --- /dev/null +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Images/tablet_background.png diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Resources/Images.xaml b/Software/Visual_Studio/FSE/Tango.FSE.Common/Resources/Images.xaml index c46d10ce5..bd0980b76 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/Resources/Images.xaml +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Resources/Images.xaml @@ -7,5 +7,7 @@ <BitmapImage x:Key="FSE_Machine_Full" UriSource="../Images/machine_full.png" /> <BitmapImage x:Key="FSE_Twine_Logo" UriSource="../Images/twine_logo.png" /> <BitmapImage x:Key="FSE_Twine_Logo_Colored" UriSource="../Images/twine_logo_colored.png" /> + <BitmapImage x:Key="FSE_PPC" UriSource="../Images/tablet.png" /> + <BitmapImage x:Key="FSE_PPC_Back" UriSource="../Images/tablet_background.png" /> </ResourceDictionary>
\ No newline at end of file diff --git a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj index 824b7675e..80e1dde40 100644 --- a/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj +++ b/Software/Visual_Studio/FSE/Tango.FSE.Common/Tango.FSE.Common.csproj @@ -268,6 +268,12 @@ <ItemGroup> <Resource Include="Images\twine_logo_colored.png" /> </ItemGroup> + <ItemGroup> + <Resource Include="Images\tablet.png" /> + </ItemGroup> + <ItemGroup> + <Resource Include="Images\tablet_background.png" /> + </ItemGroup> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> <PropertyGroup> <PreBuildEvent>nswag run "$(SolutionDir)Web\Tango.MachineService.Gateway\Nswag\GatewayClient.nswag" /variables:assembly="$(SolutionDir)Web\Tango.MachineService.Gateway\bin\Tango.MachineService.Gateway.dll",output="$(ProjectDir)Gateway\GatewayClient.cs"</PreBuildEvent> diff --git a/Software/Visual_Studio/Tango.Console/ConsoleTextBox.cs b/Software/Visual_Studio/Tango.Console/ConsoleTextBox.cs index 905843f81..2802c0fe6 100644 --- a/Software/Visual_Studio/Tango.Console/ConsoleTextBox.cs +++ b/Software/Visual_Studio/Tango.Console/ConsoleTextBox.cs @@ -179,11 +179,13 @@ namespace Tango.Console Text = selectedItem.Name; } - CaretIndex = Text.Length; SuggestionsVisibility = Visibility.Collapsed; + CaretIndex = Text.Length; e.Handled = true; return; } + + SuggestionsVisibility = Visibility.Collapsed; } } diff --git a/Software/Visual_Studio/Tango.Console/Themes/Generic.xaml b/Software/Visual_Studio/Tango.Console/Themes/Generic.xaml index 3aaea90d7..e2a9e2b8f 100644 --- a/Software/Visual_Studio/Tango.Console/Themes/Generic.xaml +++ b/Software/Visual_Studio/Tango.Console/Themes/Generic.xaml @@ -76,7 +76,7 @@ <Canvas HorizontalAlignment="Right" VerticalAlignment="Top"> <Popup x:Name="PART_popup" IsOpen="False" Placement="Right" HorizontalOffset="10"> <Border Padding="5" CornerRadius="3" MaxWidth="500" BorderThickness="1" BorderBrush="{TemplateBinding SuggestionsBorderBrush}" Background="{TemplateBinding SuggestionsBackground}"> - <TextBlock Foreground="{TemplateBinding SuggestionsForeground}" TextWrapping="Wrap" Text="{Binding ElementName=PART_listSuggestions,Path=SelectedItem.Description}"></TextBlock> + <TextBlock FontSize="11" Foreground="{TemplateBinding SuggestionsForeground}" TextWrapping="Wrap" Text="{Binding ElementName=PART_listSuggestions,Path=SelectedItem.Description}"></TextBlock> </Border> </Popup> </Canvas> |
