| Commit message (Expand) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | MERGE | Roy Ben Shabat | 2019-04-09 | 1 | -0/+54 |
Last-Modified: Mon, 22 Jun 2026 10:00:37 GMT Expires: Thu, 19 Jun 2036 10:00:37 GMT
<UserControl x:Class="Tango.Scripting.IDE.ScriptIDEView2"
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:local="clr-namespace:Tango.Scripting.IDE"
xmlns:fa="http://schemas.fontawesome.io/icons/"
xmlns:controls="clr-namespace:Tango.Scripting.IDE.Controls"
xmlns:converters="clr-namespace:Tango.Scripting.IDE.Converters"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800" d:DataContext="{d:DesignInstance Type=local:ScriptIDEViewVM, IsDesignTimeCreatable=False}" x:Name="control">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Themes/DarkThemesColors.xaml"/>
<ResourceDictionary Source="Themes/Shared.xaml"/>
</ResourceDictionary.MergedDictionaries>
<BooleanToVisibilityConverter x:Key="BoolToVis" />
<converters:BitmapSourceToImageConverter x:Key="BitmapSourceToImageConverter" />
<Style x:Key="ContentMmenuItemStyle" TargetType="MenuItem">
<Setter Property="Command" Value="{Binding}"/>
<Setter Property="Header" Value="{Binding Name}"/>
<Setter Property="ItemsSource" Value="{Binding Commands}"/>
<Setter Property="Icon" Value="{Binding Image,Converter={StaticResource BitmapSourceToImageConverter}}"></Setter>
</Style>
</ResourceDictionary>
</UserControl.Resources>
<Grid Background="{DynamicResource Background.Static}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" ></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<Menu Grid.Row="0" HorizontalAlignment="Stretch" Margin="2,0,0,0" Style="{DynamicResource TangoMenuStyle}" BorderBrush="Transparent">
<MenuItem Header="File">
<MenuItem Header="New">
<MenuItem Header="New Project..." Command="{Binding NewProjectCommand}">
<MenuItem.Icon>
<Image Source="/Tango.Scripting.IDE;component/Images/NewFileCollection_16x.png" Height="14"/>
</MenuItem.Icon>
</MenuItem>
<MenuItem Header="File"/>
</MenuItem>
<MenuItem Header="Open"/>
<MenuItem Header="Start page"></MenuItem>
<Separator/>
<MenuItem Header="Add"></MenuItem>
<Separator/>
<MenuItem Header="Close"></MenuItem>
<Separator/>
<MenuItem Header="Save">
<MenuItem.Icon>
<Image Source="/Tango.Scripting.IDE;component/Images/Save_16x.png" Height="10"/>
</MenuItem.Icon>
</MenuItem>
<MenuItem Header="SaveAll">
<MenuItem.Icon>
<Image Source="/Tango.Scripting.IDE;component/Images/SaveAll_16x.png" Height="10"/>
</MenuItem.Icon>
</MenuItem>
<Separator/>
<MenuItem Header="Exit"></MenuItem>
</MenuItem>
<MenuItem Header="Edit">
<MenuItem Header="Cut"/>
<MenuItem Header="Copy"/>
<MenuItem Header="Paste"/>
</MenuItem>
<MenuItem Header="View"></MenuItem>
<MenuItem Header="Project"></MenuItem>
<MenuItem Header="Build"></MenuItem>
<MenuItem Header="Debug"></MenuItem>
<MenuItem Header="Tools"></MenuItem>
<MenuItem Header="Theme"></MenuItem>
</Menu>
<ToolBarTray Grid.Row="1" Background="{DynamicResource Background.Static}" Width="Auto" Orientation="Horizontal">
<ToolBar Style="{DynamicResource TangoToolBarStyle}" Background="{DynamicResource Background.Static}" Height="30" HorizontalAlignment="Left" Foreground="{DynamicResource ControlForegroundKey}" Margin="0,0,0,6">
<ToolBar.Resources>
<Style TargetType="{x:Type Button}">
<Setter Property="Width" Value="26"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="False">
<Setter Property="Background" Value="Transparent" />
<Setter Property="Opacity" Value="1.0" />
</Trigger>
<EventTrigger RoutedEvent="MouseLeave">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="0.2" To="1"></DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
<EventTrigger RoutedEvent="MouseEnter">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity" From="0.2" To="0.2"></DoubleAnimation>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Style.Triggers>
</Style>
</ToolBar.Resources>
<Button Click="Button_Click" ToolTip="New Project" Style="{DynamicResource TangoToolBarButtonStyle}" >
<Image Source="/Tango.Scripting.IDE;component/Images/NewFileCollection_16x.png" Height="16" Width="16"/>
</Button>
<Button Click="Button_Click" ToolTip="Open File" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/OpenFolder_16x.png" Height="16" Width="16"/>
</Button>
<Button Click="Button_Click" ToolTip="Save File" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/Save_16x.png" Height="16" Width="16"/>
</Button>
<Button Click="Button_Click" ToolTip="Save All" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/SaveAll_16x.png" Height="16" Width="16"/>
</Button>
<Separator ></Separator>
<Button Click="Button_Click" ToolTip="Undo" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/Undo_16x.png" Height="16" Width="16"/>
</Button>
<Button Click="Button_Click" ToolTip="Redo" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/Redo_16x.png" Height="16" Width="16"/>
</Button>
<ComboBox Style="{DynamicResource TangoComboboxStyle}" Margin="2" x:Name="cmb2" SelectedIndex="0" HorizontalContentAlignment="Stretch" Width="100" >
<ComboBoxItem IsSelected="True">Debug</ComboBoxItem>
<ComboBoxItem >Release</ComboBoxItem>
<ComboBoxItem>Configuration Manager...</ComboBoxItem>
</ComboBox>
<Separator ></Separator>
<ToggleButton x:Name="Run_Button" Command="{Binding RunProject}" IsChecked="{Binding IsRunProject, Mode=TwoWay}" ToolTip="Start">
<ToggleButton.Template>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Grid>
<Rectangle x:Name="background" Fill="Transparent" Opacity="1"/>
<StackPanel Orientation="Horizontal" >
<Path x:Name="RunArrow"
HorizontalAlignment="Left" VerticalAlignment="Center"
Width="12" Height="10" Margin="2,0,0,0"
Stretch="Fill" Fill="#FF8DD28A"
RenderTransformOrigin="0.6,0.4"
Data="M0,0 L1,0 0.5,1 z" >
<Path.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform Angle="270"/>
<TranslateTransform/>
</TransformGroup>
</Path.RenderTransform>
</Path>
<TextBlock x:Name="Run_Text" Margin="8,0,4,0" Text="Start" VerticalAlignment="Center"/>
</StackPanel>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Foreground" TargetName="Run_Text" Value="{DynamicResource ToggleButton.Checked.Foreground}"/>
<Setter Property="Fill" TargetName="RunArrow" Value="{DynamicResource ToggleButton.Checked.Foreground}"/>
<Setter Property="Text" TargetName="Run_Text" Value="Continue"/>
<Setter Property="ToggleButton.ToolTip" Value="Continue"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsChecked" Value="False" />
<Condition Property="IsMouseOver" Value="True" />
</MultiTrigger.Conditions>
<Setter Property="Fill" TargetName="background" Value="{DynamicResource Toolbar.Button.MaouseMove.Background}"/>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</ToggleButton.Template>
</ToggleButton>
<Button Click="Button_Click" ToolTip="Pause" Visibility="{Binding IsChecked, ElementName=Run_Button, Converter={StaticResource BoolToVis}}" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/Pause_16x.png" Height="16" Width="16"/>
</Button>
<Button x:Name="StopButton" ToolTip="Stop" Command="{Binding StopProject}" Visibility="{Binding IsChecked, ElementName=Run_Button, Converter={StaticResource BoolToVis}}" Style="{DynamicResource TangoToolBarButtonStyle}">
<Image Source="/Tango.Scripting.IDE;component/Images/stop.png" Height="16" Width="16"/>
</Button>
</ToolBar>
</ToolBarTray>
<Grid Grid.Row="2">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="15" />
<ColumnDefinition Width="1*" MinWidth="100" />
<ColumnDefinition Width="5"/>
<ColumnDefinition Width="300" MinWidth="20" />
</Grid.ColumnDefinitions>
<Grid Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition Height="1*" MinHeight="100" />
<RowDefinition Height="5"/>
<RowDefinition Height="100" MinHeight="20" />
</Grid.RowDefinitions>
<Grid>
<TabControl Foreground="{DynamicResource ControlForegroundKey}" ItemsSource="{Binding OpenProjectItems}" SelectedItem="{Binding SelectedProjectItem}" Style="{DynamicResource TangoTabControlStyle}">
<TabControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" Foreground="Gainsboro" VerticalAlignment="Center"></TextBlock>
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
<ContentPresenter Content="{Binding View}" />
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
</Grid>
<GridSplitter HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Row="1" Background="{DynamicResource Background.Static}" />
<Grid Grid.Row="2" Background="{DynamicResource Background.Static}">
<!--<Border BorderThickness="0" Margin="1,0,0,2">-->
<TabControl TabStripPlacement="Bottom" Style="{DynamicResource TangoTabControlStyle}">
<TabItem Header="Error list">
<GroupBox Header="Error List" BorderThickness="1" Style="{DynamicResource TangoGroupBoxStyle}" Margin="-1">
<DataGrid Background="{DynamicResource TabItem.Content.Static}" Style="{DynamicResource TangoDataGridStyle}" Padding="2,5,2,0"
ColumnHeaderStyle="{DynamicResource TangoDataGridColumnHeaderStyle}" ItemsSource="{Binding ErrorList}"
CanUserSortColumns="True" CanUserResizeColumns="True" IsReadOnly="True"/>
</GroupBox>
</TabItem>
<TabItem Header="Output">
<GroupBox Header="Output" BorderThickness="1" Style="{DynamicResource TangoGroupBoxStyle}" Margin="-1">
<TextBox TextWrapping="Wrap" VerticalScrollBarVisibility="Auto" AcceptsReturn="True" Name="OutputText" Background="{DynamicResource TabItem.Content.Static}" />
</GroupBox>
</TabItem>
</TabControl>
<!--</Border>-->
</Grid>
</Grid>
<GridSplitter HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Grid.Column="2" Background="{DynamicResource Background.Static}" />
<Grid Grid.Column="3">
<Grid.RowDefinitions>
<RowDefinition Height="1*" MinHeight="100"/>
<RowDefinition Height="5"/>
<RowDefinition Height="100" MinHeight="20"/>
<RowDefinition Height="4"/>
</Grid.RowDefinitions>
<GroupBox Grid.Row="0" Margin="0,0,5,0" Header="Solution Explorer" BorderThickness="1" Style="{DynamicResource TangoGroupBoxStyle}" >
<StackPanel Orientation="Vertical" VerticalAlignment="Stretch" Background="{DynamicResource TabItem.Content.Static}">
<TreeView Style="{DynamicResource TangoTreeViewStyle}" x:Name="STree" DataContext="{Binding Solution}" Background="{DynamicResource TabItem.Content.Static}" Padding="0,0,2,0" PreviewMouseRightButtonDown="SolutionTree_PreviewMouseRightButtonDown" BorderThickness="1,0,1,1"
PreviewMouseLeftButtonDown="SolutionTree_PreviewMouseLeftButtonDown">
<TreeViewItem >
<TreeViewItem.Header>
<StackPanel Orientation="Horizontal" Margin="-12,0,0,0">
<Image Source="/Tango.Scripting.IDE;component/Images/jigsaw.png" Height="14" />
<TextBlock Text="{Binding Name}" Margin="5,0,0,0" Foreground="{DynamicResource ControlForegroundKey}"/>
</StackPanel>
</TreeViewItem.Header>
</TreeViewItem>
<TreeView.ContextMenu>
<ContextMenu StaysOpen="true" BorderBrush="{DynamicResource Background.Static}" Foreground="{DynamicResource ControlForegroundKey}"
ItemsSource="{Binding PlacementTarget.DataContext.Commands, RelativeSource={RelativeSource Self}}"
ItemContainerStyle="{StaticResource ContentMmenuItemStyle}">
</ContextMenu>
</TreeView.ContextMenu>
</TreeView>
<TreeView Style="{DynamicResource TangoTreeViewStyle}" Margin="0,-1,0,0" x:Name="SolutionTree" ItemsSource="{Binding Solution.Projects}" Background="{DynamicResource TabItem.Content.Static}" Padding="0,0,2,0" PreviewMouseRightButtonDown="SolutionTree_PreviewMouseRightButtonDown" BorderThickness="1,0,1,1" PreviewMouseLeftButtonDown="SolutionTree_PreviewMouseLeftButtonDown">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Path=Items}" DataType="{x:Type local:IProject}">
<controls:SolutionItemControl SolutionItem="{Binding}" OpenCommand="{Binding ElementName=control,Path=DataContext.OpenProjectItemCommand}"
/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
<TreeView.ContextMenu>
<ContextMenu StaysOpen="true" BorderBrush="{DynamicResource Background.Static}" Foreground="{DynamicResource ControlForegroundKey}"
DataContext="{Binding PlacementTarget, RelativeSource={RelativeSource Self}}"
ItemsSource="{Binding PlacementTarget.SelectedItem.Commands, RelativeSource={RelativeSource Self}}"
ItemContainerStyle="{StaticResource ContentMmenuItemStyle}">
</ContextMenu>
</TreeView.ContextMenu>
</TreeView>
</StackPanel>
</GroupBox>
<GridSplitter Grid.Row="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="{DynamicResource Background.Static}" />
<GroupBox Grid.Row="2" Margin="0,0,5,2" Header="Properties" BorderThickness="1" Style="{DynamicResource TangoGroupBoxStyle}" >
<!--<Border BorderThickness="0" Margin="1,0,0,2">-->
<DataGrid Background="{DynamicResource TabItem.Content.Static}" Style="{DynamicResource TangoDataGridStyle}" Padding="2,5,2,0"
ColumnHeaderStyle="{DynamicResource TangoDataGridColumnHeaderStyle}" ItemsSource="{Binding ErrorList}"
CanUserSortColumns="True" CanUserResizeColumns="True" IsReadOnly="True"/>
<!--</Border>-->
</GroupBox>
</Grid>
</Grid>
</Grid>
</UserControl>