#develop (short for SharpDevelop) is a free IDE for .NET programming languages.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

364 lines
17 KiB

<optionpanels:ProjectOptionPanel
x:Class="ICSharpCode.VBNetBinding.OptionPanels.BuildOptionsXaml"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:gui="clr-namespace:ICSharpCode.SharpDevelop.Gui;assembly=ICSharpCode.SharpDevelop"
xmlns:project="clr-namespace:ICSharpCode.SharpDevelop.Project;assembly=ICSharpCode.SharpDevelop"
xmlns:optionpanels="clr-namespace:ICSharpCode.SharpDevelop.Gui.OptionPanels;assembly=ICSharpCode.SharpDevelop"
xmlns:core="http://icsharpcode.net/sharpdevelop/core"
xmlns:widgets="http://icsharpcode.net/sharpdevelop/widgets">
<optionpanels:ProjectOptionPanel.Resources>
<optionpanels:StringToBoolConverter x:Key="strToBool"></optionpanels:StringToBoolConverter>
<optionpanels:StorageLocationConverter x:Key="locationConverter" />
</optionpanels:ProjectOptionPanel.Resources>
<ScrollViewer>
<StackPanel>
<GroupBox Header="{core:Localize Dialog.ProjectOptions.BuildOptions.General}">
<Grid ShowGridLines="True">
<Grid.RowDefinitions>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30"></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.ColumnSpan="3" VerticalAlignment="Center"
Content="{core:Localize Dialog.ProjectOptions.BuildOptions.ConditionalSymbols}"></Label>
<optionpanels:StorageLocationPicker Grid.Row="1" Location="{Binding DefineConstants.Location}" />
<TextBox x:Name="conditionalSymbolsTextBox"
Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2" VerticalAlignment="Center"
Text="{Binding DefineConstants.Value, UpdateSourceTrigger=PropertyChanged}">
</TextBox>
<optionpanels:StorageLocationPicker Grid.Row="2" Location="{Binding Optimize.Location}" />
<CheckBox x:Name="optimizeCodeCheckBox"
Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="2" VerticalAlignment="Center"
Content="{core:Localize Dialog.ProjectOptions.BuildOptions.OptimizeCode}"
IsChecked="{Binding Optimize.Value,Converter={StaticResource strToBool}}">
</CheckBox>
<optionpanels:StorageLocationPicker Grid.Row="3" Location="{Binding RemoveIntegerChecks.Location}" />
<CheckBox x:Name="removeOverflowCheckBox"
Grid.Row="3" Grid.Column="1" Grid.ColumnSpan="2" VerticalAlignment="Center"
Content="{core:Localize Dialog.ProjectOptions.BuildOptions.RemoveOverflowChecks}"
IsChecked="{Binding RemoveIntegerChecks.Value,Converter={StaticResource strToBool}}">
</CheckBox>
<optionpanels:StorageLocationPicker Grid.Row="5" VerticalAlignment="Center" >
<optionpanels:StorageLocationPicker.Location>
<MultiBinding
Converter="{StaticResource locationConverter}">
<Binding Path="OptionExplicit.Location" />
<Binding Path="OptionStrict.Location" />
<Binding Path="OptionCompare.Location" />
<Binding Path="OptionInfer.Location" />
</MultiBinding>
</optionpanels:StorageLocationPicker.Location>
</optionpanels:StorageLocationPicker>
<widgets:StackPanelWithSpacing Grid.Row="5" Grid.Column="1"
Orientation="Horizontal" SpaceBetweenItems="8">
<ComboBox
ItemsSource="{Binding OptionExplicitItems}"
DisplayMemberPath="Value"
SelectedItem="{Binding OptionExplicitItem}">
</ComboBox>
<ComboBox
ItemsSource="{Binding OptionStrictItems}"
DisplayMemberPath="Value"
SelectedItem="{Binding OptionStrictItem}"
></ComboBox>
<ComboBox
ItemsSource="{Binding OptionCompareItems}"
DisplayMemberPath="Value"
SelectedItem="{Binding OptionCompareItem}"
></ComboBox>
<ComboBox
ItemsSource="{Binding OptionInferItems}"
DisplayMemberPath="Value"
SelectedItem="{Binding OptionInferItem}"
></ComboBox>
</widgets:StackPanelWithSpacing>
</Grid>
</GroupBox>
<GroupBox Header="{core:Localize Dialog.ProjectOptions.Build.Output}">
<Grid >
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="50"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.ColumnSpan="2" Content="{core:Localize Dialog.ProjectOptions.Build.OutputPath}"></Label>
<optionpanels:StorageLocationPicker Grid.Row="1" DockPanel.Dock="Left"
Location="{Binding OutputPath.Location}"/>
<TextBox x:Name="outputPathTextBox" Grid.Row="1" Grid.Column="1" Grid.ColumnSpan="2"
Text="{Binding OutputPath.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
<Button Grid.Row="1" Grid.Column="3" Margin="3,0,3,0"
VerticalAlignment="Center"
Content="..."
Command="{Binding ChangeOutputPath}"></Button>
<optionpanels:StorageLocationPicker Grid.Row="2" DockPanel.Dock="Left" Location="{Binding DocumentationFile.Location}"/>
<CheckBox x:Name="xmlDocumentationCheckBox" Grid.Row="2" Grid.Column="1"
VerticalAlignment="Center"
Margin="3,0,3,0"
IsChecked="{Binding DocumentFileIsChecked}"
Content="{core:Localize Dialog.ProjectOptions.Build.XmlDocumentationFile}"></CheckBox>
<TextBox x:Name="xmlDocumentationTextBox" Grid.Row="2" Grid.Column="2" Grid.ColumnSpan="2"
IsEnabled="{Binding DocumentFileIsChecked}"
Text="{Binding DocumentationFile.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
<optionpanels:StorageLocationPicker Grid.Row="3" DockPanel.Dock="Left" Location="{Binding DebugType.Location}" />
<Label Grid.Row="3" Grid.Column="1" Margin="3,0,3,0"
HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.DebugInfo}"></Label>
<ComboBox Grid.Row="3" Grid.Column="2" Width="150"
VerticalAlignment="Center"
HorizontalAlignment="Left"
SelectedValue="{Binding Path=DebugType.Value}"
gui:EnumBinding.EnumType="{x:Type project:DebugSymbolType}"></ComboBox>
<Label Grid.Row="4" Grid.Column="1" Margin="3,0,3,0"
HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.TargetFramework}"></Label>
<StackPanel Orientation="Horizontal" Grid.Row="4" Grid.Column="2" Grid.ColumnSpan="2">
<ComboBox x:Name="targetFrameworkComboBox" Width="200" Margin="0,0,3,0"
VerticalAlignment="Center"
IsEnabled="False"></ComboBox>
<Button Margin="3,0,3,0" VerticalAlignment="Center"
Content="Change"
Command="{Binding UpdateProjectCommand}"
Style="{x:Static core:GlobalStyles.ButtonStyle}"></Button>
</StackPanel>
<GroupBox Grid.Row="5" Grid.ColumnSpan="4" Margin="5,10,0,0"
Header="{core:Localize Dialog.ProjectOptions.Build.Advanced}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition MinWidth="120"></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition Width="50"></ColumnDefinition>
</Grid.ColumnDefinitions>
<optionpanels:StorageLocationPicker Grid.Row="1" VerticalAlignment="Center">
<optionpanels:StorageLocationPicker.Location>
<MultiBinding Converter="{StaticResource locationConverter}">
<Binding Path="RegisterForComInterop.Location" />
<Binding Path="GenerateSerializationAssemblies.Location" />
<Binding Path="PlatformTarget.Location" />
<Binding Path="FileAlignment.Location" />
<Binding Path="BaseAddress.Location" />
</MultiBinding>
</optionpanels:StorageLocationPicker.Location>
</optionpanels:StorageLocationPicker>
<!--x:Name="registerCOMInteropCheckBox"-->
<CheckBox Grid.Column="2"
IsChecked="{Binding RegisterForComInterop.Value}"
Content="{core:Localize Dialog.ProjectOptions.Build.RegisterForCOM}"></CheckBox>
<Label Grid.Row="1" Grid.Column="1"
HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.GenerateSerializationAssembly}"></Label>
<!--x:Name="generateSerializationAssemblyComboBox"-->
<ComboBox Grid.Row="1" Grid.Column="2"
VerticalAlignment="Center"
ItemsSource="{Binding Path=DataContext.SerializationInfo}"
SelectedValue="{Binding Path=GenerateSerializationAssemblies.Value}"
DisplayMemberPath="DisplayValue"
SelectedValuePath="Key"></ComboBox>
<Label Grid.Row="2" Grid.Column="1" HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.TargetCPU}"></Label>
<!--x:Name="targetCpuComboBox"-->
<ComboBox Grid.Row="2" Grid.Column="2" VerticalAlignment="Center"
ItemsSource="{Binding Path=DataContext.TargetCPU}"
SelectedValue="{Binding Path=PlatformTarget.Value}"
DisplayMemberPath="DisplayValue"
SelectedValuePath="Key"></ComboBox>
<Label Grid.Row="3" Grid.Column="1" HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.FileAlignment}"></Label>
<!--x:Name="fileAlignmentComboBox"-->
<ComboBox Grid.Row="3" Grid.Column="2" VerticalAlignment="Center"
ItemsSource="{Binding Path=DataContext.FileAlign}"
SelectedValue="{Binding Path=FileAlignment.Value}"
DisplayMemberPath="DisplayValue"
SelectedValuePath="Key"></ComboBox>
<Label Grid.Row="4" Grid.Column="1" HorizontalAlignment="Right"
Content="{core:Localize Dialog.ProjectOptions.Build.DLLBaseAddress}"></Label>
<!-- Hex binding -->
<!--x:Name="dllBaseAddressTextBox"
<TextBox Grid.Row="4" Grid.Column="2">
<TextBox.Text>
<Binding Path="DllBaseAdress" UpdateSourceTrigger="LostFocus">
<Binding.ValidationRules>
<optionpanels:BaseAdressValidator />
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>-->
<!-- Hex binding -->
<TextBox Grid.Row="4" Grid.Column="2"
Text="{Binding DllBaseAdress, UpdateSourceTrigger=LostFocus}">
</TextBox>
<!-- location multibinding -->
<Label Grid.Row="6" Grid.ColumnSpan="2"
Content="{core:Localize Dialog.ProjectOptions.Build.BaseIntermediateOutputPath}"></Label>
<optionpanels:StorageLocationPicker Grid.Row="7"
Location="{Binding BaseIntermediateOutputPath.Location}"
DockPanel.Dock="Left" />
<TextBox x:Name="baseIntermediateOutputPathTextBox" Grid.Row="7" Grid.Column="1" Grid.ColumnSpan="3"
Text="{Binding BaseIntermediateOutputPath.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
<Button Grid.Row="7" Grid.Column="4" Margin="3,0,3,0"
Content="..."
VerticalAlignment="Center"
Command="{Binding BaseIntermediateOutputPathCommand}"></Button>
<Label Grid.Row="8" Grid.ColumnSpan="2" Content="{core:Localize Dialog.ProjectOptions.Build.IntermediateOutputPath}"></Label>
<optionpanels:StorageLocationPicker Grid.Row="9" DockPanel.Dock="Left"
Location="{Binding IntermediateOutputPath.Location}"/>
<TextBox x:Name="intermediateOutputPathTextBox" Grid.Row="9" Grid.Column="1" Grid.ColumnSpan="3"
Text="{Binding IntermediateOutputPath.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
<Button Grid.Row="9" Grid.Column="4" Margin="3,0,3,0"
Content="..."
VerticalAlignment="Center"
Command="{Binding IntermediateOutputPathCommand}"></Button>
</Grid>
</GroupBox>
</Grid>
</GroupBox>
<GroupBox Margin="0,8,0,0"
Header="{core:Localize Dialog.ProjectOptions.Build.TreatWarningsAsErrors}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Label Grid.Column="1" Content="{core:Localize Dialog.ProjectOptions.Build.WarningLevel}"></Label>
<!--x:Name="warningLevelComboBox"-->
<ComboBox Grid.Column="2" Width="40" VerticalAlignment="Center" HorizontalAlignment="Left"
ItemsSource="{Binding Path=DataContext.WarnLevel}"
SelectedValue="{Binding Path=WarningLevel.Value}"
DisplayMemberPath="DisplayValue"
SelectedValuePath="Key"
SelectedIndex="4"></ComboBox>
<optionpanels:StorageLocationPicker Grid.Row="1" Location="{Binding NoWarn.Location}" DockPanel.Dock="Left" />
<Label Grid.Row="1" Grid.Column="1"
Content="{core:Localize Dialog.ProjectOptions.Build.SuppressWarnings}"></Label>
<!--x:Name="suppressWarningsTextBox"-->
<TextBox Grid.Row="1" Grid.Column="2"
Text="{Binding NoWarn.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
</Grid>
</GroupBox>
<GroupBox Margin="0,8,0,0"
Header="{core:Localize Dialog.ProjectOptions.Build.ErrorsAndWarnings}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<optionpanels:StorageLocationPicker Grid.Row="1" Location="{Binding TreatWarningsAsErrors.Location}">
</optionpanels:StorageLocationPicker>
<RadioButton x:Name="noneRadioButton" Grid.Column="1" VerticalAlignment="Center" Margin="3,0,3,0"
Content="{core:Localize Dialog.ProjectOptions.Build.TreatWarningsAsErrors.None}"></RadioButton>
<RadioButton x:Name="specificWarningsRadioButton" Grid.Row="1" Grid.Column="1" VerticalAlignment="Center" Margin="3,0,3,0"
Content="{core:Localize Dialog.ProjectOptions.Build.TreatWarningsAsErrors.Specific}"></RadioButton>
<TextBox x:Name="specificWarningsTextBox" Grid.Row="1" Grid.Column="2" VerticalAlignment="Center"
Margin="3,0,3,0"
IsEnabled="{Binding ElementName=specificWarningsRadioButton, Path=IsChecked}"
Text="{Binding WarningsAsErrors.Value, UpdateSourceTrigger=PropertyChanged}"></TextBox>
<RadioButton x:Name="allRadioButton" Grid.Row="2" Grid.Column="1"
Margin="3,0,3,0"
VerticalAlignment="Center"
Content="{core:Localize Dialog.ProjectOptions.Build.TreatWarningsAsErrors.All}"></RadioButton>
</Grid>
</GroupBox>
</StackPanel>
</ScrollViewer>
</optionpanels:ProjectOptionPanel>