ZoneBuilder/Source/Core/Windows/ScriptFindReplaceForm.cs

123 lines
No EOL
2.6 KiB
C#

#region ================== Copyright (c) 2007 Pascal vd Heiden
/*
* Copyright (c) 2007 Pascal vd Heiden, www.codeimp.com
* This program is released under GNU General Public License
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
*/
#endregion
#region ================== Namespaces
using System;
using System.Windows.Forms;
#endregion
namespace CodeImp.DoomBuilder.Windows
{
public partial class ScriptFindReplaceForm : DelayedForm
{
#region ================== Variables
private bool appclose;
#endregion
#region ================== Properties
#endregion
#region ================== Constructor
// Constructor
public ScriptFindReplaceForm()
{
InitializeComponent();
}
#endregion
#region ================== Methods
// This makes the Find & Replace options
private FindReplaceOptions MakeOptions()
{
FindReplaceOptions options = new FindReplaceOptions();
options.FindText = findtext.Text;
options.CaseSensitive = casesensitive.Checked;
options.WholeWord = wordonly.Checked;
options.ReplaceWith = replacetext.Text;
return options;
}
// Close the window
new public void Close()
{
appclose = true;
base.Close();
}
// This sets the text to find
public void SetFindText(string text)
{
findtext.Text = text;
findtext.SelectAll();
}
#endregion
#region ================== Events
// Form is closing
private void ScriptFindReplaceForm_FormClosing(object sender, FormClosingEventArgs e)
{
if(!appclose)
{
General.Map.ScriptEditor.Editor.CloseFindReplace(true);
}
}
// Find Next
private void findnextbutton_Click(object sender, EventArgs e)
{
General.Map.ScriptEditor.Editor.FindNext(MakeOptions());
}
// Find Previous (mxd)
private void findpreviousbutton_Click(object sender, EventArgs e)
{
General.Map.ScriptEditor.Editor.FindPrevious(MakeOptions());
}
// Replace
private void replacebutton_Click(object sender, EventArgs e)
{
FindReplaceOptions options = MakeOptions();
General.Map.ScriptEditor.Editor.Replace(options);
General.Map.ScriptEditor.Editor.FindNext(options);
}
// Replace All
private void replaceallbutton_Click(object sender, EventArgs e)
{
General.Map.ScriptEditor.Editor.ReplaceAll(MakeOptions());
}
// Close
private void closebutton_Click(object sender, EventArgs e)
{
General.Map.ScriptEditor.Editor.CloseFindReplace(false);
}
#endregion
}
}