Browse Source
This commit should change only one file, adding Ivan Shumilin to the changelog xsl. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3254 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61shortcuts
12 changed files with 1131 additions and 0 deletions
@ -0,0 +1,129 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
using System; |
||||||
|
using ICSharpCode.TextEditor; |
||||||
|
using ICSharpCode.TextEditor.Document; |
||||||
|
|
||||||
|
namespace SearchAndReplace |
||||||
|
{ |
||||||
|
public class ProvidedDocumentInformation |
||||||
|
{ |
||||||
|
IDocument document; |
||||||
|
ITextBufferStrategy textBuffer; |
||||||
|
string fileName; |
||||||
|
int currentOffset; |
||||||
|
TextAreaControl textAreaControl = null; |
||||||
|
|
||||||
|
public ITextBufferStrategy TextBuffer { |
||||||
|
get { |
||||||
|
return textBuffer; |
||||||
|
} |
||||||
|
set { |
||||||
|
textBuffer = value; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public string FileName { |
||||||
|
get { |
||||||
|
return fileName; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public IDocument Document { |
||||||
|
get { |
||||||
|
return document; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public int CurrentOffset { |
||||||
|
get { |
||||||
|
if (textAreaControl != null) { |
||||||
|
return textAreaControl.Caret.Offset; |
||||||
|
} |
||||||
|
return currentOffset; |
||||||
|
} |
||||||
|
set { |
||||||
|
if (textAreaControl != null) { |
||||||
|
textAreaControl.Caret.Position = document.OffsetToPosition(value + 1); |
||||||
|
} else { |
||||||
|
currentOffset = value; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
int endOffset = 0; |
||||||
|
public int EndOffset { |
||||||
|
get { |
||||||
|
// if (document != null) {
|
||||||
|
// return SearchReplaceUtilities.CalcCurrentOffset(document);
|
||||||
|
// }
|
||||||
|
return endOffset; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public void Replace(int offset, int length, string pattern) |
||||||
|
{ |
||||||
|
if (document != null) { |
||||||
|
document.Replace(offset, length, pattern); |
||||||
|
} else { |
||||||
|
textBuffer.Replace(offset, length, pattern); |
||||||
|
} |
||||||
|
|
||||||
|
if (offset <= CurrentOffset) { |
||||||
|
CurrentOffset = CurrentOffset - length + pattern.Length; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public IDocument CreateDocument() |
||||||
|
{ |
||||||
|
if (document != null) { |
||||||
|
return document; |
||||||
|
} |
||||||
|
return new DocumentFactory().CreateFromTextBuffer(textBuffer); |
||||||
|
} |
||||||
|
|
||||||
|
public override bool Equals(object obj) |
||||||
|
{ |
||||||
|
ProvidedDocumentInformation info = obj as ProvidedDocumentInformation; |
||||||
|
if (info == null) { |
||||||
|
return false; |
||||||
|
} |
||||||
|
return this.fileName == info.fileName && |
||||||
|
this.textAreaControl == info.textAreaControl; |
||||||
|
} |
||||||
|
|
||||||
|
public override int GetHashCode() |
||||||
|
{ |
||||||
|
return fileName.GetHashCode(); |
||||||
|
} |
||||||
|
|
||||||
|
public ProvidedDocumentInformation(IDocument document, string fileName, int currentOffset) |
||||||
|
{ |
||||||
|
this.document = document; |
||||||
|
this.textBuffer = document.TextBufferStrategy; |
||||||
|
this.fileName = fileName; |
||||||
|
this.endOffset = this.currentOffset = currentOffset; |
||||||
|
} |
||||||
|
|
||||||
|
public ProvidedDocumentInformation(IDocument document, string fileName, TextAreaControl textAreaControl) |
||||||
|
{ |
||||||
|
this.document = document; |
||||||
|
this.textBuffer = document.TextBufferStrategy; |
||||||
|
this.fileName = fileName; |
||||||
|
this.textAreaControl = textAreaControl; |
||||||
|
this.endOffset = this.CurrentOffset; |
||||||
|
} |
||||||
|
|
||||||
|
public ProvidedDocumentInformation(ITextBufferStrategy textBuffer, string fileName, int currentOffset) |
||||||
|
{ |
||||||
|
this.textBuffer = textBuffer; |
||||||
|
this.fileName = fileName; |
||||||
|
this.endOffset = this.currentOffset = currentOffset; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,44 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Collections.Generic; |
||||||
|
|
||||||
|
namespace SearchAndReplace |
||||||
|
{ |
||||||
|
public delegate void SearchAllFinishedEventHandler(object sender, SearchAllFinishedEventArgs e); |
||||||
|
|
||||||
|
public class SearchAllFinishedEventArgs : EventArgs |
||||||
|
{ |
||||||
|
string pattern; |
||||||
|
List<SearchResult> results; |
||||||
|
|
||||||
|
public string Pattern { |
||||||
|
get { |
||||||
|
return pattern; |
||||||
|
} |
||||||
|
set { |
||||||
|
pattern = value; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public List<SearchResult> Results { |
||||||
|
get { |
||||||
|
return results; |
||||||
|
} |
||||||
|
set { |
||||||
|
results = value; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public SearchAllFinishedEventArgs(string pattern, List<SearchResult> results) |
||||||
|
{ |
||||||
|
this.pattern = pattern; |
||||||
|
this.results = results; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,120 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Mike Krüger" email="mike@icsharpcode.net"/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Drawing; |
||||||
|
using ICSharpCode.TextEditor.Document; |
||||||
|
|
||||||
|
namespace SearchAndReplace |
||||||
|
{ |
||||||
|
public class SearchResult |
||||||
|
{ |
||||||
|
ProvidedDocumentInformation providedDocumentInformation; |
||||||
|
int offset; |
||||||
|
int length; |
||||||
|
|
||||||
|
public string FileName { |
||||||
|
get { |
||||||
|
return providedDocumentInformation.FileName; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public ProvidedDocumentInformation ProvidedDocumentInformation { |
||||||
|
set { |
||||||
|
providedDocumentInformation = value; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public int Offset { |
||||||
|
get { |
||||||
|
return offset; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public int Length { |
||||||
|
get { |
||||||
|
return length; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public virtual string TransformReplacePattern(string pattern) |
||||||
|
{ |
||||||
|
return pattern; |
||||||
|
} |
||||||
|
|
||||||
|
public IDocument CreateDocument() |
||||||
|
{ |
||||||
|
return providedDocumentInformation.CreateDocument(); |
||||||
|
} |
||||||
|
|
||||||
|
public SearchResult(int offset, int length) |
||||||
|
{ |
||||||
|
if (length < 0) |
||||||
|
throw new ArgumentOutOfRangeException("length"); |
||||||
|
if (offset < 0) |
||||||
|
throw new ArgumentOutOfRangeException("offset"); |
||||||
|
this.offset = offset; |
||||||
|
this.length = length; |
||||||
|
} |
||||||
|
|
||||||
|
public virtual Point GetStartPosition(IDocument document) |
||||||
|
{ |
||||||
|
return document.OffsetToPosition(Offset); |
||||||
|
} |
||||||
|
|
||||||
|
public virtual Point GetEndPosition(IDocument document) |
||||||
|
{ |
||||||
|
return document.OffsetToPosition(Offset + Length); |
||||||
|
} |
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets a special text to display, or null to display the line's content.
|
||||||
|
/// </summary>
|
||||||
|
public virtual string DisplayText { |
||||||
|
get { |
||||||
|
return null; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public override string ToString() |
||||||
|
{ |
||||||
|
return String.Format("[SearchResult: FileName={0}, Offset={1}, Length={2}]", |
||||||
|
FileName, |
||||||
|
Offset, |
||||||
|
Length); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public class SimpleSearchResult : SearchResult |
||||||
|
{ |
||||||
|
Point position; |
||||||
|
|
||||||
|
public override Point GetStartPosition(IDocument doc) |
||||||
|
{ |
||||||
|
return position; |
||||||
|
} |
||||||
|
|
||||||
|
public override Point GetEndPosition(IDocument doc) |
||||||
|
{ |
||||||
|
return position; |
||||||
|
} |
||||||
|
|
||||||
|
string displayText; |
||||||
|
|
||||||
|
public override string DisplayText { |
||||||
|
get { |
||||||
|
return displayText; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public SimpleSearchResult(string displayText, Point position) : base(0, 0) |
||||||
|
{ |
||||||
|
this.position = position; |
||||||
|
this.displayText = displayText; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,91 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Daniel Grunwald" email="daniel@danielgrunwald.de"/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
namespace SearchAndReplace |
||||||
|
{ |
||||||
|
partial class AsynchronousWaitDialogForm : System.Windows.Forms.Form |
||||||
|
{ |
||||||
|
/// <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.taskLabel = new System.Windows.Forms.Label(); |
||||||
|
this.progressBar = new System.Windows.Forms.ProgressBar(); |
||||||
|
this.cancelButton = new System.Windows.Forms.Button(); |
||||||
|
this.SuspendLayout(); |
||||||
|
//
|
||||||
|
// taskLabel
|
||||||
|
//
|
||||||
|
this.taskLabel.Location = new System.Drawing.Point(12, 9); |
||||||
|
this.taskLabel.Name = "taskLabel"; |
||||||
|
this.taskLabel.Size = new System.Drawing.Size(311, 46); |
||||||
|
this.taskLabel.TabIndex = 0; |
||||||
|
this.taskLabel.Text = "Please wait..."; |
||||||
|
this.taskLabel.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; |
||||||
|
//
|
||||||
|
// progressBar
|
||||||
|
//
|
||||||
|
this.progressBar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) |
||||||
|
| System.Windows.Forms.AnchorStyles.Right))); |
||||||
|
this.progressBar.Location = new System.Drawing.Point(12, 58); |
||||||
|
this.progressBar.Name = "progressBar"; |
||||||
|
this.progressBar.Size = new System.Drawing.Size(235, 22); |
||||||
|
this.progressBar.Style = System.Windows.Forms.ProgressBarStyle.Marquee; |
||||||
|
this.progressBar.TabIndex = 1; |
||||||
|
//
|
||||||
|
// 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(253, 58); |
||||||
|
this.cancelButton.Name = "cancelButton"; |
||||||
|
this.cancelButton.Size = new System.Drawing.Size(75, 23); |
||||||
|
this.cancelButton.TabIndex = 2; |
||||||
|
this.cancelButton.Text = "button1"; |
||||||
|
this.cancelButton.UseVisualStyleBackColor = true; |
||||||
|
this.cancelButton.Click += new System.EventHandler(this.CancelButtonClick); |
||||||
|
//
|
||||||
|
// AsynchronousWaitDialogForm
|
||||||
|
//
|
||||||
|
this.CancelButton = this.cancelButton; |
||||||
|
this.ClientSize = new System.Drawing.Size(336, 87); |
||||||
|
this.ControlBox = false; |
||||||
|
this.Controls.Add(this.cancelButton); |
||||||
|
this.Controls.Add(this.progressBar); |
||||||
|
this.Controls.Add(this.taskLabel); |
||||||
|
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; |
||||||
|
this.Name = "AsynchronousWaitDialogForm"; |
||||||
|
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; |
||||||
|
this.Text = "AsynchronousWaitDialog"; |
||||||
|
this.ResumeLayout(false); |
||||||
|
} |
||||||
|
internal System.Windows.Forms.Button cancelButton; |
||||||
|
internal System.Windows.Forms.ProgressBar progressBar; |
||||||
|
internal System.Windows.Forms.Label taskLabel; |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,266 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Daniel Grunwald" email="daniel@danielgrunwald.de"/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
using System; |
||||||
|
using System.Drawing; |
||||||
|
using System.Threading; |
||||||
|
using System.Windows.Forms; |
||||||
|
using ICSharpCode.SharpDevelop.Gui; |
||||||
|
using ICSharpCode.Core; |
||||||
|
|
||||||
|
namespace SearchAndReplace |
||||||
|
{ |
||||||
|
internal sealed partial class AsynchronousWaitDialogForm |
||||||
|
{ |
||||||
|
internal AsynchronousWaitDialogForm() |
||||||
|
{ |
||||||
|
InitializeComponent(); |
||||||
|
cancelButton.Text = ResourceService.GetString("Global.CancelButtonText"); |
||||||
|
} |
||||||
|
|
||||||
|
void CancelButtonClick(object sender, System.EventArgs e) |
||||||
|
{ |
||||||
|
cancelButton.Enabled = false; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Shows an wait dialog on a separate thread if the action takes longer than 500ms.
|
||||||
|
/// Usage:
|
||||||
|
/// using (AsynchronousWaitDialog.ShowWaitDialog("title")) {
|
||||||
|
/// long_running_action();
|
||||||
|
/// }
|
||||||
|
/// or:
|
||||||
|
/// using (AsynchronousWaitDialog monitor = AsynchronousWaitDialog.ShowWaitDialog("title")) {
|
||||||
|
/// long_running_action(monitor);
|
||||||
|
/// }
|
||||||
|
/// </summary>
|
||||||
|
public sealed class AsynchronousWaitDialog : IProgressMonitor, IDisposable |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Delay until the wait dialog becomes visible, in ms.
|
||||||
|
/// </summary>
|
||||||
|
public const int ShowWaitDialogDelay = 500; |
||||||
|
|
||||||
|
readonly object lockObject = new object(); |
||||||
|
bool disposed; |
||||||
|
AsynchronousWaitDialogForm dlg; |
||||||
|
volatile int totalWork; |
||||||
|
volatile string titleName; |
||||||
|
volatile string taskName; |
||||||
|
volatile int workDone; |
||||||
|
volatile bool cancelled; |
||||||
|
volatile bool allowCancel; |
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Shows a wait dialog.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="titleName">Title of the wait dialog</param>
|
||||||
|
/// <param name="taskName">Name of the current task</param>
|
||||||
|
/// <returns>WaitHandle object - you can use it to access the wait dialog's properties.
|
||||||
|
/// To close the wait dialog, call Dispose() on the WaitHandle</returns>
|
||||||
|
public static AsynchronousWaitDialog ShowWaitDialog(string titleName) |
||||||
|
{ |
||||||
|
if (titleName == null) |
||||||
|
throw new ArgumentNullException("titleName"); |
||||||
|
AsynchronousWaitDialog h = new AsynchronousWaitDialog(titleName); |
||||||
|
h.Start(); |
||||||
|
return h; |
||||||
|
} |
||||||
|
|
||||||
|
private AsynchronousWaitDialog(string titleName) |
||||||
|
{ |
||||||
|
this.titleName = titleName; |
||||||
|
Done(); // set default values for titleName
|
||||||
|
} |
||||||
|
|
||||||
|
#region Start waiting thread
|
||||||
|
/// <summary>
|
||||||
|
/// Start waiting thread
|
||||||
|
/// </summary>
|
||||||
|
internal void Start() |
||||||
|
{ |
||||||
|
Thread newThread = new Thread(Run); |
||||||
|
newThread.Name = "AsynchronousWaitDialog thread"; |
||||||
|
newThread.Start(); |
||||||
|
|
||||||
|
Thread.Sleep(0); // allow new thread to start
|
||||||
|
} |
||||||
|
|
||||||
|
[STAThread] |
||||||
|
void Run() |
||||||
|
{ |
||||||
|
Thread.Sleep(ShowWaitDialogDelay); |
||||||
|
lock (lockObject) { |
||||||
|
if (disposed) |
||||||
|
return; |
||||||
|
dlg = new AsynchronousWaitDialogForm(); |
||||||
|
dlg.Text = StringParser.Parse(titleName); |
||||||
|
dlg.cancelButton.Click += delegate { cancelled = true; }; |
||||||
|
UpdateTask(); |
||||||
|
dlg.CreateControl(); |
||||||
|
IntPtr h = dlg.Handle; // force handle creation
|
||||||
|
} |
||||||
|
if (showingDialog) { |
||||||
|
Application.Run(); |
||||||
|
} else { |
||||||
|
Application.Run(dlg); |
||||||
|
} |
||||||
|
} |
||||||
|
#endregion
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Closes the wait dialog.
|
||||||
|
/// </summary>
|
||||||
|
public void Dispose() |
||||||
|
{ |
||||||
|
lock (lockObject) { |
||||||
|
if (disposed) return; |
||||||
|
disposed = true; |
||||||
|
if (dlg != null) { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(DisposeInvoked)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
void DisposeInvoked() |
||||||
|
{ |
||||||
|
dlg.Dispose(); |
||||||
|
Application.ExitThread(); |
||||||
|
} |
||||||
|
|
||||||
|
public int WorkDone { |
||||||
|
get { |
||||||
|
return workDone; |
||||||
|
} |
||||||
|
set { |
||||||
|
if (workDone != value) { |
||||||
|
lock (lockObject) { |
||||||
|
workDone = value; |
||||||
|
if (dlg != null && disposed == false) { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(UpdateProgress)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public string TaskName { |
||||||
|
get { |
||||||
|
lock (lockObject) { |
||||||
|
return taskName; |
||||||
|
} |
||||||
|
} |
||||||
|
set { |
||||||
|
if (taskName != value) { |
||||||
|
lock (lockObject) { |
||||||
|
taskName = value; |
||||||
|
if (dlg != null && disposed == false) { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(UpdateTask)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Begins a new task with the specified name and total amount of work.
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="name">Name of the task. Use null to display "please wait..." message</param>
|
||||||
|
/// <param name="totalWork">Total amount of work in work units. Use 0 for unknown amount of work.</param>
|
||||||
|
public void BeginTask(string name, int totalWork, bool allowCancel) |
||||||
|
{ |
||||||
|
if (name == null) |
||||||
|
name = "${res:Global.PleaseWait}"; |
||||||
|
if (totalWork < 0) |
||||||
|
totalWork = 0; |
||||||
|
|
||||||
|
lock (lockObject) { |
||||||
|
this.allowCancel = allowCancel; |
||||||
|
this.totalWork = totalWork; |
||||||
|
this.taskName = name; |
||||||
|
if (dlg != null && disposed == false) { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(UpdateTask)); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Resets the task to a generic "please wait" with marquee progress bar.
|
||||||
|
/// </summary>
|
||||||
|
public void Done() |
||||||
|
{ |
||||||
|
workDone = 0; |
||||||
|
BeginTask(null, 0, false); |
||||||
|
} |
||||||
|
|
||||||
|
void UpdateTask() |
||||||
|
{ |
||||||
|
int totalWork = this.totalWork; |
||||||
|
|
||||||
|
dlg.taskLabel.Text = StringParser.Parse(taskName); |
||||||
|
if (allowCancel) { |
||||||
|
dlg.cancelButton.Visible = true; |
||||||
|
dlg.progressBar.Width = dlg.cancelButton.Left - 8 - dlg.progressBar.Left; |
||||||
|
} else { |
||||||
|
dlg.cancelButton.Visible = false; |
||||||
|
dlg.progressBar.Width = dlg.cancelButton.Right - dlg.progressBar.Left; |
||||||
|
} |
||||||
|
|
||||||
|
if (totalWork > 0) { |
||||||
|
if (dlg.progressBar.Value > totalWork) { |
||||||
|
dlg.progressBar.Value = 0; |
||||||
|
} |
||||||
|
dlg.progressBar.Maximum = totalWork + 1; |
||||||
|
dlg.progressBar.Style = ProgressBarStyle.Continuous; |
||||||
|
} else { |
||||||
|
dlg.progressBar.Style = ProgressBarStyle.Marquee; |
||||||
|
} |
||||||
|
UpdateProgress(); |
||||||
|
} |
||||||
|
|
||||||
|
void UpdateProgress() |
||||||
|
{ |
||||||
|
int workDone = this.workDone; |
||||||
|
if (workDone < 0) workDone = 0; |
||||||
|
if (workDone > dlg.progressBar.Maximum) |
||||||
|
workDone = dlg.progressBar.Maximum; |
||||||
|
dlg.progressBar.Value = workDone; |
||||||
|
} |
||||||
|
|
||||||
|
bool showingDialog; |
||||||
|
|
||||||
|
public bool ShowingDialog { |
||||||
|
get { return showingDialog; } |
||||||
|
set { |
||||||
|
if (showingDialog != value) { |
||||||
|
showingDialog = value; |
||||||
|
lock (lockObject) { |
||||||
|
if (dlg != null && disposed == false) { |
||||||
|
if (value) { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(dlg.Hide)); |
||||||
|
} else { |
||||||
|
dlg.BeginInvoke(new MethodInvoker(delegate { |
||||||
|
Thread.Sleep(100); |
||||||
|
if (showingDialog) { |
||||||
|
dlg.Show(); |
||||||
|
} |
||||||
|
})); |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
public bool IsCancelled { |
||||||
|
get { |
||||||
|
return cancelled; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -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> |
||||||
@ -0,0 +1,27 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Dickon Field" email=""/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
/* |
||||||
|
* User: dickon |
||||||
|
* Date: 26/07/2006 |
||||||
|
* Time: 01:14 |
||||||
|
* |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
|
||||||
|
namespace SharpDbTools.Viewer |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Defines the contract supported by a db metadata collection
|
||||||
|
/// viewer
|
||||||
|
/// </summary>
|
||||||
|
public interface IViewer |
||||||
|
{ |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,42 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Dickon Field" email=""/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
/* |
||||||
|
* User: dickon |
||||||
|
* Date: 26/07/2006 |
||||||
|
* Time: 01:07 |
||||||
|
* |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
using SharpDbTools.Model; |
||||||
|
|
||||||
|
namespace SharpDbTools.Viewer |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Description of ViewerFactory.
|
||||||
|
/// </summary>
|
||||||
|
public class ViewerFactory |
||||||
|
{ |
||||||
|
static ViewerFactory instance = new ViewerFactory(); |
||||||
|
|
||||||
|
ViewerFactory() |
||||||
|
{ |
||||||
|
} |
||||||
|
|
||||||
|
public static ViewerFactory GetInstance() |
||||||
|
{ |
||||||
|
return instance; |
||||||
|
} |
||||||
|
|
||||||
|
public static IViewer GetViewer(string metaDataCollectionName, |
||||||
|
object connectionInfo) |
||||||
|
{ |
||||||
|
return null; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,27 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Dickon Field" email=""/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
/* |
||||||
|
* User: dickon |
||||||
|
* Date: 26/07/2006 |
||||||
|
* Time: 01:14 |
||||||
|
* |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
|
||||||
|
namespace SharpDbTools.Viewer |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Defines the contract supported by a db metadata collection
|
||||||
|
/// viewer
|
||||||
|
/// </summary>
|
||||||
|
public interface IViewer |
||||||
|
{ |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,42 @@ |
|||||||
|
// <file>
|
||||||
|
// <copyright see="prj:///doc/copyright.txt"/>
|
||||||
|
// <license see="prj:///doc/license.txt"/>
|
||||||
|
// <owner name="Dickon Field" email=""/>
|
||||||
|
// <version>$Revision$</version>
|
||||||
|
// </file>
|
||||||
|
|
||||||
|
/* |
||||||
|
* User: dickon |
||||||
|
* Date: 26/07/2006 |
||||||
|
* Time: 01:07 |
||||||
|
* |
||||||
|
*/ |
||||||
|
|
||||||
|
using System; |
||||||
|
using SharpDbTools.Model; |
||||||
|
|
||||||
|
namespace SharpDbTools.Viewer |
||||||
|
{ |
||||||
|
/// <summary>
|
||||||
|
/// Description of ViewerFactory.
|
||||||
|
/// </summary>
|
||||||
|
public class ViewerFactory |
||||||
|
{ |
||||||
|
static ViewerFactory instance = new ViewerFactory(); |
||||||
|
|
||||||
|
ViewerFactory() |
||||||
|
{ |
||||||
|
} |
||||||
|
|
||||||
|
public static ViewerFactory GetInstance() |
||||||
|
{ |
||||||
|
return instance; |
||||||
|
} |
||||||
|
|
||||||
|
public static IViewer GetViewer(string metaDataCollectionName, |
||||||
|
object connectionInfo) |
||||||
|
{ |
||||||
|
return null; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,220 @@ |
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:2.0.50727.42
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace ICSharpCode.NRefactory { |
||||||
|
using System; |
||||||
|
using ICSharpCode.NRefactory.Ast; |
||||||
|
|
||||||
|
|
||||||
|
public interface IAstVisitor { |
||||||
|
|
||||||
|
object VisitAddHandlerStatement(AddHandlerStatement addHandlerStatement, object data); |
||||||
|
|
||||||
|
object VisitAddressOfExpression(AddressOfExpression addressOfExpression, object data); |
||||||
|
|
||||||
|
object VisitAnonymousMethodExpression(AnonymousMethodExpression anonymousMethodExpression, object data); |
||||||
|
|
||||||
|
object VisitArrayCreateExpression(ArrayCreateExpression arrayCreateExpression, object data); |
||||||
|
|
||||||
|
object VisitArrayInitializerExpression(ArrayInitializerExpression arrayInitializerExpression, object data); |
||||||
|
|
||||||
|
object VisitAssignmentExpression(AssignmentExpression assignmentExpression, object data); |
||||||
|
|
||||||
|
object VisitAttribute(ICSharpCode.NRefactory.Ast.Attribute attribute, object data); |
||||||
|
|
||||||
|
object VisitAttributeSection(AttributeSection attributeSection, object data); |
||||||
|
|
||||||
|
object VisitBaseReferenceExpression(BaseReferenceExpression baseReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitBinaryOperatorExpression(BinaryOperatorExpression binaryOperatorExpression, object data); |
||||||
|
|
||||||
|
object VisitBlockStatement(BlockStatement blockStatement, object data); |
||||||
|
|
||||||
|
object VisitBreakStatement(BreakStatement breakStatement, object data); |
||||||
|
|
||||||
|
object VisitCaseLabel(CaseLabel caseLabel, object data); |
||||||
|
|
||||||
|
object VisitCastExpression(CastExpression castExpression, object data); |
||||||
|
|
||||||
|
object VisitCatchClause(CatchClause catchClause, object data); |
||||||
|
|
||||||
|
object VisitCheckedExpression(CheckedExpression checkedExpression, object data); |
||||||
|
|
||||||
|
object VisitCheckedStatement(CheckedStatement checkedStatement, object data); |
||||||
|
|
||||||
|
object VisitClassReferenceExpression(ClassReferenceExpression classReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitCompilationUnit(CompilationUnit compilationUnit, object data); |
||||||
|
|
||||||
|
object VisitConditionalExpression(ConditionalExpression conditionalExpression, object data); |
||||||
|
|
||||||
|
object VisitConstructorDeclaration(ConstructorDeclaration constructorDeclaration, object data); |
||||||
|
|
||||||
|
object VisitConstructorInitializer(ConstructorInitializer constructorInitializer, object data); |
||||||
|
|
||||||
|
object VisitContinueStatement(ContinueStatement continueStatement, object data); |
||||||
|
|
||||||
|
object VisitDeclareDeclaration(DeclareDeclaration declareDeclaration, object data); |
||||||
|
|
||||||
|
object VisitDefaultValueExpression(DefaultValueExpression defaultValueExpression, object data); |
||||||
|
|
||||||
|
object VisitDelegateDeclaration(DelegateDeclaration delegateDeclaration, object data); |
||||||
|
|
||||||
|
object VisitDestructorDeclaration(DestructorDeclaration destructorDeclaration, object data); |
||||||
|
|
||||||
|
object VisitDirectionExpression(DirectionExpression directionExpression, object data); |
||||||
|
|
||||||
|
object VisitDoLoopStatement(DoLoopStatement doLoopStatement, object data); |
||||||
|
|
||||||
|
object VisitElseIfSection(ElseIfSection elseIfSection, object data); |
||||||
|
|
||||||
|
object VisitEmptyStatement(EmptyStatement emptyStatement, object data); |
||||||
|
|
||||||
|
object VisitEndStatement(EndStatement endStatement, object data); |
||||||
|
|
||||||
|
object VisitEraseStatement(EraseStatement eraseStatement, object data); |
||||||
|
|
||||||
|
object VisitErrorStatement(ErrorStatement errorStatement, object data); |
||||||
|
|
||||||
|
object VisitEventAddRegion(EventAddRegion eventAddRegion, object data); |
||||||
|
|
||||||
|
object VisitEventDeclaration(EventDeclaration eventDeclaration, object data); |
||||||
|
|
||||||
|
object VisitEventRaiseRegion(EventRaiseRegion eventRaiseRegion, object data); |
||||||
|
|
||||||
|
object VisitEventRemoveRegion(EventRemoveRegion eventRemoveRegion, object data); |
||||||
|
|
||||||
|
object VisitExitStatement(ExitStatement exitStatement, object data); |
||||||
|
|
||||||
|
object VisitExpressionStatement(ExpressionStatement expressionStatement, object data); |
||||||
|
|
||||||
|
object VisitFieldDeclaration(FieldDeclaration fieldDeclaration, object data); |
||||||
|
|
||||||
|
object VisitFieldReferenceExpression(FieldReferenceExpression fieldReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitFixedStatement(FixedStatement fixedStatement, object data); |
||||||
|
|
||||||
|
object VisitForeachStatement(ForeachStatement foreachStatement, object data); |
||||||
|
|
||||||
|
object VisitForNextStatement(ForNextStatement forNextStatement, object data); |
||||||
|
|
||||||
|
object VisitForStatement(ForStatement forStatement, object data); |
||||||
|
|
||||||
|
object VisitGotoCaseStatement(GotoCaseStatement gotoCaseStatement, object data); |
||||||
|
|
||||||
|
object VisitGotoStatement(GotoStatement gotoStatement, object data); |
||||||
|
|
||||||
|
object VisitIdentifierExpression(IdentifierExpression identifierExpression, object data); |
||||||
|
|
||||||
|
object VisitIfElseStatement(IfElseStatement ifElseStatement, object data); |
||||||
|
|
||||||
|
object VisitIndexerDeclaration(IndexerDeclaration indexerDeclaration, object data); |
||||||
|
|
||||||
|
object VisitIndexerExpression(IndexerExpression indexerExpression, object data); |
||||||
|
|
||||||
|
object VisitInnerClassTypeReference(InnerClassTypeReference innerClassTypeReference, object data); |
||||||
|
|
||||||
|
object VisitInterfaceImplementation(InterfaceImplementation interfaceImplementation, object data); |
||||||
|
|
||||||
|
object VisitInvocationExpression(InvocationExpression invocationExpression, object data); |
||||||
|
|
||||||
|
object VisitLabelStatement(LabelStatement labelStatement, object data); |
||||||
|
|
||||||
|
object VisitLocalVariableDeclaration(LocalVariableDeclaration localVariableDeclaration, object data); |
||||||
|
|
||||||
|
object VisitLockStatement(LockStatement lockStatement, object data); |
||||||
|
|
||||||
|
object VisitMethodDeclaration(MethodDeclaration methodDeclaration, object data); |
||||||
|
|
||||||
|
object VisitNamedArgumentExpression(NamedArgumentExpression namedArgumentExpression, object data); |
||||||
|
|
||||||
|
object VisitNamespaceDeclaration(NamespaceDeclaration namespaceDeclaration, object data); |
||||||
|
|
||||||
|
object VisitObjectCreateExpression(ObjectCreateExpression objectCreateExpression, object data); |
||||||
|
|
||||||
|
object VisitOnErrorStatement(OnErrorStatement onErrorStatement, object data); |
||||||
|
|
||||||
|
object VisitOperatorDeclaration(OperatorDeclaration operatorDeclaration, object data); |
||||||
|
|
||||||
|
object VisitOptionDeclaration(OptionDeclaration optionDeclaration, object data); |
||||||
|
|
||||||
|
object VisitParameterDeclarationExpression(ParameterDeclarationExpression parameterDeclarationExpression, object data); |
||||||
|
|
||||||
|
object VisitParenthesizedExpression(ParenthesizedExpression parenthesizedExpression, object data); |
||||||
|
|
||||||
|
object VisitPointerReferenceExpression(PointerReferenceExpression pointerReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitPrimitiveExpression(PrimitiveExpression primitiveExpression, object data); |
||||||
|
|
||||||
|
object VisitPropertyDeclaration(PropertyDeclaration propertyDeclaration, object data); |
||||||
|
|
||||||
|
object VisitPropertyGetRegion(PropertyGetRegion propertyGetRegion, object data); |
||||||
|
|
||||||
|
object VisitPropertySetRegion(PropertySetRegion propertySetRegion, object data); |
||||||
|
|
||||||
|
object VisitRaiseEventStatement(RaiseEventStatement raiseEventStatement, object data); |
||||||
|
|
||||||
|
object VisitReDimStatement(ReDimStatement reDimStatement, object data); |
||||||
|
|
||||||
|
object VisitRemoveHandlerStatement(RemoveHandlerStatement removeHandlerStatement, object data); |
||||||
|
|
||||||
|
object VisitResumeStatement(ResumeStatement resumeStatement, object data); |
||||||
|
|
||||||
|
object VisitReturnStatement(ReturnStatement returnStatement, object data); |
||||||
|
|
||||||
|
object VisitSizeOfExpression(SizeOfExpression sizeOfExpression, object data); |
||||||
|
|
||||||
|
object VisitStackAllocExpression(StackAllocExpression stackAllocExpression, object data); |
||||||
|
|
||||||
|
object VisitStopStatement(StopStatement stopStatement, object data); |
||||||
|
|
||||||
|
object VisitSwitchSection(SwitchSection switchSection, object data); |
||||||
|
|
||||||
|
object VisitSwitchStatement(SwitchStatement switchStatement, object data); |
||||||
|
|
||||||
|
object VisitTemplateDefinition(TemplateDefinition templateDefinition, object data); |
||||||
|
|
||||||
|
object VisitThisReferenceExpression(ThisReferenceExpression thisReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitThrowStatement(ThrowStatement throwStatement, object data); |
||||||
|
|
||||||
|
object VisitTryCatchStatement(TryCatchStatement tryCatchStatement, object data); |
||||||
|
|
||||||
|
object VisitTypeDeclaration(TypeDeclaration typeDeclaration, object data); |
||||||
|
|
||||||
|
object VisitTypeOfExpression(TypeOfExpression typeOfExpression, object data); |
||||||
|
|
||||||
|
object VisitTypeOfIsExpression(TypeOfIsExpression typeOfIsExpression, object data); |
||||||
|
|
||||||
|
object VisitTypeReference(TypeReference typeReference, object data); |
||||||
|
|
||||||
|
object VisitTypeReferenceExpression(TypeReferenceExpression typeReferenceExpression, object data); |
||||||
|
|
||||||
|
object VisitUnaryOperatorExpression(UnaryOperatorExpression unaryOperatorExpression, object data); |
||||||
|
|
||||||
|
object VisitUncheckedExpression(UncheckedExpression uncheckedExpression, object data); |
||||||
|
|
||||||
|
object VisitUncheckedStatement(UncheckedStatement uncheckedStatement, object data); |
||||||
|
|
||||||
|
object VisitUnsafeStatement(UnsafeStatement unsafeStatement, object data); |
||||||
|
|
||||||
|
object VisitUsing(Using @using, object data); |
||||||
|
|
||||||
|
object VisitUsingDeclaration(UsingDeclaration usingDeclaration, object data); |
||||||
|
|
||||||
|
object VisitUsingStatement(UsingStatement usingStatement, object data); |
||||||
|
|
||||||
|
object VisitVariableDeclaration(VariableDeclaration variableDeclaration, object data); |
||||||
|
|
||||||
|
object VisitWithStatement(WithStatement withStatement, object data); |
||||||
|
|
||||||
|
object VisitYieldStatement(YieldStatement yieldStatement, object data); |
||||||
|
} |
||||||
|
} |
||||||
Loading…
Reference in new issue