667 lines
54 KiB
XML
Executable File
667 lines
54 KiB
XML
Executable File
<Grid Name="Root" Width="Auto"
|
|
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:system="clr-namespace:System;assembly=mscorlib"
|
|
SnapsToDevicePixels="True">
|
|
<Grid.Resources>
|
|
<ResourceDictionary>
|
|
<ResourceDictionary.MergedDictionaries>
|
|
<ResourceDictionary Source="X:\gta5\tools_ng\wildwest\script\3dsMax\UI\Resources\Base.xaml"></ResourceDictionary>
|
|
</ResourceDictionary.MergedDictionaries>
|
|
</ResourceDictionary>
|
|
</Grid.Resources>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition Height="Auto"></RowDefinition>
|
|
<RowDefinition Height="7"></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Frame Content="{StaticResource ToolHeader}"/>
|
|
<TabControl SelectedIndex="1" Padding="0" Grid.Row="3" BorderThickness="0,4,0,0" BorderBrush="{StaticResource BackgroundLightBrush}">
|
|
<TabItem Header="Load/Save" ToolTip="Load a set data .xml file." >
|
|
<GroupBox Width="250" Header="Selected Set File (.xml)">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Button Name="LoadSetFileButton" Grid.Column="0">Load</Button>
|
|
<Button Name="SaveSetFileButton" Grid.Column="1">Save</Button>
|
|
</Grid>
|
|
</GroupBox>
|
|
</TabItem>
|
|
<TabItem Name="TabProcedurals" Header="Procedurals" ToolTip="Controls for editing and managing procedurals." >
|
|
<StackPanel MinWidth="450" MaxWidth="450">
|
|
<GroupBox Header="Selected Procedural">
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"></ColumnDefinition>
|
|
<ColumnDefinition Width="*"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<ComboBox Name="SelectedProceduralCombo"
|
|
Height="22"
|
|
Grid.Column="0"
|
|
Grid.ColumnSpan="2"
|
|
ItemsSource="{Binding Path=SetData.ProceduralList}"
|
|
DisplayMemberPath="Name"
|
|
SelectedItem="{Binding Path=SelectedProcedural}"
|
|
ToolTip="Select a procedural."/>
|
|
<Button Name="DeleteProceduralButton"
|
|
Grid.Row="1"
|
|
Grid.Column="0"
|
|
Content="Delete"
|
|
ToolTip="Deletes selected procedural."/>
|
|
<Button Name="NewProceduralButton"
|
|
Grid.Row="1"
|
|
Grid.Column="1"
|
|
Content="New"
|
|
ToolTip="Create a new procedural."/>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Header="Procedural Details" DataContext="{Binding ElementName=SelectedProceduralCombo, Path=SelectedItem}" >
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition></RowDefinition>
|
|
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition/>
|
|
<ColumnDefinition Width="4"/>
|
|
<ColumnDefinition Width="155"/>
|
|
</Grid.ColumnDefinitions>
|
|
<Grid>
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="4"></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="4"></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="4"></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
<RowDefinition Height="4"></RowDefinition>
|
|
<RowDefinition></RowDefinition>
|
|
</Grid.RowDefinitions>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="72"></ColumnDefinition>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
<ColumnDefinition Width="72"></ColumnDefinition>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
<Label Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Right" >Name:</Label>
|
|
<TextBox Grid.Column="1" Grid.ColumnSpan="3" BorderBrush="Black" BorderThickness="1" VerticalContentAlignment="Center" Text="{Binding Path=Name}" ToolTip="Click to edit the procedural name."/>
|
|
|
|
<Label Grid.Column="0" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Right">Target Tag:</Label>
|
|
<ComboBox Grid.Column="1" Grid.Row="2" Grid.ColumnSpan="3"
|
|
ItemsSource="{Binding ElementName=Root, Path=DataContext.Metadata.ProceduralTags}"
|
|
SelectedItem="{Binding Path=TargetTag}"
|
|
ToolTip="Select a procedural tag."/>
|
|
|
|
<Label Grid.Column="0" Grid.Row="4" VerticalAlignment="Center" HorizontalAlignment="Right">Hue:</Label>
|
|
<TextBox Grid.Column="1"
|
|
Grid.Row="4"
|
|
BorderBrush="Black"
|
|
BorderThickness="1"
|
|
VerticalContentAlignment="Center"
|
|
Foreground="{StaticResource DefaultForegroundFontBrush}"
|
|
Text="{Binding Path=ColorHue}"
|
|
ToolTip="Click to edit the procedural name.">
|
|
<TextBox.Background>
|
|
<SolidColorBrush Color="{Binding Path=ColorHexCode}"/>
|
|
</TextBox.Background>
|
|
</TextBox>
|
|
|
|
<Label Grid.Column="2" Grid.Row="4" VerticalAlignment="Center" HorizontalAlignment="Right">Spacing:</Label>
|
|
<TextBox Grid.Column="3" Grid.Row="4" BorderBrush="Black" BorderThickness="1" VerticalContentAlignment="Center" Text="{Binding Path=Spacing}" ToolTip="Click to edit the spacing on the procedural."/>
|
|
|
|
<Label Grid.Column="0" Grid.Row="6" VerticalAlignment="Top" HorizontalAlignment="Right" >Description:</Label>
|
|
<TextBox TextWrapping="Wrap" Grid.ColumnSpan="3" Grid.Column="1" Height="60" Grid.Row="6" BorderBrush="Black" BorderThickness="1" VerticalContentAlignment="Top" Text="{Binding Path=Description}" ToolTip="Type a description."/>
|
|
|
|
|
|
<ToggleButton Grid.Column="1" Grid.Row="8" Grid.ColumnSpan="3" IsChecked="{Binding Path=CullImmune}" ToolTip="Indicates whether the procedural should be applied with the 'ProcCullImmune' flag set. This will force the procedural to draw even on small triangles.">Cull Immune</ToggleButton>
|
|
|
|
</Grid>
|
|
<Button Name="Select_Thumbnail_Button" Grid.Column="3" ToolTip="Click to select/alter thumbnail" >
|
|
<Image Source="{Binding Path=ThumbnailImageFilePath}" Grid.RowSpan="3" Grid.Column="3" Stretch="Fill" StretchDirection="Both" ></Image>
|
|
</Button>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Header="Painting Levels" DataContext="{Binding ElementName=SelectedProceduralCombo, Path=SelectedItem}" >
|
|
<StackPanel>
|
|
<ListBox Background="Transparent" BorderThickness="0" ItemsSource="{Binding Path=LevelList}" HorizontalContentAlignment="Stretch">
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<Border Background="{StaticResource White_10}" Margin="0,0,0,4" BorderBrush="{StaticResource Black_20}" BorderThickness="0,4,0,0">
|
|
<Grid >
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="25"/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="50"/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Label HorizontalAlignment="Right">Name:</Label>
|
|
<TextBox Grid.Column="1" Height="20" VerticalContentAlignment="Center" Text="{Binding Path=Name}" ToolTip="Click to change the level name. E.g. 'Full' or 'Thick'"/>
|
|
</Grid>
|
|
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="50"/>
|
|
<ColumnDefinition/>
|
|
</Grid.ColumnDefinitions>
|
|
<Label HorizontalAlignment="Right">Tag:</Label>
|
|
<ComboBox Grid.Column="1" Height="20"
|
|
ItemsSource="{Binding ElementName=Root, Path=DataContext.Metadata.ProceduralTags}"
|
|
SelectedItem="{Binding Path=TargetTag}"
|
|
ToolTip="Select a procedural tag."/>
|
|
</Grid>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="90"/>
|
|
<ColumnDefinition Width="90"/>
|
|
<ColumnDefinition Width="90"/>
|
|
<ColumnDefinition Width="60"/>
|
|
<ColumnDefinition Width="*"/>
|
|
</Grid.ColumnDefinitions>
|
|
|
|
|
|
<!--Density-->
|
|
<Grid Grid.Column="0">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Label HorizontalAlignment="Center">Density</Label>
|
|
<ComboBox Height="20" Grid.Row="1" SelectedIndex="{Binding Path=DensityLevel}" ToolTip="Click to change the density for this level.">
|
|
<!--0-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Rectangle Height="25" Width="25" Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2" />
|
|
<Label VerticalAlignment="Top" HorizontalAlignment="Center">0</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- No Change</TextBlock>
|
|
</StackPanel>
|
|
<!--1-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">1</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Minimum density decrement</TextBlock>
|
|
</StackPanel>
|
|
<!--2-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">2</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--3-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">3</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Maximum density decrement</TextBlock>
|
|
</StackPanel>
|
|
</ComboBox>
|
|
</Grid>
|
|
|
|
<!--ScaleXYZ-->
|
|
<Grid Grid.Column="1">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Label HorizontalAlignment="Center">ScaleXYZ</Label>
|
|
<ComboBox Grid.Row="1" MaxDropDownHeight="700" Height="20" SelectedIndex="{Binding Path=ScaleXYZLevel}" ToolTip="Click to change the scale in X,Y and Z for this level.">
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">0</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Maximum scale increment</TextBlock>
|
|
</StackPanel>
|
|
<!--1-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">1</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--2-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">2</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--3-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">3</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--4-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">4</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--5-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">5</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--6-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">6</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--7-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="24"/>
|
|
<Point X="24" Y="24"/>
|
|
<Point X="12" Y="0"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,4,0,0">7</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Minimal scale increment</TextBlock>
|
|
</StackPanel>
|
|
<!--8-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">8</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Minimal scale decrement</TextBlock>
|
|
</StackPanel>
|
|
<!--9-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">9</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--10-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">10</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--11-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">11</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--12-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">12</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--13-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">13</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--14-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">14</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--15-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="0,-3,0,0">15</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Maximum scale decrement</TextBlock>
|
|
</StackPanel>
|
|
</ComboBox>
|
|
</Grid>
|
|
|
|
<!--ScaleZ-->
|
|
<Grid Grid.Column="2">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Label HorizontalAlignment="Center">ScaleZ</Label>
|
|
<ComboBox Grid.Row="1" Height="20" SelectedIndex="{Binding Path=ScaleZLevel}" ToolTip="Click to change the scale in Z for this level.">
|
|
<!--0-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Rectangle Height="25" Width="25" Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2" />
|
|
<Label VerticalAlignment="Top" HorizontalAlignment="Center">0</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- No Change</TextBlock>
|
|
</StackPanel>
|
|
<!--1-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">1</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Minimum scale decrement</TextBlock>
|
|
</StackPanel>
|
|
<!--2-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">2</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">-</TextBlock>
|
|
</StackPanel>
|
|
<!--3-->
|
|
<StackPanel Orientation="Horizontal">
|
|
<Grid>
|
|
<Polygon Fill="{StaticResource Black_60}" Stroke="Black" StrokeThickness="2">
|
|
<Polygon.Points>
|
|
<Point X="0" Y="0"/>
|
|
<Point X="24" Y="0"/>
|
|
<Point X="12" Y="24"/>
|
|
</Polygon.Points>
|
|
</Polygon>
|
|
<Label Margin="4,-3,0,0">3</Label>
|
|
</Grid>
|
|
<Grid Width="5"/>
|
|
<TextBlock VerticalAlignment="Center">- Maximum scale decrement</TextBlock>
|
|
</StackPanel>
|
|
</ComboBox>
|
|
</Grid>
|
|
|
|
<Grid Grid.Column="3">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Label HorizontalAlignment="Center">Blend Dist</Label>
|
|
<TextBox Grid.Row="1" Text="{Binding Path=BlendDistance}"></TextBox>
|
|
</Grid>
|
|
|
|
<Grid Grid.Column="4">
|
|
<Grid.RowDefinitions>
|
|
<RowDefinition/>
|
|
<RowDefinition/>
|
|
</Grid.RowDefinitions>
|
|
<Label HorizontalAlignment="Center">Ground Tint</Label>
|
|
<TextBox VerticalContentAlignment="Center" Grid.Row="1" Text="{Binding Path=GroundTintHexCode}" Foreground="Black" Width="Auto" Height="Auto" Cursor="Hand" ToolTip="Click to change the ground tint colour. (Colour picker not yet implemented).">
|
|
<TextBox.Background>
|
|
<SolidColorBrush Color="{Binding Path=GroundTint.HexCode}" />
|
|
</TextBox.Background>
|
|
</TextBox>
|
|
</Grid>
|
|
|
|
|
|
</Grid>
|
|
|
|
</StackPanel>
|
|
|
|
<Button Name="Remove_Level_Button" Grid.Column="1" Content="X" ToolTip="Click to remove the procedural level"/>
|
|
</Grid>
|
|
</Border>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
<Button Name="AddProceduralLevelButton" ToolTip="Click to add a new painting level." IsEnabled="{Binding Path=WithinMaximumLevelLimit}">Add Level</Button>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
</StackPanel>
|
|
</TabItem>
|
|
<TabItem Name="TabSets" Header="Sets" ToolTip="Controls for editing and managing sets of procedurals." >
|
|
<StackPanel Width="280">
|
|
<GroupBox Header="Selected Set">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
<ColumnDefinition Width="Auto"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<ComboBox Name="SelectedSetCombo" SelectedItem="{Binding Path=SelectedSet}" ItemsSource="{Binding Path=SetData.SetList}" DisplayMemberPath="Name" Grid.Column="0" />
|
|
<Button Name="NewSetButton" Grid.Column="1">New</Button>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Header="Set Details" DataContext="{Binding ElementName=SelectedSetCombo, Path=SelectedItem}" >
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="67"></ColumnDefinition>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<Label Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Right">Name:</Label>
|
|
<TextBox Grid.Column="1" BorderBrush="Black" BorderThickness="1" VerticalContentAlignment="Center" Text="{Binding Path=Name}"></TextBox>
|
|
</Grid>
|
|
</GroupBox>
|
|
<GroupBox Header="Procedural List">
|
|
<StackPanel>
|
|
<ListBox Padding="0"
|
|
Margin="-1,0,-1,0"
|
|
Background="Transparent"
|
|
ItemsSource="{Binding ElementName=SelectedSetCombo, Path=SelectedItem.ProceduralList}"
|
|
BorderThickness="0"
|
|
HorizontalContentAlignment="Stretch"
|
|
SelectionMode="Single"
|
|
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
|
|
ScrollViewer.CanContentScroll="False">
|
|
<ListBox.ItemContainerStyle>
|
|
<Style TargetType="ListBoxItem">
|
|
<Setter Property="Padding" Value="0"></Setter>
|
|
<Setter Property="Margin" Value="0,1,0,1"></Setter>
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="{x:Type ListBoxItem}">
|
|
<ContentPresenter />
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
</Style>
|
|
</ListBox.ItemContainerStyle>
|
|
<ListBox.ItemTemplate>
|
|
<DataTemplate>
|
|
<Grid Margin="0">
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
<ColumnDefinition Width="Auto"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<TextBox IsReadOnly="True" Text="{Binding Name}"/>
|
|
<Button Name="RemoveProceduralButton" Grid.Column="1" Width="65" ToolTip="Remove this procedural from the set.">Remove</Button>
|
|
</Grid>
|
|
</DataTemplate>
|
|
</ListBox.ItemTemplate>
|
|
</ListBox>
|
|
<Border Background="{StaticResource White_50}" Height="1" Margin="0,4,0,4"></Border>
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition></ColumnDefinition>
|
|
<ColumnDefinition Width="Auto"></ColumnDefinition>
|
|
</Grid.ColumnDefinitions>
|
|
<ComboBox Name="ProceduralToAddCombo" ItemsSource="{Binding Path=ValidProceduralList}" DisplayMemberPath="Name"></ComboBox>
|
|
<Button Name="AddProceduralToSetButton" DataContext="{Binding ElementName=ProceduralToAddCombo, Path=SelectedItem}" Grid.Column="1" Width="65">Add</Button>
|
|
</Grid>
|
|
</StackPanel>
|
|
</GroupBox>
|
|
</StackPanel>
|
|
</TabItem>
|
|
</TabControl>
|
|
</Grid>
|