diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm
index bfc0a42753..c972ec65db 100644
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm
+++ b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Resources/CompilingOptionsPanel.xfrm
@@ -8,17 +8,34 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
@@ -26,29 +43,29 @@
-
-
+
+
-
+
-
+
-
+
\ No newline at end of file
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs
index e5b3739135..3d97e47828 100644
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs
+++ b/src/AddIns/BackendBindings/Python/PythonBinding/Project/Src/CompilingOptionsPanel.cs
@@ -28,6 +28,9 @@ namespace ICSharpCode.PythonBinding
b = BindBoolean("debugInfoCheckBox", "DebugInfo", false);
CreateLocationButton(b, "debugInfoCheckBox");
+
+ b = CreatePlatformTargetComboBox();
+ CreateLocationButton(b, "targetCpuComboBox");
AddConfigurationSelector(this);
}
@@ -82,5 +85,13 @@ namespace ICSharpCode.PythonBinding
{
helper.AddConfigurationSelector(control);
}
+
+ ///
+ /// Creates the platform target combo box.
+ ///
+ protected virtual ConfigurationGuiBinding CreatePlatformTargetComboBox()
+ {
+ return base.CreatePlatformTarget();
+ }
}
}
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/CompilingOptionsPanelTestFixture.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Test/CompilingOptionsPanelTestFixture.cs
index 4b0c34bcaa..e2c174716a 100644
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/CompilingOptionsPanelTestFixture.cs
+++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/CompilingOptionsPanelTestFixture.cs
@@ -117,6 +117,18 @@ namespace PythonBinding.Tests
Assert.IsTrue(compilingOptionsPanel.ConfigurationSelectorAddedToControl);
}
+ [Test]
+ public void TargetCpuComboxBoxAdded()
+ {
+ Assert.IsTrue(compilingOptionsPanel.IsTargetCpuComboBoxCreated);
+ }
+
+ [Test]
+ public void TargetCpuComboxBoxLocationButtonCreated()
+ {
+ Assert.IsTrue(compilingOptionsPanel.IsLocationButtonCreated("targetCpuComboBox"));
+ }
+
BrowseFolderButtonInfo GetOutputPathBrowseFolderInfo()
{
return compilingOptionsPanel.GetBrowseFolderButtonInfo("outputPathBrowseButton");
diff --git a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedCompilingOptionsPanel.cs b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedCompilingOptionsPanel.cs
index 0473085207..4ba740cc07 100644
--- a/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedCompilingOptionsPanel.cs
+++ b/src/AddIns/BackendBindings/Python/PythonBinding/Test/Utils/DerivedCompilingOptionsPanel.cs
@@ -28,6 +28,7 @@ namespace PythonBinding.Tests.Utils
Dictionary boundTextEditModes = new Dictionary();
List locationButtonsCreated = new List();
Dictionary browseFolderButtons = new Dictionary();
+ bool createdTargetCpuComboBox;
public DerivedCompilingOptionsPanel()
{
@@ -45,6 +46,13 @@ namespace PythonBinding.Tests.Utils
get { return setupFromManifestResourceName; }
}
+ ///
+ /// Returns whether the target cpu combo box was created.
+ ///
+ public bool IsTargetCpuComboBoxCreated {
+ get { return createdTargetCpuComboBox; }
+ }
+
///
/// Gets the name of the control that was bound to the specified
/// property.
@@ -142,6 +150,12 @@ namespace PythonBinding.Tests.Utils
return base.CreateLocationButton(binding, controlName);
}
+ protected override ConfigurationGuiBinding CreatePlatformTargetComboBox()
+ {
+ createdTargetCpuComboBox = true;
+ return base.CreatePlatformTargetComboBox();
+ }
+
///
/// Connects the browse folder button control to the target control.
///
diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/ProjectOptions/AbstractBuildOptions.cs b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/ProjectOptions/AbstractBuildOptions.cs
index 8ea3a4b7ed..fd52f30e34 100644
--- a/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/ProjectOptions/AbstractBuildOptions.cs
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/OptionPanels/ProjectOptions/AbstractBuildOptions.cs
@@ -197,6 +197,13 @@ namespace ICSharpCode.SharpDevelop.Gui.OptionPanels
b.DefaultLocation = PropertyStorageLocations.PlatformSpecific;
b.RegisterLocationButton(advancedLocationButton);
+ b = CreatePlatformTarget();
+ b.RegisterLocationButton(advancedLocationButton);
+ }
+
+ protected ConfigurationGuiBinding CreatePlatformTarget()
+ {
+ ConfigurationGuiBinding b;
b = helper.BindStringEnum("targetCpuComboBox", "PlatformTarget",
"AnyCPU",
new StringPair("AnyCPU", "${res:Dialog.ProjectOptions.Build.TargetCPU.Any}"),
@@ -204,9 +211,9 @@ namespace ICSharpCode.SharpDevelop.Gui.OptionPanels
new StringPair("x64", "${res:Dialog.ProjectOptions.Build.TargetCPU.x64}"),
new StringPair("Itanium", "${res:Dialog.ProjectOptions.Build.TargetCPU.Itanium}"));
b.DefaultLocation = PropertyStorageLocations.PlatformSpecific;
- b.RegisterLocationButton(advancedLocationButton);
+ return b;
}
-
+
void DebugSymbolsLoaded(object sender, EventArgs e)
{
PropertyStorageLocations location;