Browse Source
git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3100 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61shortcuts
23 changed files with 648 additions and 147 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,140 @@
@@ -0,0 +1,140 @@
|
||||
// <file>
|
||||
// <copyright see="prj:///doc/copyright.txt"/>
|
||||
// <license see="prj:///doc/license.txt"/>
|
||||
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
|
||||
// <version>$Revision$</version>
|
||||
// </file>
|
||||
|
||||
namespace ICSharpCode.SharpDevelop.Gui |
||||
{ |
||||
partial class AttachToProcessForm |
||||
{ |
||||
/// <summary>
|
||||
/// Designer variable used to keep track of non-visual components.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null; |
||||
|
||||
/// <summary>
|
||||
/// Disposes resources used by the form.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing) |
||||
{ |
||||
if (disposing) { |
||||
if (components != null) { |
||||
components.Dispose(); |
||||
} |
||||
} |
||||
base.Dispose(disposing); |
||||
} |
||||
|
||||
/// <summary>
|
||||
/// This method is required for Windows Forms designer support.
|
||||
/// Do not change the method contents inside the source code editor. The Forms designer might
|
||||
/// not be able to load this method if it was changed manually.
|
||||
/// </summary>
|
||||
private void InitializeComponent() |
||||
{ |
||||
this.attachButton = new System.Windows.Forms.Button(); |
||||
this.cancelButton = new System.Windows.Forms.Button(); |
||||
this.refreshButton = new System.Windows.Forms.Button(); |
||||
this.listView = new System.Windows.Forms.ListView(); |
||||
this.processColumnHeader = new System.Windows.Forms.ColumnHeader(); |
||||
this.processIdColumnHeader = new System.Windows.Forms.ColumnHeader(); |
||||
this.titleColumnHeader = new System.Windows.Forms.ColumnHeader(); |
||||
this.SuspendLayout(); |
||||
//
|
||||
// attachButton
|
||||
//
|
||||
this.attachButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); |
||||
this.attachButton.DialogResult = System.Windows.Forms.DialogResult.OK; |
||||
this.attachButton.Location = new System.Drawing.Point(389, 339); |
||||
this.attachButton.Name = "attachButton"; |
||||
this.attachButton.Size = new System.Drawing.Size(75, 23); |
||||
this.attachButton.TabIndex = 1; |
||||
this.attachButton.Text = "Attach"; |
||||
this.attachButton.UseVisualStyleBackColor = true; |
||||
//
|
||||
// cancelButton
|
||||
//
|
||||
this.cancelButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); |
||||
this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; |
||||
this.cancelButton.Location = new System.Drawing.Point(550, 339); |
||||
this.cancelButton.Name = "cancelButton"; |
||||
this.cancelButton.Size = new System.Drawing.Size(75, 23); |
||||
this.cancelButton.TabIndex = 3; |
||||
this.cancelButton.Text = "Cancel"; |
||||
this.cancelButton.UseVisualStyleBackColor = true; |
||||
//
|
||||
// refreshButton
|
||||
//
|
||||
this.refreshButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); |
||||
this.refreshButton.Location = new System.Drawing.Point(469, 339); |
||||
this.refreshButton.Name = "refreshButton"; |
||||
this.refreshButton.Size = new System.Drawing.Size(75, 23); |
||||
this.refreshButton.TabIndex = 2; |
||||
this.refreshButton.Text = "Refresh"; |
||||
this.refreshButton.UseVisualStyleBackColor = true; |
||||
this.refreshButton.Click += new System.EventHandler(this.RefreshButtonClick); |
||||
//
|
||||
// listView
|
||||
//
|
||||
this.listView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) |
||||
| System.Windows.Forms.AnchorStyles.Left) |
||||
| System.Windows.Forms.AnchorStyles.Right))); |
||||
this.listView.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { |
||||
this.processColumnHeader, |
||||
this.processIdColumnHeader, |
||||
this.titleColumnHeader}); |
||||
this.listView.FullRowSelect = true; |
||||
this.listView.HideSelection = false; |
||||
this.listView.Location = new System.Drawing.Point(0, 0); |
||||
this.listView.Name = "listView"; |
||||
this.listView.Size = new System.Drawing.Size(636, 334); |
||||
this.listView.Sorting = System.Windows.Forms.SortOrder.Ascending; |
||||
this.listView.TabIndex = 4; |
||||
this.listView.UseCompatibleStateImageBehavior = false; |
||||
this.listView.View = System.Windows.Forms.View.Details; |
||||
this.listView.ItemActivate += new System.EventHandler(this.ListViewItemActivate); |
||||
//
|
||||
// processColumnHeader
|
||||
//
|
||||
this.processColumnHeader.Text = "Process"; |
||||
this.processColumnHeader.Width = 189; |
||||
//
|
||||
// processIdColumnHeader
|
||||
//
|
||||
this.processIdColumnHeader.Text = "ID"; |
||||
//
|
||||
// titleColumnHeader
|
||||
//
|
||||
this.titleColumnHeader.Text = "Title"; |
||||
this.titleColumnHeader.Width = 337; |
||||
//
|
||||
// AttachToProcessForm
|
||||
//
|
||||
this.AcceptButton = this.attachButton; |
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); |
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |
||||
this.CancelButton = this.cancelButton; |
||||
this.ClientSize = new System.Drawing.Size(637, 374); |
||||
this.Controls.Add(this.listView); |
||||
this.Controls.Add(this.refreshButton); |
||||
this.Controls.Add(this.cancelButton); |
||||
this.Controls.Add(this.attachButton); |
||||
this.MinimumSize = new System.Drawing.Size(273, 140); |
||||
this.Name = "AttachToProcessForm"; |
||||
this.ShowIcon = false; |
||||
this.ShowInTaskbar = false; |
||||
this.Text = "Attach to Process"; |
||||
this.ResumeLayout(false); |
||||
} |
||||
private System.Windows.Forms.ColumnHeader titleColumnHeader; |
||||
private System.Windows.Forms.ColumnHeader processIdColumnHeader; |
||||
private System.Windows.Forms.ColumnHeader processColumnHeader; |
||||
private System.Windows.Forms.ListView listView; |
||||
private System.Windows.Forms.Button refreshButton; |
||||
private System.Windows.Forms.Button cancelButton; |
||||
private System.Windows.Forms.Button attachButton; |
||||
} |
||||
} |
@ -0,0 +1,97 @@
@@ -0,0 +1,97 @@
|
||||
// <file>
|
||||
// <copyright see="prj:///doc/copyright.txt"/>
|
||||
// <license see="prj:///doc/license.txt"/>
|
||||
// <owner name="Matthew Ward" email="mrward@users.sourceforge.net"/>
|
||||
// <version>$Revision$</version>
|
||||
// </file>
|
||||
|
||||
using System; |
||||
using System.Diagnostics; |
||||
using System.ComponentModel; |
||||
using System.Drawing; |
||||
using System.IO; |
||||
using System.Windows.Forms; |
||||
|
||||
using ICSharpCode.Core; |
||||
|
||||
namespace ICSharpCode.SharpDevelop.Gui |
||||
{ |
||||
public partial class AttachToProcessForm : Form |
||||
{ |
||||
public AttachToProcessForm() |
||||
{ |
||||
//
|
||||
// The InitializeComponent() call is required for Windows Forms designer support.
|
||||
//
|
||||
InitializeComponent(); |
||||
|
||||
UpdateResourceStrings(); |
||||
RefreshProcessList(); |
||||
} |
||||
|
||||
public System.Diagnostics.Process Process { |
||||
get { |
||||
return GetSelectedProcess(); |
||||
} |
||||
} |
||||
|
||||
void RefreshProcessList() |
||||
{ |
||||
listView.Items.Clear(); |
||||
foreach (System.Diagnostics.Process process in System.Diagnostics.Process.GetProcesses()) { |
||||
try { |
||||
string fileName = Path.GetFileName(process.MainModule.FileName); |
||||
ListViewItem item = new ListViewItem(fileName); |
||||
item.SubItems.Add(process.Id.ToString()); |
||||
item.SubItems.Add(process.MainWindowTitle); |
||||
item.Tag = process; |
||||
listView.Items.Add(item); |
||||
} catch (Win32Exception) { |
||||
// Do nothing.
|
||||
} |
||||
} |
||||
|
||||
listView.Sort(); |
||||
if (listView.Items.Count > 0) { |
||||
listView.Items[0].Selected = true; |
||||
} else { |
||||
attachButton.Enabled = false; |
||||
} |
||||
} |
||||
|
||||
System.Diagnostics.Process GetSelectedProcess() |
||||
{ |
||||
if (listView.SelectedItems.Count > 0) { |
||||
return listView.SelectedItems[0].Tag as System.Diagnostics.Process; |
||||
} |
||||
return null; |
||||
} |
||||
|
||||
void RefreshButtonClick(object sender, EventArgs e) |
||||
{ |
||||
RefreshProcessList(); |
||||
} |
||||
|
||||
void UpdateResourceStrings() |
||||
{ |
||||
Text = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AttachToProcessForm.Title}"); |
||||
|
||||
processColumnHeader.Text = StringParser.Parse("${res:ComponentInspector.AttachDialog.ProcessLabel}"); |
||||
processIdColumnHeader.Text = StringParser.Parse("${res:Global.ID}"); |
||||
titleColumnHeader.Text = StringParser.Parse("${res:AddIns.HtmlHelp2.Title}"); |
||||
|
||||
attachButton.Text = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AttachToProcessForm.AttachButtonText}"); |
||||
cancelButton.Text = StringParser.Parse("${res:Global.CancelButtonText}"); |
||||
refreshButton.Text = StringParser.Parse("${res:ICSharpCode.SharpDevelop.Gui.Dialogs.AddWebReferenceDialog.RefreshButtonTooltip}"); |
||||
} |
||||
|
||||
|
||||
void ListViewItemActivate(object sender, EventArgs e) |
||||
{ |
||||
if (listView.SelectedItems.Count > 0) { |
||||
DialogResult = DialogResult.OK; |
||||
Close(); |
||||
} |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,120 @@
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?> |
||||
<root> |
||||
<!-- |
||||
Microsoft ResX Schema |
||||
|
||||
Version 2.0 |
||||
|
||||
The primary goals of this format is to allow a simple XML format |
||||
that is mostly human readable. The generation and parsing of the |
||||
various data types are done through the TypeConverter classes |
||||
associated with the data types. |
||||
|
||||
Example: |
||||
|
||||
... ado.net/XML headers & schema ... |
||||
<resheader name="resmimetype">text/microsoft-resx</resheader> |
||||
<resheader name="version">2.0</resheader> |
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> |
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> |
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> |
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> |
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> |
||||
<value>[base64 mime encoded serialized .NET Framework object]</value> |
||||
</data> |
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> |
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> |
||||
<comment>This is a comment</comment> |
||||
</data> |
||||
|
||||
There are any number of "resheader" rows that contain simple |
||||
name/value pairs. |
||||
|
||||
Each data row contains a name, and value. The row also contains a |
||||
type or mimetype. Type corresponds to a .NET class that support |
||||
text/value conversion through the TypeConverter architecture. |
||||
Classes that don't support this are serialized and stored with the |
||||
mimetype set. |
||||
|
||||
The mimetype is used for serialized objects, and tells the |
||||
ResXResourceReader how to depersist the object. This is currently not |
||||
extensible. For a given mimetype the value must be set accordingly: |
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format |
||||
that the ResXResourceWriter will generate, however the reader can |
||||
read any of the formats listed below. |
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64 |
||||
value : The object must be serialized with |
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter |
||||
: and then encoded with base64 encoding. |
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64 |
||||
value : The object must be serialized with |
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter |
||||
: and then encoded with base64 encoding. |
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64 |
||||
value : The object must be serialized into a byte array |
||||
: using a System.ComponentModel.TypeConverter |
||||
: and then encoded with base64 encoding. |
||||
--> |
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> |
||||
<xsd:element name="root" msdata:IsDataSet="true"> |
||||
<xsd:complexType> |
||||
<xsd:choice maxOccurs="unbounded"> |
||||
<xsd:element name="metadata"> |
||||
<xsd:complexType> |
||||
<xsd:sequence> |
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" /> |
||||
</xsd:sequence> |
||||
<xsd:attribute name="name" use="required" type="xsd:string" /> |
||||
<xsd:attribute name="type" type="xsd:string" /> |
||||
<xsd:attribute name="mimetype" type="xsd:string" /> |
||||
<xsd:attribute ref="xml:space" /> |
||||
</xsd:complexType> |
||||
</xsd:element> |
||||
<xsd:element name="assembly"> |
||||
<xsd:complexType> |
||||
<xsd:attribute name="alias" type="xsd:string" /> |
||||
<xsd:attribute name="name" type="xsd:string" /> |
||||
</xsd:complexType> |
||||
</xsd:element> |
||||
<xsd:element name="data"> |
||||
<xsd:complexType> |
||||
<xsd:sequence> |
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> |
||||
</xsd:sequence> |
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> |
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> |
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> |
||||
<xsd:attribute ref="xml:space" /> |
||||
</xsd:complexType> |
||||
</xsd:element> |
||||
<xsd:element name="resheader"> |
||||
<xsd:complexType> |
||||
<xsd:sequence> |
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
||||
</xsd:sequence> |
||||
<xsd:attribute name="name" type="xsd:string" use="required" /> |
||||
</xsd:complexType> |
||||
</xsd:element> |
||||
</xsd:choice> |
||||
</xsd:complexType> |
||||
</xsd:element> |
||||
</xsd:schema> |
||||
<resheader name="resmimetype"> |
||||
<value>text/microsoft-resx</value> |
||||
</resheader> |
||||
<resheader name="version"> |
||||
<value>2.0</value> |
||||
</resheader> |
||||
<resheader name="reader"> |
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
||||
</resheader> |
||||
<resheader name="writer"> |
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
||||
</resheader> |
||||
</root> |
Binary file not shown.
Loading…
Reference in new issue