diff options
6 files changed, 14 insertions, 560 deletions
diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebugCommands.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebugCommands.cs index 51adcebafb..e17c47a6b3 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebugCommands.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/DebugCommands.cs @@ -72,18 +72,9 @@ namespace MonoDevelop.Debugger class DebugHandler: CommandHandler { - internal static IEnumerable<IBuildTarget> GetRunTargets () + internal static IBuildTarget GetRunTarget () { - var selectedSolution = IdeApp.ProjectOperations.CurrentSelectedSolution; - if (selectedSolution == null) - yield return IdeApp.ProjectOperations.CurrentSelectedBuildTarget; - - var multi = selectedSolution.MultiStartupItems.ToArray (); - if (multi.Length == 0) - yield return selectedSolution.StartupItem ?? IdeApp.ProjectOperations.CurrentSelectedBuildTarget; - else - foreach (var target in multi) - yield return target; + return IdeApp.ProjectOperations.CurrentSelectedSolution ?? IdeApp.ProjectOperations.CurrentSelectedBuildTarget; } protected override void Run () @@ -94,9 +85,9 @@ namespace MonoDevelop.Debugger } if (IdeApp.Workspace.IsOpen) { - foreach (var target in GetRunTargets ()) - if (target != null) - IdeApp.ProjectOperations.Debug (target); + var target = GetRunTarget (); + if (target != null) + IdeApp.ProjectOperations.Debug (target); } } @@ -117,13 +108,8 @@ namespace MonoDevelop.Debugger return; } - foreach (var target in GetRunTargets ()) { - if (target != null && IdeApp.ProjectOperations.CanDebug (target)) { - info.Enabled = true; - return; - } - } - info.Enabled = false; + var target = GetRunTarget (); + info.Enabled = target != null && IdeApp.ProjectOperations.CanDebug (target); } } @@ -539,9 +525,9 @@ namespace MonoDevelop.Debugger if (IdeApp.Workspace.IsOpen) { var bp = new RunToCursorBreakpoint (doc.FileName, doc.Editor.CaretLine, doc.Editor.CaretColumn); DebuggingService.Breakpoints.Add (bp); - foreach (var target in DebugHandler.GetRunTargets ()) - if (target != null) - IdeApp.ProjectOperations.Debug (target); + var target = DebugHandler.GetRunTarget (); + if (target != null) + IdeApp.ProjectOperations.Debug (target); } } @@ -557,11 +543,10 @@ namespace MonoDevelop.Debugger var doc = IdeApp.Workbench.ActiveDocument; if (doc?.Editor != null && doc.FileName != FilePath.Null) { - foreach (var target in DebugHandler.GetRunTargets ()) { - if (target != null && IdeApp.ProjectOperations.CanDebug (target)) { - info.Enabled = true; - return; - } + var target = DebugHandler.GetRunTarget (); + if (target != null && IdeApp.ProjectOperations.CanDebug (target)) { + info.Enabled = true; + return; } } info.Enabled = false; diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Solution.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Solution.cs index 775c58ac9b..0f4d37f93f 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Solution.cs +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Solution.cs @@ -849,8 +849,6 @@ namespace MonoDevelop.Projects var monitors = new List<AggregatedProgressMonitor> (); monitor.BeginTask ("Executing projects", 1); - var secondaryContext = new ExecutionContext (Runtime.ProcessService.DefaultExecutionMode, context.ConsoleFactory, null); - foreach (StartupItem it in msc.Items) { if (!it.SolutionItem.CanExecute (context, configuration, it.RunConfiguration)) continue; @@ -858,7 +856,6 @@ namespace MonoDevelop.Projects mon.AddFollowerMonitor (monitor, MonitorAction.ReportError | MonitorAction.ReportWarning | MonitorAction.FollowerCancel); monitors.Add (mon); tasks.Add (it.SolutionItem.Execute (mon, context, configuration, it.RunConfiguration)); - context = secondaryContext; } try { await Task.WhenAll (tasks); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/StartupOptionsPanel.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/StartupOptionsPanel.cs deleted file mode 100644 index cc17543aee..0000000000 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Projects.OptionPanels/StartupOptionsPanel.cs +++ /dev/null @@ -1,207 +0,0 @@ -// StartupOptionsPanel.cs -// -// Author: -// Lluis Sanchez Gual <lluis@novell.com> -// -// Copyright (c) 2008 Novell, Inc (http://www.novell.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 Gtk; -using MonoDevelop.Components; -using MonoDevelop.Projects; -using MonoDevelop.Core; -using MonoDevelop.Core.Execution; -using MonoDevelop.Ide.Gui.Dialogs; - -namespace MonoDevelop.Ide.Projects.OptionPanels -{ - [System.ComponentModel.Category("MonoDevelop.Projects.Gui")] - [System.ComponentModel.ToolboxItem(true)] - partial class StartupOptionsPanelWidget : Gtk.Bin - { - Solution sol; - ListStore listStore; - List<SolutionItem> startupItems; - - public StartupOptionsPanelWidget (Solution sol) - { - this.Build(); - this.sol = sol; - - startupItems = new List<SolutionItem> (); - foreach (SolutionItem it in sol.GetAllItems<SolutionItem> ()) { - // Include in the list if it can run in any of the existing execution modes and configurations - foreach (IExecutionModeSet mset in Runtime.ProcessService.GetExecutionModes ()) { - bool matched = false; - foreach (IExecutionMode mode in mset.ExecutionModes) { - foreach (SolutionConfiguration sc in sol.Configurations) { - if (it.CanExecute (new ExecutionContext (mode, null, IdeApp.Workspace.ActiveExecutionTarget), sc.Selector)) { - startupItems.Add (it); - matched = true; - break; - } - } - if (matched) - break; - } - if (matched) - break; - } - } - - listStore = new ListStore (typeof(SolutionFolderItem), typeof(bool), typeof(string)); - treeItems.Model = listStore; - treeItems.SearchColumn = -1; // disable the interactive search - - CellRendererToggle crt = new CellRendererToggle (); - treeItems.AppendColumn ("", crt, "active", 1); - treeItems.AppendColumn (GettextCatalog.GetString ("Project"), new CellRendererText (), "text", 2); - - if (startupItems.Count > 0) { - for (int n=0; n<startupItems.Count; n++) { - SolutionItem it = startupItems [n]; - comboItems.AppendText (it.Name); - listStore.AppendValues (it, sol.MultiStartupItems.Contains (it), it.Name); - if (sol.StartupItem == it) - comboItems.Active = n; - } - } - else { - comboItems.AppendText (GettextCatalog.GetString ("The solution does not contain any executable project")); - comboItems.Active = 0; - comboItems.Sensitive = false; - radioMulti.Sensitive = false; - radioSingle.Sensitive = false; - } - - radioSingle.Active = sol.SingleStartup; - radioMulti.Active = !sol.SingleStartup; - UpdateButtons (); - - crt.Toggled += OnItemToggled; - treeItems.Selection.Changed += OnSelectionChanged; - } - - void UpdateButtons () - { - TreeIter iter; - if (radioSingle.Active || !treeItems.Selection.GetSelected (out iter)) { - buttonUp.Sensitive = false; - buttonDown.Sensitive = false; - } - else { - TreeIter first; - listStore.GetIterFirst (out first); - buttonUp.Sensitive = !listStore.GetPath (iter).Equals (listStore.GetPath (first)); - buttonDown.Sensitive = listStore.IterNext (ref iter); - } - - treeItems.Sensitive = !radioSingle.Active; - comboItems.Sensitive = radioSingle.Active; - } - - void OnItemToggled (object s, ToggledArgs args) - { - Gtk.TreeIter it; - listStore.GetIterFromString (out it, args.Path); - bool run = (bool) listStore.GetValue (it, 1); - listStore.SetValue (it, 1, !run); - } - - protected virtual void OnButtonUpClicked (object sender, System.EventArgs e) - { - TreeIter iter; - if (!treeItems.Selection.GetSelected (out iter)) - return; - - TreePath tp = listStore.GetPath (iter); - Gtk.TreeIter pi; - if (tp.Prev () && listStore.GetIter (out pi, tp)) { - listStore.Swap (pi, iter); - treeItems.ScrollToCell (listStore.GetPath (iter), treeItems.Columns[0], false, 0, 0); - UpdateButtons (); - } - } - - protected virtual void OnButtonDownClicked (object sender, System.EventArgs e) - { - TreeIter iter; - if (!treeItems.Selection.GetSelected (out iter)) - return; - - TreeIter pit = iter; - listStore.IterNext (ref iter); - listStore.Swap (pit, iter); - treeItems.ScrollToCell (listStore.GetPath (pit), treeItems.Columns[0], false, 0, 0); - UpdateButtons (); - } - - void OnSelectionChanged (object s, EventArgs args) - { - UpdateButtons (); - } - - public void ApplyChanges () - { - sol.SingleStartup = radioSingle.Active; - sol.MultiStartupItems.Clear (); - - if (sol.SingleStartup) { - if (comboItems.Active != -1 && startupItems.Count > 0) - sol.StartupItem = startupItems [comboItems.Active]; - else - sol.StartupItem = null; - } else { - TreeIter it; - if (listStore.GetIterFirst (out it)) { - do { - if ((bool) listStore.GetValue (it, 1)) - sol.MultiStartupItems.Add ((SolutionItem) listStore.GetValue (it, 0)); - } while (listStore.IterNext (ref it)); - } - sol.StartupItem = null; - } - } - - protected virtual void OnRadioSingleToggled (object sender, System.EventArgs e) - { - UpdateButtons (); - } - } - - class StartupOptionsPanel: ItemOptionsPanel - { - StartupOptionsPanelWidget widget; - - public override Control CreatePanelWidget () - { - return widget = new StartupOptionsPanelWidget (ConfiguredSolution); - } - - public override void ApplyChanges () - { - widget.ApplyChanges (); - } - } -} diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj index dd3d460480..ba78954bec 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj @@ -8159,7 +8159,6 @@ <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.OptionPanels.RunOptionsPanelWidget.cs" /> <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.OptionPanels.RuntimeOptionsPanelWidget.cs" /> <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.OptionPanels.CombineEntryConfigurationsPanelWidget.cs" /> - <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget.cs" /> <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\BaseDirectoryPanel.cs" /> <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\BaseDirectoryPanelWidget.cs" /> <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\CodeFormattingPanel.cs" /> @@ -8176,7 +8175,6 @@ <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\RunOptionsPanel.cs" /> <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\RuntimeOptionsPanel.cs" /> <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\SolutionItemConfigurationsPanel.cs" /> - <Compile Include="MonoDevelop.Ide.Projects.OptionPanels\StartupOptionsPanel.cs" /> <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.AddMimeTypeDialog.cs" /> <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.ConfirmProjectDeleteDialog.cs" /> <Compile Include="gtk-gui\MonoDevelop.Ide.Projects.DeleteConfigDialog.cs" /> diff --git a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget.cs b/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget.cs deleted file mode 100644 index 9657683f0b..0000000000 --- a/main/src/core/MonoDevelop.Ide/gtk-gui/MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget.cs +++ /dev/null @@ -1,150 +0,0 @@ - -// This file has been generated by the GUI designer. Do not modify. -namespace MonoDevelop.Ide.Projects.OptionPanels -{ - internal partial class StartupOptionsPanelWidget - { - private global::Gtk.VBox vbox2; - private global::Gtk.RadioButton radioSingle; - private global::Gtk.HBox hbox2; - private global::Gtk.Label label1; - private global::Gtk.ComboBox comboItems; - private global::Gtk.RadioButton radioMulti; - private global::Gtk.HBox hbox1; - private global::Gtk.Label label2; - private global::Gtk.ScrolledWindow GtkScrolledWindow; - private global::Gtk.TreeView treeItems; - private global::Gtk.VBox vbox3; - private global::Gtk.Button buttonUp; - private global::Gtk.Button buttonDown; - - protected virtual void Build () - { - global::Stetic.Gui.Initialize (this); - // Widget MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget - global::Stetic.BinContainer.Attach (this); - this.Name = "MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget"; - // Container child MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget.Gtk.Container+ContainerChild - this.vbox2 = new global::Gtk.VBox (); - this.vbox2.Name = "vbox2"; - this.vbox2.Spacing = 6; - // Container child vbox2.Gtk.Box+BoxChild - this.radioSingle = new global::Gtk.RadioButton (global::Mono.Unix.Catalog.GetString ("Single startup project:")); - this.radioSingle.CanFocus = true; - this.radioSingle.Name = "radioSingle"; - this.radioSingle.DrawIndicator = true; - this.radioSingle.UseUnderline = true; - this.radioSingle.Group = new global::GLib.SList (global::System.IntPtr.Zero); - this.vbox2.Add (this.radioSingle); - global::Gtk.Box.BoxChild w1 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.radioSingle])); - w1.Position = 0; - w1.Expand = false; - w1.Fill = false; - // Container child vbox2.Gtk.Box+BoxChild - this.hbox2 = new global::Gtk.HBox (); - this.hbox2.Name = "hbox2"; - this.hbox2.Spacing = 6; - // Container child hbox2.Gtk.Box+BoxChild - this.label1 = new global::Gtk.Label (); - this.label1.WidthRequest = 12; - this.label1.Name = "label1"; - this.hbox2.Add (this.label1); - global::Gtk.Box.BoxChild w2 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.label1])); - w2.Position = 0; - w2.Expand = false; - w2.Fill = false; - // Container child hbox2.Gtk.Box+BoxChild - this.comboItems = global::Gtk.ComboBox.NewText (); - this.comboItems.Name = "comboItems"; - this.hbox2.Add (this.comboItems); - global::Gtk.Box.BoxChild w3 = ((global::Gtk.Box.BoxChild)(this.hbox2 [this.comboItems])); - w3.Position = 1; - this.vbox2.Add (this.hbox2); - global::Gtk.Box.BoxChild w4 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox2])); - w4.Position = 1; - w4.Expand = false; - w4.Fill = false; - // Container child vbox2.Gtk.Box+BoxChild - this.radioMulti = new global::Gtk.RadioButton (global::Mono.Unix.Catalog.GetString ("Multiple startup projects:")); - this.radioMulti.CanFocus = true; - this.radioMulti.Name = "radioMulti"; - this.radioMulti.DrawIndicator = true; - this.radioMulti.UseUnderline = true; - this.radioMulti.Group = this.radioSingle.Group; - this.vbox2.Add (this.radioMulti); - global::Gtk.Box.BoxChild w5 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.radioMulti])); - w5.Position = 2; - w5.Expand = false; - w5.Fill = false; - // Container child vbox2.Gtk.Box+BoxChild - this.hbox1 = new global::Gtk.HBox (); - this.hbox1.Name = "hbox1"; - this.hbox1.Spacing = 6; - // Container child hbox1.Gtk.Box+BoxChild - this.label2 = new global::Gtk.Label (); - this.label2.WidthRequest = 12; - this.label2.Name = "label2"; - this.hbox1.Add (this.label2); - global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.label2])); - w6.Position = 0; - w6.Expand = false; - w6.Fill = false; - // Container child hbox1.Gtk.Box+BoxChild - this.GtkScrolledWindow = new global::Gtk.ScrolledWindow (); - this.GtkScrolledWindow.Name = "GtkScrolledWindow"; - this.GtkScrolledWindow.ShadowType = ((global::Gtk.ShadowType)(1)); - // Container child GtkScrolledWindow.Gtk.Container+ContainerChild - this.treeItems = new global::Gtk.TreeView (); - this.treeItems.CanFocus = true; - this.treeItems.Name = "treeItems"; - this.GtkScrolledWindow.Add (this.treeItems); - this.hbox1.Add (this.GtkScrolledWindow); - global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.GtkScrolledWindow])); - w8.Position = 1; - // Container child hbox1.Gtk.Box+BoxChild - this.vbox3 = new global::Gtk.VBox (); - this.vbox3.Name = "vbox3"; - this.vbox3.Spacing = 6; - // Container child vbox3.Gtk.Box+BoxChild - this.buttonUp = new global::Gtk.Button (); - this.buttonUp.CanFocus = true; - this.buttonUp.Name = "buttonUp"; - this.buttonUp.UseStock = true; - this.buttonUp.UseUnderline = true; - this.buttonUp.Label = "gtk-go-up"; - this.vbox3.Add (this.buttonUp); - global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.buttonUp])); - w9.Position = 0; - w9.Expand = false; - w9.Fill = false; - // Container child vbox3.Gtk.Box+BoxChild - this.buttonDown = new global::Gtk.Button (); - this.buttonDown.CanFocus = true; - this.buttonDown.Name = "buttonDown"; - this.buttonDown.UseStock = true; - this.buttonDown.UseUnderline = true; - this.buttonDown.Label = "gtk-go-down"; - this.vbox3.Add (this.buttonDown); - global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.vbox3 [this.buttonDown])); - w10.Position = 1; - w10.Expand = false; - w10.Fill = false; - this.hbox1.Add (this.vbox3); - global::Gtk.Box.BoxChild w11 = ((global::Gtk.Box.BoxChild)(this.hbox1 [this.vbox3])); - w11.Position = 2; - w11.Expand = false; - w11.Fill = false; - this.vbox2.Add (this.hbox1); - global::Gtk.Box.BoxChild w12 = ((global::Gtk.Box.BoxChild)(this.vbox2 [this.hbox1])); - w12.Position = 3; - this.Add (this.vbox2); - if ((this.Child != null)) { - this.Child.ShowAll (); - } - this.Hide (); - this.radioSingle.Toggled += new global::System.EventHandler (this.OnRadioSingleToggled); - this.buttonUp.Clicked += new global::System.EventHandler (this.OnButtonUpClicked); - this.buttonDown.Clicked += new global::System.EventHandler (this.OnButtonDownClicked); - } - } -} diff --git a/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic b/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic index 012653b5c5..a3a86e9ba1 100644 --- a/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic +++ b/main/src/core/MonoDevelop.Ide/gtk-gui/gui.stetic @@ -8699,175 +8699,6 @@ All solutions</property> </widget> </child> </widget> - <widget class="Gtk.Bin" id="MonoDevelop.Ide.Projects.OptionPanels.StartupOptionsPanelWidget" design-size="458 300"> - <property name="MemberName" /> - <property name="Visible">False</property> - <property name="GeneratePublic">False</property> - <child> - <widget class="Gtk.VBox" id="vbox2"> - <property name="MemberName" /> - <property name="Spacing">6</property> - <child> - <widget class="Gtk.RadioButton" id="radioSingle"> - <property name="MemberName" /> - <property name="CanFocus">True</property> - <property name="Label" translatable="yes">Single startup project:</property> - <property name="DrawIndicator">True</property> - <property name="HasLabel">True</property> - <property name="UseUnderline">True</property> - <property name="Group">group1</property> - <signal name="Toggled" handler="OnRadioSingleToggled" /> - </widget> - <packing> - <property name="Position">0</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.HBox" id="hbox2"> - <property name="MemberName" /> - <property name="Spacing">6</property> - <child> - <widget class="Gtk.Label" id="label1"> - <property name="MemberName" /> - <property name="WidthRequest">12</property> - </widget> - <packing> - <property name="Position">0</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.ComboBox" id="comboItems"> - <property name="MemberName" /> - <property name="IsTextCombo">True</property> - <property name="Items" translatable="yes" /> - </widget> - <packing> - <property name="Position">1</property> - <property name="AutoSize">False</property> - </packing> - </child> - </widget> - <packing> - <property name="Position">1</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.RadioButton" id="radioMulti"> - <property name="MemberName" /> - <property name="CanFocus">True</property> - <property name="Label" translatable="yes">Multiple startup projects:</property> - <property name="DrawIndicator">True</property> - <property name="HasLabel">True</property> - <property name="UseUnderline">True</property> - <property name="Group">group1</property> - </widget> - <packing> - <property name="Position">2</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.HBox" id="hbox1"> - <property name="MemberName" /> - <property name="Spacing">6</property> - <child> - <widget class="Gtk.Label" id="label2"> - <property name="MemberName" /> - <property name="WidthRequest">12</property> - </widget> - <packing> - <property name="Position">0</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.ScrolledWindow" id="GtkScrolledWindow"> - <property name="MemberName" /> - <property name="ShadowType">In</property> - <child> - <widget class="Gtk.TreeView" id="treeItems"> - <property name="MemberName" /> - <property name="CanFocus">True</property> - <property name="ShowScrollbars">True</property> - </widget> - </child> - </widget> - <packing> - <property name="Position">1</property> - <property name="AutoSize">True</property> - </packing> - </child> - <child> - <widget class="Gtk.VBox" id="vbox3"> - <property name="MemberName" /> - <property name="Spacing">6</property> - <child> - <widget class="Gtk.Button" id="buttonUp"> - <property name="MemberName" /> - <property name="CanFocus">True</property> - <property name="UseStock">True</property> - <property name="Type">StockItem</property> - <property name="StockId">gtk-go-up</property> - <signal name="Clicked" handler="OnButtonUpClicked" /> - <property name="label">gtk-go-up</property> - </widget> - <packing> - <property name="Position">0</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <widget class="Gtk.Button" id="buttonDown"> - <property name="MemberName" /> - <property name="CanFocus">True</property> - <property name="UseStock">True</property> - <property name="Type">StockItem</property> - <property name="StockId">gtk-go-down</property> - <signal name="Clicked" handler="OnButtonDownClicked" /> - <property name="label">gtk-go-down</property> - </widget> - <packing> - <property name="Position">1</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - <child> - <placeholder /> - </child> - </widget> - <packing> - <property name="Position">2</property> - <property name="AutoSize">True</property> - <property name="Expand">False</property> - <property name="Fill">False</property> - </packing> - </child> - </widget> - <packing> - <property name="Position">3</property> - <property name="AutoSize">False</property> - </packing> - </child> - </widget> - </child> - </widget> <widget class="Gtk.Bin" id="MonoDevelop.Ide.Projects.OptionPanels.RunOptionsPanelWidget" design-size="473 371"> <property name="MemberName" /> <child> |