diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml
index 2c075ac1cd..d2b2ffc06f 100644
--- a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml
@@ -9,106 +9,121 @@
xmlns:web="clr-namespace:System.Web.Services.Description;assembly=System.Web.Services"
WindowStartupLocation="CenterOwner"
Style="{x:Static core:GlobalStyles.DialogWindowStyle}"
- Height="425"
- Width="500"
+ Height="570"
+ Width="700"
Title="{Binding Title}">
+
+
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
+ SelectedItemChanged="Tree_SelectedItemChanged">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml.cs b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml.cs
index ae6505236b..04fd52f5f9 100644
--- a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml.cs
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceDialog.xaml.cs
@@ -60,6 +60,5 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
dc.ServiceItem = myItem;
}
}
-
}
}
\ No newline at end of file
diff --git a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceViewModel.cs b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceViewModel.cs
index 1304bdc393..6b5cc09629 100644
--- a/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceViewModel.cs
+++ b/src/Main/Base/Project/Src/Gui/Dialogs/ReferenceDialog/AddServiceReferenceViewModel.cs
@@ -19,6 +19,7 @@ using System.Runtime.Remoting.Messaging;
using System.Web.Services.Description;
using System.Web.Services.Discovery;
using System.Windows;
+using System.Windows.Data;
using System.Windows.Input;
using ICSharpCode.Core;
@@ -52,6 +53,7 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
GoCommand = new RelayCommand(ExecuteGo,CanExecuteGo);
DiscoverCommand = new RelayCommand(ExecuteDiscover,CanExecuteDiscover);
+ TwoValues = new ObservableCollection();
}
private string art;
@@ -95,6 +97,7 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
}
}
+
#region Create List of services
private List mruServices = new List();
@@ -117,6 +120,7 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
#endregion
+
#region Go
public System.Windows.Input.ICommand GoCommand {get; private set;}
@@ -137,6 +141,7 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
#endregion
+
#region Discover
public System.Windows.Input.ICommand DiscoverCommand {get;private set;}
@@ -335,20 +340,22 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
#endregion
+
#region new binding
List items = new List ();
- public List Items {
+ public List ServiceItems {
get {return items; }
set {
items = value;
- base.RaisePropertyChanged(() =>Items);
+ base.RaisePropertyChanged(() =>ServiceItems);
}
}
+
ServiceItem myItem;
public ServiceItem ServiceItem {
@@ -359,11 +366,74 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
}
}
- void UpdateListView ()
+
+ private ObservableCollection twoValues;
+
+ public ObservableCollection TwoValues {
+ get { return twoValues; }
+ set {
+ twoValues = value;
+ base.RaisePropertyChanged(() =>TwoValues);
+ }
+ }
+
+
+ public void UpdateListView ()
{
+ TwoValues.Clear();
+ string l;
+ string r;
+ if(ServiceItem.Tag is ServiceDescription) {
+ ServiceDescription desc = (ServiceDescription)ServiceItem.Tag;
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.RetrievalUriProperty}");
+ r = desc.RetrievalUrl;
+ var tv = new TwoValue(l,r);
+ TwoValues.Add(tv);
+ }
+ else if(ServiceItem.Tag is Service) {
+ Service service = (Service)ServiceItem.Tag;
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.DocumentationProperty}");
+ r =service.Documentation;
+ var tv1 = new TwoValue(l,r);
+ TwoValues.Add(tv1);
+ }
+
+ else if(ServiceItem.Tag is Port) {
+ Port port = (Port)ServiceItem.Tag;
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.DocumentationProperty}");
+ r = port.Documentation;
+ var tv2 = new TwoValue(l,r);
+ TwoValues.Add(tv2);
+
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.BindingProperty}");
+ r = port.Binding.Name;
+ var tv3 = new TwoValue(l,r);
+ TwoValues.Add(tv3);
+
+
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.ServiceNameProperty}");
+ r = port.Service.Name;
+ var tv4 = new TwoValue(l,r);
+ TwoValues.Add(tv4);
+ }
+ else if(ServiceItem.Tag is Operation) {
+ Operation operation = (Operation)ServiceItem.Tag;
+
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.DocumentationProperty}");
+ r = operation.Documentation;
+ var tv5 = new TwoValue(l,r);
+ TwoValues.Add(tv5);
+
+
+ l = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.ParametersProperty}");
+ r = operation.ParameterOrderString;
+ var tv6 = new TwoValue(l,r);
+ TwoValues.Add(tv6);
+ }
}
+
void FillItems (ServiceDescriptionCollection descriptions)
{
foreach (ServiceDescription element in descriptions)
@@ -407,7 +477,7 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
}
}
}
- Items = l;
+ ServiceItems = l;
}
@@ -430,6 +500,20 @@ namespace ICSharpCode.SharpDevelop.Gui.Dialogs.ReferenceDialog
}
+
+ public class TwoValue
+ {
+ public TwoValue(string left,string right)
+ {
+ LeftValue = left;
+ RightValue = right;
+ }
+
+ public string LeftValue {get;set;}
+ public string RightValue {get;set;}
+ }
+
+
public class ServiceItem
{
public ServiceItem (string name)
diff --git a/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/ReferenceFolderNodeCommands.cs b/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/ReferenceFolderNodeCommands.cs
index 2ae732a4ab..7aa4566fcd 100644
--- a/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/ReferenceFolderNodeCommands.cs
+++ b/src/Main/Base/Project/Src/Gui/Pads/ProjectBrowser/Commands/ReferenceFolderNodeCommands.cs
@@ -243,29 +243,6 @@ namespace ICSharpCode.SharpDevelop.Project.Commands
o.DataContext = vm;
o.Owner = WorkbenchSingleton.MainWindow;
var b = o.ShowDialog();
-
-
- if (b == true) {
-
- /*
- AbstractProjectBrowserTreeNode node = ProjectBrowserPad.Instance.SelectedNode;
- var f = CompilableProject.GetAppConfigFile(node.Project,false);
-
-// IProject project = (node != null) ? node.Project : ProjectService.CurrentProject;
-
-
- CompilableProject project = ProjectService.CurrentProject as CompilableProject;
-
- var wpo = WebProjectsOptions.Instance.GetWebProjectOptions(ProjectService.CurrentProject.Name);
-
-
-
- var s1 = project.AssemblyName;
- var s2 = project.CreateStartInfo();
-
- var ss = s1 + s2;
- */
- }
}
}