diff options
author | mike <mike@MikeMint.(none)> | 2011-12-07 13:05:02 +0400 |
---|---|---|
committer | mike <mike@MikeMint.(none)> | 2011-12-07 13:05:02 +0400 |
commit | 87d27c734423e471a070bb623f22ad032dc0712e (patch) | |
tree | 891905c29b4db49b79536b5b595619ef3cbd9a16 /extras/PyBinding | |
parent | 0a6165b66fc25da52aac29cc1560a8a525b94a81 (diff) | |
parent | c09cec9885e3a6ff81e9e87e1083dcc90372c321 (diff) |
Merge branch 'master' into newresolver
Conflicts:
extras/AspNetEdit/AspNetEdit.addin.xml
extras/AspNetEdit/configure
extras/BooBinding/BooBinding.addin.xml
extras/BooBinding/configure
extras/GeckoWebBrowser/MonoDevelop.WebBrowsers.GeckoWebBrowser.addin.xml
extras/GeckoWebBrowser/configure
extras/JavaBinding/JavaBinding.addin.xml
extras/JavaBinding/configure
extras/LuaBinding/LuaBinding.addin.xml
extras/MonoDevelop.AddinAuthoring/MonoDevelop.AddinAuthoring.addin.xml
extras/MonoDevelop.AddinAuthoring/configure
extras/MonoDevelop.CodeAnalysis/MonoDevelop.CodeAnalysis.Gendarme/MonoDevelop.CodeAnalysis.Gendarme.addin.xml
extras/MonoDevelop.CodeAnalysis/MonoDevelop.CodeAnalysis.Smokey/MonoDevelop.CodeAnalysis.Smokey.addin.xml
extras/MonoDevelop.CodeAnalysis/MonoDevelop.CodeAnalysis/MonoDevelop.CodeAnalysis.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.CodeGenerator/MonoDevelop.Database.CodeGenerator.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Components/MonoDevelop.Database.Components.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.ConnectionManager/MonoDevelop.Database.ConnectionManager.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Designer/MonoDevelop.Database.Designer.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Query/MonoDevelop.Database.Query.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Firebird/MonoDevelop.Database.Sql.Firebird.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.MySql/MonoDevelop.Database.Sql.MySql.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Npgsql/MonoDevelop.Database.Sql.Npgsql.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Odbc/MonoDevelop.Database.Sql.Odbc.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Oracle/MonoDevelop.Database.Sql.Oracle.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.SqlServer/MonoDevelop.Database.Sql.SqlServer.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Sqlite/MonoDevelop.Database.Sql.Sqlite.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql.Sybase/MonoDevelop.Database.Sql.Sybase.addin.xml
extras/MonoDevelop.Database/MonoDevelop.Database.Sql/MonoDevelop.Database.Sql.addin.xml
extras/MonoDevelop.Database/configure.in
extras/MonoDevelop.Debugger.Gdb/Manifest.addin.xml
extras/MonoDevelop.Debugger.Gdb/configure
extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb.AspNet/Manifest.addin.xml
extras/MonoDevelop.Debugger.Mdb/Mono.Debugging.Backend.Mdb/Manifest.addin.xml
extras/MonoDevelop.Debugger.Mdb/configure
extras/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32/MonoDevelop.Debugger.Win32.addin.xml
extras/MonoDevelop.MeeGo/MonoDevelop.MeeGo.addin.xml
extras/MonoDevelop.MeeGo/configure
extras/MonoDevelop.MonoMac/MonoDevelop.MonoMac/MonoDevelop.MonoMac.addin.xml
extras/MonoDevelop.MonoMac/configure
extras/MonoDevelop.Profiling/MonoDevelop.Profiling.HeapBuddy/MonoDevelop.Profiling.HeapBuddy.addin.xml
extras/MonoDevelop.Profiling/MonoDevelop.Profiling.HeapShot/MonoDevelop.Profiling.HeapShot.addin.xml
extras/MonoDevelop.Profiling/MonoDevelop.Profiling/MonoDevelop.Profiling.addin.xml
extras/MonoDevelop.Profiling/configure.in
extras/NemerleBinding/NemerleBinding.addin.xml
extras/OpenOfficeSamples/OpenOfficeSamples.addin.xml
extras/PyBinding/PyBinding/PyBinding.addin.xml
extras/PyBinding/configure
extras/ValaBinding/ValaBinding.addin.xml
extras/ValaBinding/configure.in
extras/VersionControl.Subversion.Win32/VersionControl.Subversion.Win32/Manifest.addin.xml
extras/WebKitWebBrowser/MonoDevelop.WebBrowsers.WebKitWebBrowser.addin.xml
extras/WebKitWebBrowser/configure
main/build/MacOSX/dmg-bg.png
main/build/MacOSX/dmg-bg.svg
main/build/MacOSX/release-info
main/configure.in
main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/MonoDevelop.AspNet.Mvc.addin.xml
main/src/addins/AspNet/MonoDevelop.AspNet/MonoDevelop.AspNet.addin.xml
main/src/addins/CBinding/CBinding.addin.xml
main/src/addins/CSharpBinding/CSharpBinding.addin.xml
main/src/addins/ChangeLogAddIn/ChangeLogAddIn.addin.xml
main/src/addins/Deployment/MonoDevelop.Deployment.Linux/MonoDevelop.Deployment.Linux.addin.xml
main/src/addins/Deployment/MonoDevelop.Deployment/MonoDevelop.Deployment.addin.xml
main/src/addins/GnomePlatform/GnomePlatform.addin.xml
main/src/addins/ILAsmBinding/ILAsmBinding.addin.xml
main/src/addins/MacPlatform/MacPlatform.addin.xml
main/src/addins/MonoDevelop.AnalysisCore/MonoDevelop.AnalysisCore.addin.xml
main/src/addins/MonoDevelop.AssemblyBrowser/MonoDevelop.AssemblyBrowser.addin.xml
main/src/addins/MonoDevelop.Autotools/MonoDevelop.Autotools.addin.xml
main/src/addins/MonoDevelop.CodeMetrics/MonoDevelop.CodeMetrics.addin.xml
main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/Manifest.addin.xml
main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.Moonlight/Manifest.addin.xml
main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/Manifest.addin.xml
main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger.addin.xml
main/src/addins/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.addin.xml
main/src/addins/MonoDevelop.DocFood/DocFood.addin.xml
main/src/addins/MonoDevelop.Gettext/MonoDevelop.Gettext.addin.xml
main/src/addins/MonoDevelop.GtkCore/MonoDevelop.GtkCore.addin.xml
main/src/addins/MonoDevelop.GtkCore2/MonoDevelop.GtkCore2.addin.xml
main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.addin.xml
main/src/addins/MonoDevelop.HexEditor/MonoDevelop.HexEditor.csproj
main/src/addins/MonoDevelop.MacDev/MonoDevelop.MacDev.addin.xml
main/src/addins/MonoDevelop.MacDev/XcodeInterfaceBuilderDisplayBinding.cs
main/src/addins/MonoDevelop.Moonlight/MonoDevelop.Moonlight.addin.xml
main/src/addins/MonoDevelop.ProfilerGui/MonoDevelop.Profiler.addin.xml
main/src/addins/MonoDevelop.Refactoring/MonoDevelop.Refactoring.addin.xml
main/src/addins/MonoDevelop.RegexToolkit/MonoDevelop.RegexToolkit.addin.xml
main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor.addin.xml
main/src/addins/MonoDevelop.WebReferences/MonoDevelop.WebReferences.addin.xml
main/src/addins/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.addin.xml
main/src/addins/MonoDeveloperExtensions/MonoDeveloperExtensions.addin.xml
main/src/addins/NUnit/MonoDevelopNUnit.addin.xml
main/src/addins/TextTemplating/MonoDevelop.TextTemplating/MonoDevelop.TextTemplating.addin.xml
main/src/addins/VBNetBinding/VBNetBinding.addin.xml
main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git.addin.xml
main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion.Unix/MonoDevelop.VersionControl.Subversion.Unix.addin.xml
main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/MonoDevelop.VersionControl.Subversion.addin.xml
main/src/addins/VersionControl/MonoDevelop.VersionControl/VersionControl.addin.xml
main/src/addins/WindowsPlatform/WindowsPlatform.addin.xml
main/src/addins/prj2make-sharp-lib/prj2make-sharp-lib.addin.xml
main/src/core/MonoDevelop.Core/MonoDevelop.Core.addin.xml
main/src/core/MonoDevelop.Ide/BuildVariables.cs
main/src/core/MonoDevelop.Ide/ExtensionModel/MonoDevelop.Ide.addin.xml
main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.FindInFiles/ReferencesFinder.cs
version-checks
Diffstat (limited to 'extras/PyBinding')
17 files changed, 396 insertions, 123 deletions
diff --git a/extras/PyBinding/Makefile b/extras/PyBinding/Makefile index 18396363f0..32d56f11de 100644 --- a/extras/PyBinding/Makefile +++ b/extras/PyBinding/Makefile @@ -56,7 +56,6 @@ dist: $(CONFIG_MAKE) esac \ done (make dist-local distdir=$(PACKAGE)-$(VERSION)) - make make post-dist-hook "distsir=$$distdir" tar czvf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION) rm -rf $(PACKAGE)-$(VERSION) diff --git a/extras/PyBinding/PyBinding/Makefile b/extras/PyBinding/PyBinding/Makefile index 31c563a9b0..f2f98f2fc8 100644 --- a/extras/PyBinding/PyBinding/Makefile +++ b/extras/PyBinding/PyBinding/Makefile @@ -88,9 +88,11 @@ FILES = \ PyBinding.Parser/PythonResolver.cs \ PyBinding.Runtime/AbstractPythonRuntime.cs \ PyBinding.Runtime/IPythonRuntime.cs \ + PyBinding.Runtime/IronPythonRuntime.cs \ PyBinding.Runtime/Python25Runtime.cs \ PyBinding.Runtime/Python26Runtime.cs \ PyBinding.Runtime/Python27Runtime.cs \ + PyBinding/IronPythonExecutionHandler.cs \ PyBinding/PythonConfiguration.cs \ PyBinding/PythonExecutionCommand.cs \ PyBinding/PythonExecutionHandler.cs \ diff --git a/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsPanel.cs b/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsPanel.cs index deb787bf18..88258c98b5 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsPanel.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsPanel.cs @@ -53,9 +53,12 @@ namespace PyBinding.Gui { PythonConfiguration config = CurrentConfiguration as PythonConfiguration; + var runtime = widget.Runtime; + runtime.Path = widget.RuntimePath; + + config.Runtime = runtime; config.Module = widget.DefaultModule; config.Optimize = widget.Optimize; - config.Runtime = widget.Runtime; config.PythonOptions = widget.PythonOptions; var paths = new List<string> (widget.PythonPaths); diff --git a/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsWidget.cs b/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsWidget.cs index 5739f1261c..06fda7b544 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsWidget.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsWidget.cs @@ -60,6 +60,11 @@ namespace PyBinding.Gui m_RuntimeListStore.AppendValues ("Python 2.5", typeof (Python25Runtime)); m_RuntimeListStore.AppendValues ("Python 2.6", typeof (Python26Runtime)); m_RuntimeListStore.AppendValues ("Python 2.7", typeof (Python27Runtime)); + m_RuntimeListStore.AppendValues ("IronPython", typeof (IronPythonRuntime)); + + m_RuntimeCombo.Changed += delegate { + m_RuntimeFileEntry.Path = String.Empty; + }; } public string DefaultModule { @@ -131,12 +136,19 @@ namespace PyBinding.Gui Type t = this.m_RuntimeListStore.GetValue (iter, 1) as Type; if (t == value.GetType ()) { this.m_RuntimeCombo.SetActiveIter (iter); + this.m_RuntimeFileEntry.Path = value.Path; break; } } while (m_RuntimeListStore.IterNext (ref iter)); } } } + + public string RuntimePath { + get { + return m_RuntimeFileEntry.Path; + } + } protected virtual void AddPath_Clicked (object sender, System.EventArgs e) { diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/AbstractPythonRuntime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/AbstractPythonRuntime.cs index aabc0d3ab7..417748f03c 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Runtime/AbstractPythonRuntime.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/AbstractPythonRuntime.cs @@ -28,6 +28,7 @@ using System.Text; using MonoDevelop.Core; using MonoDevelop.Core.Serialization; +using MonoDevelop.Core.Execution; using MonoDevelop.Projects; using PyBinding; @@ -66,6 +67,7 @@ namespace PyBinding.Runtime public abstract object Clone (); public abstract string[] GetArguments (PythonConfiguration config); + public abstract IExecutionHandler GetExecutionHandler (); protected virtual string Resolve (string commandName) { diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/IPythonRuntime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/IPythonRuntime.cs index 3c1696d1c1..7a93c7b31b 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Runtime/IPythonRuntime.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/IPythonRuntime.cs @@ -21,6 +21,7 @@ // THE SOFTWARE. using System; +using MonoDevelop.Core.Execution; using PyBinding.Compiler; @@ -59,6 +60,11 @@ namespace PyBinding.Runtime } /// <summary> + /// Gets the associated execution handler for this specific runtime. + /// </summary> + IExecutionHandler GetExecutionHandler (); + + /// <summary> /// Builds a list of arguments to pass to the runtime for running /// a project with the passed configuration. /// </summary> diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/IronPythonRuntime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/IronPythonRuntime.cs new file mode 100644 index 0000000000..cc937b1928 --- /dev/null +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/IronPythonRuntime.cs @@ -0,0 +1,96 @@ +// IronPythonRuntime.cs +// +// Copyright (c) 2011 Carlos Alberto Cortez <calberto.cortez@gmail.com> +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. +using System; +using System.Collections.Generic; +using MonoDevelop.Core; +using MonoDevelop.Core.Execution; +using MonoDevelop.Core.Serialization; +using MonoDevelop.Projects; + +using PyBinding.Compiler; + +namespace PyBinding.Runtime +{ + public class IronPythonRuntime : AbstractPythonRuntime + { + static readonly string RuntimeName = "IronPython"; + + [ItemProperty ("path")] + string path = String.Empty; + + public override IPythonCompiler Compiler { + get { + return null; + } + } + + public override string Name { + get { + return RuntimeName; + } + } + + public override string Path { + get { + if (String.IsNullOrEmpty (path)) + path = Resolve ("ipy.exe"); + + return path; + } + set { + path = value; + } + } + + public override object Clone () + { + return new IronPythonRuntime () { + Path = path + }; + } + + IExecutionHandler handler; + + public override IExecutionHandler GetExecutionHandler () + { + if (handler == null) + handler = new IronPythonExecutionHandler (); + + return handler; + } + + + public override string[] GetArguments (PythonConfiguration config) + { + var args = new List<string> (); + + if (!String.IsNullOrEmpty (config.Module)) + args.Add (System.IO.Path.ChangeExtension (config.Module, "py")); + + if (!String.IsNullOrEmpty (config.CommandLineParameters)) + args.Add (config.CommandLineParameters); + + return args.ToArray (); + } + } +} + diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python25Runtime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python25Runtime.cs index 2235a0d838..0813ef9722 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python25Runtime.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python25Runtime.cs @@ -25,6 +25,7 @@ using System.Collections.Generic; using System.IO; using MonoDevelop.Core; +using MonoDevelop.Core.Execution; using MonoDevelop.Projects; using MonoDevelop.Core.Serialization; using MonoDevelop.Projects.CodeGeneration; @@ -81,6 +82,16 @@ namespace PyBinding.Runtime }; } + IExecutionHandler handler; + + public override IExecutionHandler GetExecutionHandler () + { + if (handler == null) + handler = new CPythonExecutionHandler (); + + return handler; + } + public override string[] GetArguments (PythonConfiguration config) { List<string> args = new List<string> (); diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python26Runtime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python26Runtime.cs index 346718bb83..f044fb4fa5 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python26Runtime.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python26Runtime.cs @@ -25,6 +25,7 @@ using System.Collections.Generic; using System.IO; using MonoDevelop.Core; +using MonoDevelop.Core.Execution; using MonoDevelop.Projects; using MonoDevelop.Core.Serialization; using MonoDevelop.Projects.CodeGeneration; @@ -81,6 +82,16 @@ namespace PyBinding.Runtime Path = this.Path }; } + + IExecutionHandler handler; + + public override IExecutionHandler GetExecutionHandler () + { + if (handler == null) + handler = new CPythonExecutionHandler (); + + return handler; + } public override string[] GetArguments (PythonConfiguration config) { diff --git a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python27Runtime.cs b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python27Runtime.cs index 27260a34e7..860aed7120 100644 --- a/extras/PyBinding/PyBinding/PyBinding.Runtime/Python27Runtime.cs +++ b/extras/PyBinding/PyBinding/PyBinding.Runtime/Python27Runtime.cs @@ -26,6 +26,7 @@ using System.Collections.Generic; using System.IO; using MonoDevelop.Core; +using MonoDevelop.Core.Execution; using MonoDevelop.Projects; using MonoDevelop.Core.Serialization; using MonoDevelop.Projects.CodeGeneration; @@ -82,6 +83,16 @@ namespace PyBinding.Runtime Path = this.Path }; } + + IExecutionHandler handler; + + public override IExecutionHandler GetExecutionHandler () + { + if (handler == null) + handler = new CPythonExecutionHandler (); + + return handler; + } public override string[] GetArguments (PythonConfiguration config) { diff --git a/extras/PyBinding/PyBinding/PyBinding.addin.xml b/extras/PyBinding/PyBinding/PyBinding.addin.xml index e2f846118e..e54d186fa1 100644 --- a/extras/PyBinding/PyBinding/PyBinding.addin.xml +++ b/extras/PyBinding/PyBinding/PyBinding.addin.xml @@ -99,6 +99,7 @@ <DataType class = "PyBinding.Runtime.Python25Runtime"/> <DataType class = "PyBinding.Runtime.Python26Runtime"/> <DataType class = "PyBinding.Runtime.Python27Runtime"/> + <DataType class = "PyBinding.Runtime.IronPythonRuntime"/> <DataType class = "PyBinding.Compiler.Python25Compiler"/> </Extension> diff --git a/extras/PyBinding/PyBinding/PyBinding.csproj b/extras/PyBinding/PyBinding/PyBinding.csproj index 95d5ee4570..364fc4382e 100644 --- a/extras/PyBinding/PyBinding/PyBinding.csproj +++ b/extras/PyBinding/PyBinding/PyBinding.csproj @@ -183,6 +183,8 @@ <Compile Include="PyBinding.Parser\PythonResolver.cs" /> <Compile Include="PyBinding.Parser\PythonExpressionFinder.cs" /> <Compile Include="PyBinding.Runtime\Python27Runtime.cs" /> + <Compile Include="PyBinding.Runtime\IronPythonRuntime.cs" /> + <Compile Include="PyBinding\IronPythonExecutionHandler.cs" /> </ItemGroup> <ItemGroup> <EmbeddedResource Include="Resources\EmptyPyProject.xpt.xml"> @@ -245,4 +247,4 @@ </Properties> </MonoDevelop> </ProjectExtensions> -</Project>
\ No newline at end of file +</Project> diff --git a/extras/PyBinding/PyBinding/PyBinding/IronPythonExecutionHandler.cs b/extras/PyBinding/PyBinding/PyBinding/IronPythonExecutionHandler.cs new file mode 100644 index 0000000000..2d066bc59c --- /dev/null +++ b/extras/PyBinding/PyBinding/PyBinding/IronPythonExecutionHandler.cs @@ -0,0 +1,51 @@ +// IronPythonExecutionHandler.cs +// +// Copyright (c) 2011 Carlos Alberto Cortez <calberto.cortez@gmail.com> +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +using System; +using System.IO; +using MonoDevelop.Core; +using MonoDevelop.Core.Execution; + +using PyBinding.Runtime; + +namespace PyBinding +{ + public class IronPythonExecutionHandler : IExecutionHandler + { + public bool CanExecute (ExecutionCommand command) + { + return command is PythonExecutionCommand; + } + + public IProcessAsyncOperation Execute (ExecutionCommand command, IConsole console) + { + var config = ((PythonExecutionCommand)command).Configuration; + var runtime = (IronPythonRuntime)config.Runtime; + + var args = runtime.GetArguments (config); + string dir = Path.GetFullPath (config.ParentItem.BaseDirectory); + + var cmd = new DotNetExecutionCommand (runtime.Path, String.Join (" ", args), dir, config.EnvironmentVariables); + return cmd.TargetRuntime.GetExecutionHandler ().Execute (cmd, console); + } + } +} diff --git a/extras/PyBinding/PyBinding/PyBinding/PythonExecutionHandler.cs b/extras/PyBinding/PyBinding/PyBinding/PythonExecutionHandler.cs index e9a4b9ce06..dd718f880b 100644 --- a/extras/PyBinding/PyBinding/PyBinding/PythonExecutionHandler.cs +++ b/extras/PyBinding/PyBinding/PyBinding/PythonExecutionHandler.cs @@ -30,7 +30,23 @@ using MonoDevelop.Core.Execution; namespace PyBinding { - public class PythonExecutionHandler: NativePlatformExecutionHandler + public class PythonExecutionHandler: IExecutionHandler + { + public bool CanExecute (ExecutionCommand command) + { + return command is PythonExecutionCommand; + } + + public IProcessAsyncOperation Execute (ExecutionCommand command, IConsole console) + { + var config = ((PythonExecutionCommand)command).Configuration; + return config.Runtime.GetExecutionHandler ().Execute (command, console); + } + + } + + // This is our default handler (used by Python2.5/2.6/2.7) + public class CPythonExecutionHandler : NativePlatformExecutionHandler { public override bool CanExecute (ExecutionCommand command) { @@ -38,11 +54,11 @@ namespace PyBinding } public override IProcessAsyncOperation Execute (ExecutionCommand command, IConsole console) - { + { PythonExecutionCommand cmd = (PythonExecutionCommand) command; string[] args = cmd.Configuration.Runtime.GetArguments (cmd.Configuration); - string dir = Path.GetFullPath (cmd.Configuration.OutputDirectory); + string dir = Path.GetFullPath (cmd.Configuration.OutputDirectory); NativeExecutionCommand ncmd = new NativeExecutionCommand (cmd.Configuration.Runtime.Path, string.Join (" ", args), dir, cmd.Configuration.EnvironmentVariables); return base.Execute (ncmd, console); diff --git a/extras/PyBinding/PyBinding/PyBinding/PythonHelper.cs b/extras/PyBinding/PyBinding/PyBinding/PythonHelper.cs index 194755229c..7fb3cb575d 100644 --- a/extras/PyBinding/PyBinding/PyBinding/PythonHelper.cs +++ b/extras/PyBinding/PyBinding/PyBinding/PythonHelper.cs @@ -129,6 +129,13 @@ namespace PyBinding } catch {} + try { + return new IronPythonRuntime () { + Path = Which ("ipy.exe") + }; + } + catch {} + // look for "python" and what version it is return null; @@ -145,4 +152,4 @@ namespace PyBinding throw new FileNotFoundException ("Could not locate python executable"); } } -}
\ No newline at end of file +} diff --git a/extras/PyBinding/PyBinding/gtk-gui/PyBinding.Gui.PythonOptionsWidget.cs b/extras/PyBinding/PyBinding/gtk-gui/PyBinding.Gui.PythonOptionsWidget.cs index b50687ed13..ac6a20136c 100644 --- a/extras/PyBinding/PyBinding/gtk-gui/PyBinding.Gui.PythonOptionsWidget.cs +++ b/extras/PyBinding/PyBinding/gtk-gui/PyBinding.Gui.PythonOptionsWidget.cs @@ -5,41 +5,26 @@ namespace PyBinding.Gui public partial class PythonOptionsWidget { private global::Gtk.VBox vbox1; - private global::Gtk.Label label1; - private global::Gtk.Alignment alignment1; - private global::Gtk.Table table1; - + private global::Gtk.Label label2; private global::Gtk.Label label4; - private global::Gtk.Label label5; - private global::Gtk.Entry m_ModuleEntry; - private global::Gtk.CheckButton m_OptimizeCheckBox; - private global::Gtk.Entry m_PythonOptions; - private global::Gtk.ComboBox m_RuntimeCombo; - + private global::MonoDevelop.Components.FileEntry m_RuntimeFileEntry; private global::Gtk.Label label3; - private global::Gtk.Alignment alignment2; - private global::Gtk.HBox hbox1; - private global::Gtk.ScrolledWindow scrolledwindow1; - private global::Gtk.TreeView m_PathsTreeView; - private global::Gtk.VBox vbox2; - private global::Gtk.Button m_AddPathButton; - private global::Gtk.Button m_RemovePathButton; - + protected virtual void Build () { global::Stetic.Gui.Initialize (this); @@ -53,45 +38,55 @@ namespace PyBinding.Gui // Container child vbox1.Gtk.Box+BoxChild this.label1 = new global::Gtk.Label (); this.label1.Name = "label1"; - this.label1.Xalign = 0f; + this.label1.Xalign = 0F; this.label1.LabelProp = global::Mono.Unix.Catalog.GetString ("<span weight=\"bold\">Runtime</span>"); this.label1.UseMarkup = true; this.vbox1.Add (this.label1); - global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.label1])); + global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label1])); w1.Position = 0; w1.Expand = false; w1.Fill = false; // Container child vbox1.Gtk.Box+BoxChild - this.alignment1 = new global::Gtk.Alignment (0.5f, 0.5f, 1f, 1f); + this.alignment1 = new global::Gtk.Alignment (0.5F, 0.5F, 1F, 1F); this.alignment1.Name = "alignment1"; this.alignment1.LeftPadding = ((uint)(12)); // Container child alignment1.Gtk.Container+ContainerChild - this.table1 = new global::Gtk.Table (((uint)(5)), ((uint)(2)), false); + this.table1 = new global::Gtk.Table (((uint)(6)), ((uint)(2)), false); this.table1.Name = "table1"; this.table1.RowSpacing = ((uint)(6)); this.table1.ColumnSpacing = ((uint)(6)); // Container child table1.Gtk.Table+TableChild + this.label2 = new global::Gtk.Label (); + this.label2.Name = "label2"; + this.label2.LabelProp = global::Mono.Unix.Catalog.GetString ("Runtime location:"); + this.table1.Add (this.label2); + global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1 [this.label2])); + w2.TopAttach = ((uint)(1)); + w2.BottomAttach = ((uint)(2)); + w2.XOptions = ((global::Gtk.AttachOptions)(4)); + w2.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table1.Gtk.Table+TableChild this.label4 = new global::Gtk.Label (); this.label4.Name = "label4"; this.label4.LabelProp = global::Mono.Unix.Catalog.GetString ("Python _Options:"); this.label4.UseUnderline = true; this.table1.Add (this.label4); - global::Gtk.Table.TableChild w2 = ((global::Gtk.Table.TableChild)(this.table1[this.label4])); - w2.TopAttach = ((uint)(1)); - w2.BottomAttach = ((uint)(2)); - w2.XOptions = ((global::Gtk.AttachOptions)(4)); - w2.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1 [this.label4])); + w3.TopAttach = ((uint)(2)); + w3.BottomAttach = ((uint)(3)); + w3.XOptions = ((global::Gtk.AttachOptions)(4)); + w3.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.label5 = new global::Gtk.Label (); this.label5.Name = "label5"; this.label5.LabelProp = global::Mono.Unix.Catalog.GetString ("Default _Module:"); this.label5.UseUnderline = true; this.table1.Add (this.label5); - global::Gtk.Table.TableChild w3 = ((global::Gtk.Table.TableChild)(this.table1[this.label5])); - w3.TopAttach = ((uint)(2)); - w3.BottomAttach = ((uint)(3)); - w3.XOptions = ((global::Gtk.AttachOptions)(4)); - w3.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1 [this.label5])); + w4.TopAttach = ((uint)(3)); + w4.BottomAttach = ((uint)(4)); + w4.XOptions = ((global::Gtk.AttachOptions)(4)); + w4.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.m_ModuleEntry = new global::Gtk.Entry (); this.m_ModuleEntry.CanFocus = true; @@ -99,12 +94,12 @@ namespace PyBinding.Gui this.m_ModuleEntry.IsEditable = true; this.m_ModuleEntry.InvisibleChar = '●'; this.table1.Add (this.m_ModuleEntry); - global::Gtk.Table.TableChild w4 = ((global::Gtk.Table.TableChild)(this.table1[this.m_ModuleEntry])); - w4.TopAttach = ((uint)(2)); - w4.BottomAttach = ((uint)(3)); - w4.LeftAttach = ((uint)(1)); - w4.RightAttach = ((uint)(2)); - w4.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1 [this.m_ModuleEntry])); + w5.TopAttach = ((uint)(3)); + w5.BottomAttach = ((uint)(4)); + w5.LeftAttach = ((uint)(1)); + w5.RightAttach = ((uint)(2)); + w5.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.m_OptimizeCheckBox = new global::Gtk.CheckButton (); this.m_OptimizeCheckBox.CanFocus = true; @@ -113,11 +108,11 @@ namespace PyBinding.Gui this.m_OptimizeCheckBox.DrawIndicator = true; this.m_OptimizeCheckBox.UseUnderline = true; this.table1.Add (this.m_OptimizeCheckBox); - global::Gtk.Table.TableChild w5 = ((global::Gtk.Table.TableChild)(this.table1[this.m_OptimizeCheckBox])); - w5.TopAttach = ((uint)(3)); - w5.BottomAttach = ((uint)(4)); - w5.RightAttach = ((uint)(2)); - w5.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table1 [this.m_OptimizeCheckBox])); + w6.TopAttach = ((uint)(4)); + w6.BottomAttach = ((uint)(5)); + w6.RightAttach = ((uint)(2)); + w6.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.m_PythonOptions = new global::Gtk.Entry (); this.m_PythonOptions.CanFocus = true; @@ -125,39 +120,50 @@ namespace PyBinding.Gui this.m_PythonOptions.IsEditable = true; this.m_PythonOptions.InvisibleChar = '●'; this.table1.Add (this.m_PythonOptions); - global::Gtk.Table.TableChild w6 = ((global::Gtk.Table.TableChild)(this.table1[this.m_PythonOptions])); - w6.TopAttach = ((uint)(1)); - w6.BottomAttach = ((uint)(2)); - w6.LeftAttach = ((uint)(1)); - w6.RightAttach = ((uint)(2)); - w6.XOptions = ((global::Gtk.AttachOptions)(4)); - w6.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table1 [this.m_PythonOptions])); + w7.TopAttach = ((uint)(2)); + w7.BottomAttach = ((uint)(3)); + w7.LeftAttach = ((uint)(1)); + w7.RightAttach = ((uint)(2)); + w7.XOptions = ((global::Gtk.AttachOptions)(4)); + w7.YOptions = ((global::Gtk.AttachOptions)(4)); // Container child table1.Gtk.Table+TableChild this.m_RuntimeCombo = global::Gtk.ComboBox.NewText (); this.m_RuntimeCombo.Name = "m_RuntimeCombo"; this.table1.Add (this.m_RuntimeCombo); - global::Gtk.Table.TableChild w7 = ((global::Gtk.Table.TableChild)(this.table1[this.m_RuntimeCombo])); - w7.RightAttach = ((uint)(2)); - w7.XOptions = ((global::Gtk.AttachOptions)(4)); - w7.YOptions = ((global::Gtk.AttachOptions)(4)); + global::Gtk.Table.TableChild w8 = ((global::Gtk.Table.TableChild)(this.table1 [this.m_RuntimeCombo])); + w8.RightAttach = ((uint)(2)); + w8.XOptions = ((global::Gtk.AttachOptions)(4)); + w8.YOptions = ((global::Gtk.AttachOptions)(4)); + // Container child table1.Gtk.Table+TableChild + this.m_RuntimeFileEntry = new global::MonoDevelop.Components.FileEntry (); + this.m_RuntimeFileEntry.Name = "m_RuntimeFileEntry"; + this.table1.Add (this.m_RuntimeFileEntry); + global::Gtk.Table.TableChild w9 = ((global::Gtk.Table.TableChild)(this.table1 [this.m_RuntimeFileEntry])); + w9.TopAttach = ((uint)(1)); + w9.BottomAttach = ((uint)(2)); + w9.LeftAttach = ((uint)(1)); + w9.RightAttach = ((uint)(2)); + w9.XOptions = ((global::Gtk.AttachOptions)(4)); + w9.YOptions = ((global::Gtk.AttachOptions)(4)); this.alignment1.Add (this.table1); this.vbox1.Add (this.alignment1); - global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.alignment1])); - w9.Position = 1; - w9.Expand = false; + global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.alignment1])); + w11.Position = 1; + w11.Expand = false; // Container child vbox1.Gtk.Box+BoxChild this.label3 = new global::Gtk.Label (); this.label3.Name = "label3"; - this.label3.Xalign = 0f; + this.label3.Xalign = 0F; this.label3.LabelProp = global::Mono.Unix.Catalog.GetString ("<span weight=\"bold\">Module Paths</span>"); this.label3.UseMarkup = true; this.vbox1.Add (this.label3); - global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.label3])); - w10.Position = 2; - w10.Expand = false; - w10.Fill = false; + global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.label3])); + w12.Position = 2; + w12.Expand = false; + w12.Fill = false; // Container child vbox1.Gtk.Box+BoxChild - this.alignment2 = new global::Gtk.Alignment (0.5f, 0.5f, 1f, 1f); + this.alignment2 = new global::Gtk.Alignment (0.5F, 0.5F, 1F, 1F); this.alignment2.Name = "alignment2"; this.alignment2.LeftPadding = ((uint)(12)); // Container child alignment2.Gtk.Container+ContainerChild @@ -170,17 +176,17 @@ namespace PyBinding.Gui this.scrolledwindow1.Name = "scrolledwindow1"; this.scrolledwindow1.ShadowType = ((global::Gtk.ShadowType)(1)); // Container child scrolledwindow1.Gtk.Container+ContainerChild - global::Gtk.Viewport w11 = new global::Gtk.Viewport (); - w11.ShadowType = ((global::Gtk.ShadowType)(0)); + global::Gtk.Viewport w13 = new global::Gtk.Viewport (); + w13.ShadowType = ((global::Gtk.ShadowType)(0)); // Container child GtkViewport.Gtk.Container+ContainerChild this.m_PathsTreeView = new global::Gtk.TreeView (); this.m_PathsTreeView.CanFocus = true; this.m_PathsTreeView.Name = "m_PathsTreeView"; - w11.Add (this.m_PathsTreeView); - this.scrolledwindow1.Add (w11); + w13.Add (this.m_PathsTreeView); + this.scrolledwindow1.Add (w13); this.hbox1.Add (this.scrolledwindow1); - global::Gtk.Box.BoxChild w14 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.scrolledwindow1])); - w14.Position = 0; + global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.scrolledwindow1])); + w16.Position = 0; // Container child hbox1.Gtk.Box+BoxChild this.vbox2 = new global::Gtk.VBox (); this.vbox2.Name = "vbox2"; @@ -193,10 +199,10 @@ namespace PyBinding.Gui this.m_AddPathButton.UseUnderline = true; this.m_AddPathButton.Label = "gtk-add"; this.vbox2.Add (this.m_AddPathButton); - global::Gtk.Box.BoxChild w15 = ((global::Gtk.Box.BoxChild)(this.vbox2[this.m_AddPathButton])); - w15.Position = 0; - w15.Expand = false; - w15.Fill = false; + global::Gtk.Box.BoxChild w17 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.m_AddPathButton])); + w17.Position = 0; + w17.Expand = false; + w17.Fill = false; // Container child vbox2.Gtk.Box+BoxChild this.m_RemovePathButton = new global::Gtk.Button (); this.m_RemovePathButton.Sensitive = false; @@ -206,23 +212,24 @@ namespace PyBinding.Gui this.m_RemovePathButton.UseUnderline = true; this.m_RemovePathButton.Label = "gtk-remove"; this.vbox2.Add (this.m_RemovePathButton); - global::Gtk.Box.BoxChild w16 = ((global::Gtk.Box.BoxChild)(this.vbox2[this.m_RemovePathButton])); - w16.Position = 1; - w16.Expand = false; - w16.Fill = false; + global::Gtk.Box.BoxChild w18 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.m_RemovePathButton])); + w18.Position = 1; + w18.Expand = false; + w18.Fill = false; this.hbox1.Add (this.vbox2); - global::Gtk.Box.BoxChild w17 = ((global::Gtk.Box.BoxChild)(this.hbox1[this.vbox2])); - w17.Position = 1; - w17.Expand = false; - w17.Fill = false; + global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox2])); + w19.Position = 1; + w19.Expand = false; + w19.Fill = false; this.alignment2.Add (this.hbox1); this.vbox1.Add (this.alignment2); - global::Gtk.Box.BoxChild w19 = ((global::Gtk.Box.BoxChild)(this.vbox1[this.alignment2])); - w19.Position = 3; + global::Gtk.Box.BoxChild w21 = ((global::Gtk.Box.BoxChild)(this.vbox1 [this.alignment2])); + w21.Position = 3; this.Add (this.vbox1); if ((this.Child != null)) { this.Child.ShowAll (); } + this.label2.MnemonicWidget = this.alignment2; this.label4.MnemonicWidget = this.m_PythonOptions; this.label5.MnemonicWidget = this.m_ModuleEntry; this.Show (); diff --git a/extras/PyBinding/PyBinding/gtk-gui/gui.stetic b/extras/PyBinding/PyBinding/gtk-gui/gui.stetic index d849edb1b8..36ebd72825 100644 --- a/extras/PyBinding/PyBinding/gtk-gui/gui.stetic +++ b/extras/PyBinding/PyBinding/gtk-gui/gui.stetic @@ -6,28 +6,24 @@ </configuration> <import> <widget-library name="Mono.TextEditor, Version=1.0.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Gettext, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Ide, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Projects.Gui, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Components, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.GtkCore, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Core.Gui, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Autotools, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.SourceEditor2, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Debugger, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Refactoring, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.VersionControl, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.NUnit, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.XmlEditor, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.AspNet, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Deployment, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Deployment.Linux, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.DesignerSupport, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.VBNetBinding, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.CBinding, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.CSharpBinding, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Moonlight, Version=2.2.0.0, Culture=neutral" /> - <widget-library name="MonoDevelop.Debugger.Soft, Version=2.2.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Gettext, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Ide, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.GtkCore, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.SourceEditor2, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Debugger, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Refactoring, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.VersionControl, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.NUnit, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.XmlEditor, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.AspNet, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Deployment, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Deployment.Linux, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.DesignerSupport, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.VBNetBinding, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.CBinding, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.CSharpBinding, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Moonlight, Version=2.6.0.0, Culture=neutral" /> + <widget-library name="MonoDevelop.Debugger.Soft, Version=2.6.0.0, Culture=neutral" /> <widget-library name="../../build/PyBinding.dll" internal="true" /> </import> <widget class="Gtk.Bin" id="PyBinding.Gui.PythonOptionsWidget" design-size="491 382"> @@ -57,7 +53,7 @@ <child> <widget class="Gtk.Table" id="table1"> <property name="MemberName" /> - <property name="NRows">5</property> + <property name="NRows">6</property> <property name="NColumns">2</property> <property name="RowSpacing">6</property> <property name="ColumnSpacing">6</property> @@ -68,6 +64,26 @@ <placeholder /> </child> <child> + <widget class="Gtk.Label" id="label2"> + <property name="MemberName" /> + <property name="LabelProp" translatable="yes">Runtime location:</property> + <property name="MnemonicWidget">alignment2</property> + </widget> + <packing> + <property name="TopAttach">1</property> + <property name="BottomAttach">2</property> + <property name="AutoSize">True</property> + <property name="XOptions">Fill</property> + <property name="YOptions">Fill</property> + <property name="XExpand">False</property> + <property name="XFill">True</property> + <property name="XShrink">False</property> + <property name="YExpand">False</property> + <property name="YFill">True</property> + <property name="YShrink">False</property> + </packing> + </child> + <child> <widget class="Gtk.Label" id="label4"> <property name="MemberName" /> <property name="LabelProp" translatable="yes">Python _Options:</property> @@ -75,8 +91,8 @@ <property name="MnemonicWidget">m_PythonOptions</property> </widget> <packing> - <property name="TopAttach">1</property> - <property name="BottomAttach">2</property> + <property name="TopAttach">2</property> + <property name="BottomAttach">3</property> <property name="AutoSize">True</property> <property name="XOptions">Fill</property> <property name="YOptions">Fill</property> @@ -96,8 +112,8 @@ <property name="MnemonicWidget">m_ModuleEntry</property> </widget> <packing> - <property name="TopAttach">2</property> - <property name="BottomAttach">3</property> + <property name="TopAttach">3</property> + <property name="BottomAttach">4</property> <property name="AutoSize">False</property> <property name="XOptions">Fill</property> <property name="YOptions">Fill</property> @@ -117,8 +133,8 @@ <property name="InvisibleChar">●</property> </widget> <packing> - <property name="TopAttach">2</property> - <property name="BottomAttach">3</property> + <property name="TopAttach">3</property> + <property name="BottomAttach">4</property> <property name="LeftAttach">1</property> <property name="RightAttach">2</property> <property name="AutoSize">False</property> @@ -141,8 +157,8 @@ <property name="UseUnderline">True</property> </widget> <packing> - <property name="TopAttach">3</property> - <property name="BottomAttach">4</property> + <property name="TopAttach">4</property> + <property name="BottomAttach">5</property> <property name="RightAttach">2</property> <property name="AutoSize">False</property> <property name="YOptions">Fill</property> @@ -162,8 +178,8 @@ <property name="InvisibleChar">●</property> </widget> <packing> - <property name="TopAttach">1</property> - <property name="BottomAttach">2</property> + <property name="TopAttach">2</property> + <property name="BottomAttach">3</property> <property name="LeftAttach">1</property> <property name="RightAttach">2</property> <property name="AutoSize">True</property> @@ -196,6 +212,26 @@ <property name="YShrink">False</property> </packing> </child> + <child> + <widget class="MonoDevelop.Components.FileEntry" id="m_RuntimeFileEntry"> + <property name="MemberName" /> + </widget> + <packing> + <property name="TopAttach">1</property> + <property name="BottomAttach">2</property> + <property name="LeftAttach">1</property> + <property name="RightAttach">2</property> + <property name="AutoSize">True</property> + <property name="XOptions">Fill</property> + <property name="YOptions">Fill</property> + <property name="XExpand">False</property> + <property name="XFill">True</property> + <property name="XShrink">False</property> + <property name="YExpand">False</property> + <property name="YFill">True</property> + <property name="YShrink">False</property> + </packing> + </child> </widget> </child> </widget> |