Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLluis Sanchez <slluis.devel@gmail.com>2011-11-29 13:38:25 +0400
committerLluis Sanchez <slluis.devel@gmail.com>2011-11-29 13:38:25 +0400
commitfeb2b05326b19511537805df834ee87738a12b82 (patch)
tree666ab2837a82bb75feb4891afac9c3be4f5afc04
parent4f811b86823fe6b802925ec8f6222768695ef086 (diff)
parent5a731849f711d62b5acbb0cd1e065ba122309387 (diff)
Merge pull request #133 from carlosalberto/master
Allow the users to use IronPython when using the PyBinding addin
-rw-r--r--extras/PyBinding/PyBinding/Makefile2
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsPanel.cs5
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Gui/PythonOptionsWidget.cs12
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/AbstractPythonRuntime.cs2
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/IPythonRuntime.cs6
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/IronPythonRuntime.cs96
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/Python25Runtime.cs11
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/Python26Runtime.cs11
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.Runtime/Python27Runtime.cs11
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.addin.xml1
-rw-r--r--extras/PyBinding/PyBinding/PyBinding.csproj4
-rw-r--r--extras/PyBinding/PyBinding/PyBinding/PythonExecutionHandler.cs22
-rw-r--r--extras/PyBinding/PyBinding/PyBinding/PythonHelper.cs9
-rw-r--r--extras/PyBinding/PyBinding/gtk-gui/PyBinding.Gui.PythonOptionsWidget.cs173
-rw-r--r--extras/PyBinding/PyBinding/gtk-gui/gui.stetic102
15 files changed, 345 insertions, 122 deletions
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 dd654c0966..97d6b611c1 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/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>