Fixing indentation and braces in trunk/

This commit is contained in:
Ima Mechanique 2013-07-14 16:49:03 +01:00
parent 6437594240
commit af230cbed7
13 changed files with 962 additions and 1180 deletions

View file

@ -69,46 +69,37 @@ namespace LSLEditor
{
WebBrowser axWebBrowser1 = sender as WebBrowser;
ToolStripStatusLabel status = axWebBrowser1.Tag as ToolStripStatusLabel;
if (status == null)
return;
if (status != null) {
status.Text = axWebBrowser1.StatusText;
}
}
private void axWebBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
string strUrl = e.Url.ToString();
if (strUrl.EndsWith(".lsl"))
{
if (strUrl.EndsWith(".lsl")) {
e.Cancel = true;
if (MessageBox.Show("Import LSL script?", "Import script", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
return;
if (MessageBox.Show("Import LSL script?", "Import script", MessageBoxButtons.OKCancel) != DialogResult.Cancel) {
WebBrowser axWebBrowser1 = sender as WebBrowser;
axWebBrowser1.Stop();
this.lslEditorForm.OpenFile(strUrl, Guid.NewGuid());
}
}
}
public void ShowWebBrowser(string strTabName, string strUrl)
{
WebBrowser axWebBrowser1 = null;
try
{
if (!Properties.Settings.Default.HelpNewTab)
{
try {
if (!Properties.Settings.Default.HelpNewTab) {
TabPage tabPage = this.tabControl1.TabPages[0];
tabPage.Text = strTabName + " ";
axWebBrowser1 = tabPage.Controls[0] as WebBrowser;
}
}
catch
{
}
} catch { }
if (axWebBrowser1 == null)
{
if (axWebBrowser1 == null) {
TabPage tabPage = new TabPage(strTabName + " ");
tabPage.BackColor = Color.White;
@ -148,24 +139,20 @@ namespace LSLEditor
private void closeToolStripMenuItem_Click(object sender, EventArgs e)
{
int intTabToClose = (int)this.contextMenuStrip1.Tag;
if (intTabToClose >= this.tabControl1.TabCount)
return;
if (intTabToClose < this.tabControl1.TabCount) {
this.tabControl1.TabPages.RemoveAt(intTabToClose);
}
}
private void tabControl1_MouseDown(object sender, MouseEventArgs e)
{
TabControl tabControl = sender as TabControl;
if (tabControl == null)
return;
if (e.Button == MouseButtons.Right)
{
for (int intI = 0; intI < tabControl.TabCount; intI++)
{
if (tabControl != null) {
if (e.Button == MouseButtons.Right) {
for (int intI = 0; intI < tabControl.TabCount; intI++) {
Rectangle rt = tabControl.GetTabRect(intI);
if (e.X > rt.Left && e.X < rt.Right
&& e.Y > rt.Top && e.Y < rt.Bottom)
{
&& e.Y > rt.Top && e.Y < rt.Bottom) {
this.contextMenuStrip1.Tag = intI;
this.contextMenuStrip1.Show(this.tabControl1, new Point(e.X, e.Y));
}
@ -174,3 +161,4 @@ namespace LSLEditor
}
}
}
}

View file

@ -65,14 +65,10 @@ namespace LSLEditor
private const int WM_NCACTIVATE = 0x0086;
protected override void WndProc(ref Message m)
{
if (m.Msg == WM_NCACTIVATE)
{
if (m.LParam != IntPtr.Zero)
{
if (m.Msg == WM_NCACTIVATE) {
if (m.LParam != IntPtr.Zero) {
m.WParam = new IntPtr(1);
}
else
{
} else {
this.numberedTextBoxUC1.TextBox.MakeAllInvis();
}
}
@ -123,10 +119,11 @@ namespace LSLEditor
}
set
{
if(value)
if (value) {
this.tabPage1.Text = "Script";
else
} else {
this.tabPage1.Text = "Text";
}
this.TextBox.ToolTipping = value;
}
}
@ -160,12 +157,9 @@ namespace LSLEditor
imageList.Images.Add(new Bitmap(this.GetType(), "Images.States.gif"));
this.tvOutline.ImageList = imageList;
if (lslEditorForm.outlineToolStripMenuItem.Checked)
{
if (lslEditorForm.outlineToolStripMenuItem.Checked) {
splitContainer1.Panel2Collapsed = false;
}
else
{
} else {
splitContainer1.Panel2Collapsed = true;
}
SetFont();
@ -178,9 +172,10 @@ namespace LSLEditor
void EditForm_Layout(object sender, LayoutEventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
if (this.WindowState == FormWindowState.Minimized) {
this.numberedTextBoxUC1.TextBox.MakeAllInvis();
}
}
void EditForm_Position(object sender, EventArgs e)
{
@ -190,13 +185,15 @@ namespace LSLEditor
void TextBox_OnDirtyChanged(object sender, EventArgs e)
{
this.Text = this.ScriptName;
if (this.numberedTextBoxUC1.TextBox.Dirty)
if (this.numberedTextBoxUC1.TextBox.Dirty) {
this.Text = this.Text.Trim() + "* ";
else
} else {
this.Text = this.Text.Trim() + " ";
}
TabPage tabPage = this.Tag as TabPage;
if (tabPage != null)
if (tabPage != null) {
tabPage.Text = this.Text;
}
this.parent.OnDirtyChanged(this.numberedTextBoxUC1.TextBox.Dirty);
}
@ -216,22 +213,21 @@ namespace LSLEditor
{
this.m_FullPathName = value;
string strDirectory = Path.GetDirectoryName(this.m_FullPathName);
if (Directory.Exists(strDirectory))
{
if (Directory.Exists(strDirectory)) {
Properties.Settings.Default.WorkingDirectory = strDirectory;
}
else
{
if(!Directory.Exists(Properties.Settings.Default.WorkingDirectory))
} else {
if (!Directory.Exists(Properties.Settings.Default.WorkingDirectory)) {
Properties.Settings.Default.WorkingDirectory = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
}
this.m_FullPathName = Path.Combine(Properties.Settings.Default.WorkingDirectory, this.m_FullPathName);
}
this.Text = this.ScriptName;
TabPage tabPage = this.Tag as TabPage;
if (tabPage != null)
if (tabPage != null) {
tabPage.Text = this.Text + " ";
}
}
}
public string ScriptName
{
@ -263,51 +259,47 @@ namespace LSLEditor
private int PercentageIndentTab()
{
int intResult;
int intSpaces = 0;
int intTabs = 0;
StringReader sr = new StringReader(this.TextBox.Text);
while (true)
{
while (true) {
string strLine = sr.ReadLine();
if (strLine == null)
break;
if (strLine.Length == 0)
continue;
if (strLine[0] == ' ')
if (strLine == null) break;
if (strLine.Length == 0) continue;
if (strLine[0] == ' ') {
intSpaces++;
else if (strLine[0] == '\t')
} else if (strLine[0] == '\t') {
intTabs++;
}
if (intTabs == 0 && intSpaces==0)
return 50;
return (int)Math.Round((100.0 * intTabs) / (intTabs + intSpaces));
}
if (intTabs == 0 && intSpaces == 0) {
intResult = 50;
} else {
intResult = (int)Math.Round((100.0 * intTabs) / (intTabs + intSpaces));
}
return intResult;
}
public void LoadFile(string strPath)
{
if(strPath.StartsWith("http://"))
if (strPath.StartsWith("http://")) {
this.FullPathName = Path.GetFileName(strPath);
else
} else {
this.FullPathName = strPath;
}
this.encodedAs = this.numberedTextBoxUC1.TextBox.LoadFile(strPath);
if (!this.IsScript)
return;
if (this.IsScript) {
if (Properties.Settings.Default.IndentAutoCorrect)
{
if (Properties.Settings.Default.IndentAutoCorrect) {
this.TextBox.FormatDocument();
this.TextBox.ClearUndoStack();
}
else
{
if (Properties.Settings.Default.IndentWarning)
{
} else {
if (Properties.Settings.Default.IndentWarning) {
if ((PercentageIndentTab() > 50 && Properties.Settings.Default.SL4SpacesIndent) ||
(PercentageIndentTab() < 50 && !Properties.Settings.Default.SL4SpacesIndent))
{
if (MessageBox.Show("Indent scheme differs from settings\nDo you want to correct it?\nIt can also be corrected by pressing Ctrl-D or turn on Autocorrection (tools menu)", "Indent Warning!!", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK)
{
(PercentageIndentTab() < 50 && !Properties.Settings.Default.SL4SpacesIndent)) {
if (MessageBox.Show("Indent scheme differs from settings\nDo you want to correct it?\nIt can also be corrected by pressing Ctrl-D or turn on Autocorrection (tools menu)", "Indent Warning!!", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK) {
this.TextBox.FormatDocument();
//this.TextBox.ClearUndoStack();
}
@ -315,15 +307,14 @@ namespace LSLEditor
}
}
}
}
public void SaveCurrentFile(string strPath)
{
this.FullPathName = strPath;
Encoding encodeAs = this.encodedAs;
if (this.IsScript && encodeAs == null)
{
switch (Properties.Settings.Default.OutputFormat)
{
if (this.IsScript && encodeAs == null) {
switch (Properties.Settings.Default.OutputFormat) {
case "UTF8":
encodeAs = Encoding.UTF8;
break;
@ -337,9 +328,7 @@ namespace LSLEditor
encodeAs = Encoding.Default;
break;
}
}
else if (encodeAs == null)
{
} else if (encodeAs == null) {
encodeAs = Encoding.UTF8;
}
@ -381,16 +370,15 @@ namespace LSLEditor
{
this.numberedTextBoxUC1.TextBox.MakeAllInvis();
if (runtime != null)
{
if (runtime != null) {
this.components.Remove(runtime);
if (!runtime.IsDisposed)
if (!runtime.IsDisposed) {
runtime.Dispose();
}
runtime = null;
}
for (int intI = this.tabControl1.TabPages.Count - 1; intI > 0; intI--)
{
for (int intI = this.tabControl1.TabPages.Count - 1; intI > 0; intI--) {
this.tabControl1.TabPages.RemoveAt(intI);
}
}
@ -400,24 +388,20 @@ namespace LSLEditor
public bool StartCompiler()
{
bool blnResult = false;
//if (this.disableCompilesyntaxCheckToolStripMenuItem.Checked)
// return false;
if (!this.IsScript)
return false;
if (this.IsScript) {
StopCompiler();
if (this.parent == null)
return false;
if (this.parent != null) {
runtime = new RuntimeConsole(this.parent);
// for disposing
this.components.Add(runtime);
if (!runtime.Compile(this))
{
if (!runtime.Compile(this)) {
this.tabControl1.SelectedIndex = 0;
return false;
}
@ -426,24 +410,24 @@ namespace LSLEditor
tabPage.Controls.Add(runtime);
this.tabControl1.TabPages.Add(tabPage);
this.tabControl1.SelectedIndex = 1;
return true;
blnResult = true;
}
}
return blnResult;
}
public bool SyntaxCheck()
{
bool blnResult = false;
//if (this.disableCompilesyntaxCheckToolStripMenuItem.Checked)
// return false;
if (!this.IsScript)
return false;
if (this.IsScript) {
LSL2CSharp translator = new LSL2CSharp(ConfLSL);
string strCSharp = translator.Parse(SourceCode);
if (System.Diagnostics.Debugger.IsAttached)
{
for (int intI = this.tabControl1.TabPages.Count - 1; intI > 0; intI--)
{
if (System.Diagnostics.Debugger.IsAttached) {
for (int intI = this.tabControl1.TabPages.Count - 1; intI > 0; intI--) {
this.tabControl1.TabPages.RemoveAt(intI);
}
@ -457,8 +441,9 @@ namespace LSLEditor
tabPage.Controls.Add(numberedTextBoxUC1);
this.tabControl.TabPages.Add(tabPage);
}
return (null != CompilerHelper.CompileCSharp(this, strCSharp));
blnResult = (null != CompilerHelper.CompileCSharp(this, strCSharp));
}
return blnResult;
}
public int Find(string strSearch, int intStart, int intEnd, RichTextBoxFinds options)
@ -476,14 +461,14 @@ namespace LSLEditor
private void EditForm_FormClosing(object sender, FormClosingEventArgs e)
{
this.parent.CancelClosing = false;
if (this.Dirty)
{
if (this.Dirty) {
DialogResult dialogResult = MessageBox.Show(this, @"Save """ + this.ScriptName + @"""?", "File has changed", MessageBoxButtons.YesNoCancel);
if (dialogResult == DialogResult.Yes)
if (dialogResult == DialogResult.Yes) {
e.Cancel = !this.parent.SaveFile(this, false);
else
} else {
e.Cancel = (dialogResult == DialogResult.Cancel);
}
}
this.parent.CancelClosing = e.Cancel;
}
@ -497,11 +482,9 @@ namespace LSLEditor
this.parent.BeginInvoke(new TreeNodeMouseClickEventHandler(
delegate(object sender2, TreeNodeMouseClickEventArgs e2)
{
if (e.Node.Tag is Helpers.OutlineHelper)
{
if (e.Node.Tag is Helpers.OutlineHelper) {
Helpers.OutlineHelper ohOutline = (Helpers.OutlineHelper)e.Node.Tag;
if (ohOutline.line < this.TextBox.Lines.Length)
{
if (ohOutline.line < this.TextBox.Lines.Length) {
//editForm.Focus();
//editForm.TextBox.Select();
//editForm.TextBox.Goto(ohOutline.line + 1);

View file

@ -89,34 +89,31 @@ namespace LSLEditor
set
{
this.label1.Text = ""; // clear out message
if (value != "")
{
if (value != "") {
this.comboBoxFind.Text = value;
}
else
{
if (this.comboBoxFind.Items.Count > 0)
} else {
if (this.comboBoxFind.Items.Count > 0) {
this.comboBoxFind.SelectedIndex = this.comboBoxFind.Items.Count - 1;
}
}
}
}
private bool UpdateComboBox(ComboBox comboBox)
{
string strText = comboBox.Text;
bool Found = false;
foreach (string strC in comboBox.Items)
{
if (strC == strText)
{
foreach (string strC in comboBox.Items) {
if (strC == strText) {
Found = true;
break;
}
}
if (!Found)
if (!Found) {
comboBox.Items.Add(strText);
}
return Found;
}
@ -124,11 +121,8 @@ namespace LSLEditor
{
this.label1.Text = "";
EditForm editForm = this.lslEditForm.ActiveMdiForm as EditForm;
if (editForm == null)
return;
if (!UpdateComboBox(this.comboBoxFind))
{
if (editForm != null) {
if (!UpdateComboBox(this.comboBoxFind)) {
editForm.TextBox.SelectionLength = 0;
editForm.TextBox.SelectionStart = 0;
}
@ -139,27 +133,25 @@ namespace LSLEditor
if (this.checkBoxReverse.Checked) options |= RichTextBoxFinds.Reverse;
if (this.checkBoxWholeWord.Checked) options |= RichTextBoxFinds.WholeWord;
if (this.checkBoxReverse.Checked)
{
if (this.checkBoxReverse.Checked) {
intStart = 0; // start cant change ;-)
intEnd = editForm.TextBox.SelectionStart;
}
else
{
} else {
intStart = editForm.TextBox.SelectionStart + editForm.TextBox.SelectionLength;
if (intStart == editForm.TextBox.Text.Length)
if (intStart == editForm.TextBox.Text.Length) {
intStart = 0;
}
intEnd = editForm.TextBox.Text.Length - 1; // length can change!!
}
string strFind = this.comboBoxFind.Text;
int intIndex = editForm.Find(strFind, intStart, intEnd, options);
if (intIndex < 0)
{
if (intIndex < 0) {
this.label1.Text = "Not found...";
return;
}
}
}
private void FindNext_Click(object sender, EventArgs e)
{
@ -169,15 +161,11 @@ namespace LSLEditor
private void comboBoxFind_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Return)
{
if (this.Replace.Enabled)
{
if (e.KeyCode == Keys.Return) {
if (this.Replace.Enabled) {
this.comboBoxReplace.Focus();
e.SuppressKeyPress = true;
}
else
{
} else {
Find();
e.SuppressKeyPress = true;
}
@ -187,13 +175,10 @@ namespace LSLEditor
private void Replace_Click(object sender, EventArgs e)
{
EditForm editForm = this.lslEditForm.ActiveMdiForm as EditForm;
if (editForm == null)
return;
if (editForm != null) {
UpdateComboBox(this.comboBoxReplace);
if (editForm.TextBox.SelectionLength > 0)
{
if (editForm.TextBox.SelectionLength > 0) {
string strReplacement = this.comboBoxReplace.Text;
editForm.TextBox.ReplaceSelectedText(strReplacement);
}
@ -201,16 +186,15 @@ namespace LSLEditor
Find();
this.Focus();
}
}
// WildCardToRegex not used!!
private string WildCardToRegex(string strWildCard)
{
StringBuilder sb = new StringBuilder(strWildCard.Length + 8);
for (int intI = 0; intI < strWildCard.Length; intI++)
{
for (int intI = 0; intI < strWildCard.Length; intI++) {
char chrC = strWildCard[intI];
switch (chrC)
{
switch (chrC) {
case '*':
sb.Append(".*");
break;
@ -233,9 +217,7 @@ namespace LSLEditor
private void ReplaceAll_Click(object sender, EventArgs e)
{
EditForm editForm = this.lslEditForm.ActiveMdiForm as EditForm;
if (editForm == null)
return;
if (editForm == null) {
UpdateComboBox(this.comboBoxReplace);
string strPattern;
@ -244,32 +226,33 @@ namespace LSLEditor
string strSourceCode = editForm.SourceCode;
RegexOptions regexOptions = RegexOptions.Compiled;
if (!this.checkBoxMatchCase.Checked)
if (!this.checkBoxMatchCase.Checked) {
regexOptions |= RegexOptions.IgnoreCase;
if (this.checkBoxWholeWord.Checked)
}
if (this.checkBoxWholeWord.Checked) {
strPattern = @"\b" + strFind + @"\b";
else
} else {
strPattern = strFind;
}
Regex regex = new Regex(strPattern, regexOptions);
int intCount = 0;
foreach(Match m in regex.Matches(strSourceCode))
{
if (m.Value.Length > 0)
foreach (Match m in regex.Matches(strSourceCode)) {
if (m.Value.Length > 0) {
intCount++;
}
if (intCount == 0)
{
MessageBox.Show("No matches found");
}
else
{
if (MessageBox.Show("There are " + intCount + " occurences, replace them all?", "Find and Replace", MessageBoxButtons.YesNoCancel) == DialogResult.Yes)
if (intCount == 0) {
MessageBox.Show("No matches found");
} else {
if (MessageBox.Show("There are " + intCount + " occurences, replace them all?", "Find and Replace", MessageBoxButtons.YesNoCancel) == DialogResult.Yes) {
editForm.SourceCode = regex.Replace(strSourceCode, strReplacement);
}
}
this.Focus();
}
}
private void FindWindow_FormClosing(object sender, FormClosingEventArgs e)
{
@ -281,22 +264,19 @@ namespace LSLEditor
private void FindWindow_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyData == Keys.Escape)
{
if (e.KeyData == Keys.Escape) {
this.Visible = false;
e.SuppressKeyPress = true;
e.Handled = true;
}
if (e.KeyCode == Keys.Return)
{
if (e.KeyCode == Keys.Return) {
Find();
e.SuppressKeyPress = true;
this.Focus();
}
if (e.KeyCode == Keys.F3)
{
if (e.KeyCode == Keys.F3) {
Find();
e.SuppressKeyPress = true;
this.Focus();
@ -309,7 +289,5 @@ namespace LSLEditor
{
this.comboBoxFind.Focus();
}
}
}

View file

@ -67,16 +67,12 @@ namespace LSLEditor
private void Goto()
{
EditForm editForm = this.lslEditForm.ActiveMdiForm as EditForm;
if (editForm == null)
return;
try
{
if (editForm != null) {
try {
int intLine = Convert.ToInt32(this.textBox1.Text);
editForm.TextBox.Goto(intLine);
this.Close();
}
catch
{
} catch { }
}
}
@ -87,8 +83,7 @@ namespace LSLEditor
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Return)
{
if (e.KeyCode == Keys.Return) {
Goto();
e.SuppressKeyPress = true;
}

File diff suppressed because it is too large Load diff

View file

@ -72,26 +72,33 @@ namespace LSLEditor
StringBuilder sb = new StringBuilder();
if ((intPermissions & SecondLife.PERMISSION_DEBIT) == SecondLife.PERMISSION_DEBIT)
if ((intPermissions & SecondLife.PERMISSION_DEBIT) == SecondLife.PERMISSION_DEBIT) {
sb.AppendLine("Take Linden dollars (L$) from you");
}
if ((intPermissions & SecondLife.PERMISSION_TAKE_CONTROLS) == SecondLife.PERMISSION_TAKE_CONTROLS)
if ((intPermissions & SecondLife.PERMISSION_TAKE_CONTROLS) == SecondLife.PERMISSION_TAKE_CONTROLS) {
sb.AppendLine("Act on your control inputs");
}
if ((intPermissions & SecondLife.PERMISSION_TRIGGER_ANIMATION) == SecondLife.PERMISSION_TRIGGER_ANIMATION)
if ((intPermissions & SecondLife.PERMISSION_TRIGGER_ANIMATION) == SecondLife.PERMISSION_TRIGGER_ANIMATION) {
sb.AppendLine("Animate your avatar");
}
if ((intPermissions & SecondLife.PERMISSION_ATTACH) == SecondLife.PERMISSION_ATTACH)
if ((intPermissions & SecondLife.PERMISSION_ATTACH) == SecondLife.PERMISSION_ATTACH) {
sb.AppendLine("Attach to your avatar");
}
if ((intPermissions & SecondLife.PERMISSION_CHANGE_LINKS) == SecondLife.PERMISSION_CHANGE_LINKS)
if ((intPermissions & SecondLife.PERMISSION_CHANGE_LINKS) == SecondLife.PERMISSION_CHANGE_LINKS) {
sb.AppendLine("Link and delink from other objects");
}
if ((intPermissions & SecondLife.PERMISSION_TRACK_CAMERA) == SecondLife.PERMISSION_TRACK_CAMERA)
if ((intPermissions & SecondLife.PERMISSION_TRACK_CAMERA) == SecondLife.PERMISSION_TRACK_CAMERA) {
sb.AppendLine("Track your camera");
}
if ((intPermissions & SecondLife.PERMISSION_CONTROL_CAMERA) == SecondLife.PERMISSION_CONTROL_CAMERA)
if ((intPermissions & SecondLife.PERMISSION_CONTROL_CAMERA) == SecondLife.PERMISSION_CONTROL_CAMERA) {
sb.AppendLine("Control your camera");
}
this.label1.Text = "'" + strObjectName + "', an object owned by '" + strOwner + "',\nwould like to:";
this.label2.Text = sb.ToString();

View file

@ -70,7 +70,7 @@ using System.Runtime.InteropServices;
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
// We use a Major.Minor.Bugfix.Build pattern.
[assembly: AssemblyVersion("2.999.999.7")]
[assembly: AssemblyVersion("2.999.999.13")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
@ -100,4 +100,4 @@ using System.Runtime.InteropServices;
[assembly: AssemblyDelaySign(false)]
//[assembly: AssemblyKeyName("")]
[assembly: ComVisibleAttribute(false)]
[assembly: AssemblyFileVersionAttribute("2.999.999.7")]
[assembly: AssemblyFileVersionAttribute("2.999.999.13")]

View file

@ -74,12 +74,12 @@ namespace LSLEditor
private bool GetNewHost()
{
bool blnResult = false;
Assembly assembly = CompilerHelper.CompileCSharp(editForm, CSharpCode);
if (assembly == null)
return false;
if(SecondLifeHost!=null)
if (assembly != null) {
if (SecondLifeHost != null) {
SecondLifeHost.Dispose();
}
SecondLifeHost = null;
SecondLifeHost = new SecondLifeHost(this.mainForm, assembly, editForm.FullPathName, editForm.guid);
@ -94,7 +94,9 @@ namespace LSLEditor
SecondLifeHost.State("default", true);
return true;
blnResult = true;
}
return blnResult;
}
public bool Compile(EditForm editForm)
@ -119,8 +121,7 @@ namespace LSLEditor
private void ResetScriptWatch()
{
while (true)
{
while (true) {
this.ResetScriptEvent.WaitOne();
SecondLifeHost.Dispose();
@ -131,13 +132,10 @@ namespace LSLEditor
private delegate void AddListenChannelsDelegate(ComboBox comboBox, string[] channels);
private void AddListenChannelsToComboxBox(ComboBox comboBox, string[] channels)
{
if (comboBox.InvokeRequired)
{
if (comboBox.InvokeRequired) {
comboBox.Invoke(new AddListenChannelsDelegate(AddListenChannelsToComboxBox),
new object[] { comboBox, channels });
}
else
{
} else {
comboBox.Items.Clear();
comboBox.Items.AddRange(channels);
comboBox.SelectedIndex = 0;
@ -145,18 +143,19 @@ namespace LSLEditor
}
private void SecondLifeHost_OnListenChannelsChanged(object sender, EventArgs e)
{
foreach (Control control in this.panel4.Controls)
{
foreach (Control control in this.panel4.Controls) {
GroupboxEvent gbe = control as GroupboxEvent;
if (gbe == null)
if (gbe == null) {
continue;
foreach (Control control1 in gbe.Controls)
{
}
foreach (Control control1 in gbe.Controls) {
GroupBox gb = control1 as GroupBox;
if (gb == null)
if (gb == null) {
continue;
if (gb.Name!="listen_0")
}
if (gb.Name != "listen_0") {
continue;
}
ComboBox comboBox = gb.Controls[0] as ComboBox;
AddListenChannelsToComboxBox(comboBox, SecondLifeHost.GetListenChannels());
}
@ -165,13 +164,10 @@ namespace LSLEditor
void host_OnDie(object sender, EventArgs e)
{
if(this.panel1.InvokeRequired)
{
if (this.panel1.InvokeRequired) {
// using Evenhandler definition as a delegate
this.panel1.Invoke(new EventHandler(host_OnDie));
}
else
{
} else {
this.panel1.Enabled = false;
}
}
@ -185,16 +181,11 @@ namespace LSLEditor
private delegate void SetStateComboboxDelegate(string strName);
public void SetStateCombobox(string strName)
{
if (this.comboBox1.InvokeRequired)
{
if (this.comboBox1.InvokeRequired) {
this.comboBox1.Invoke(new SetStateComboboxDelegate(SetStateCombobox), new object[] { strName });
}
else
{
for (int intI = 0; intI < this.comboBox1.Items.Count; intI++)
{
if (this.comboBox1.Items[intI].ToString() == strName)
{
} else {
for (int intI = 0; intI < this.comboBox1.Items.Count; intI++) {
if (this.comboBox1.Items[intI].ToString() == strName) {
this.comboBox1.SelectedIndex = intI;
break;
}
@ -204,15 +195,15 @@ namespace LSLEditor
private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
if (SecondLifeHost == null)
return;
if (SecondLifeHost != null) {
string strStateName = (string)this.comboBox1.Items[this.comboBox1.SelectedIndex];
if (strStateName != "")
{
if (SecondLifeHost.CurrentStateName != strStateName)
if (strStateName != "") {
if (SecondLifeHost.CurrentStateName != strStateName) {
SecondLifeHost.State(strStateName, true);
}
}
}
}
private void host_OnVerboseMessage(object sender, SecondLifeHostEventArgs e)
{
@ -230,8 +221,7 @@ namespace LSLEditor
strC = translator.Parse(strC);
foreach (string strState in translator.States)
{
foreach (string strState in translator.States) {
this.comboBox1.Items.Add(strState);
}
return strC;
@ -240,18 +230,14 @@ namespace LSLEditor
private delegate void ShowLifeEventsDelegate();
private void ShowLifeEvents()
{
if (this.panel4.InvokeRequired)
{
if (this.panel4.InvokeRequired) {
this.panel4.Invoke(new ShowLifeEventsDelegate(ShowLifeEvents), null);
}
else
{
} else {
int intX = 8;
int intY = 0;
this.panel4.Controls.Clear();
foreach (string strEventName in SecondLifeHost.GetEvents())
{
foreach (string strEventName in SecondLifeHost.GetEvents()) {
string strArgs = SecondLifeHost.GetArgumentsFromMethod(strEventName);
GroupboxEvent ge = new GroupboxEvent(new Point(intX, intY), strEventName, strArgs, new System.EventHandler(this.buttonEvent_Click));
this.panel4.Controls.Add(ge);
@ -265,54 +251,44 @@ namespace LSLEditor
// Verbose
public void VerboseConsole(string strLine)
{
if (this.textBox2.IsDisposed)
return;
if (this.textBox2.InvokeRequired)
{
if (!this.textBox2.IsDisposed) {
if (this.textBox2.InvokeRequired) {
this.textBox2.Invoke(new AppendTextDelegate(VerboseConsole), new object[] { strLine });
}
else
{
} else {
this.textBox2.AppendText(strLine.Replace("\n", "\r\n") + "\r\n");
}
}
}
private string GetArgumentValue(string strName)
{
foreach (Control parent in this.panel4.Controls)
{
if (parent.Name == "GroupboxTextbox")
{
foreach (Control c in parent.Controls)
{
if (c.Name == strName)
foreach (Control parent in this.panel4.Controls) {
if (parent.Name == "GroupboxTextbox") {
foreach (Control c in parent.Controls) {
if (c.Name == strName) {
return c.Controls[0].Text;
}
}
}
}
return "";
}
private object[] GetArguments(string strName, string strArgs)
{
if (strArgs == "")
return new object[0];
try
{
object[] objResult = new object[0];
if (strArgs != "") {
try {
string[] args = strArgs.Trim().Split(new char[] { ',' });
object[] argobjects = new object[args.Length];
for (int intI = 0; intI < argobjects.Length; intI++)
{
for (int intI = 0; intI < argobjects.Length; intI++) {
string[] argument = args[intI].Trim().Split(new char[] { ' ' });
if (argument.Length == 2)
{
if (argument.Length == 2) {
string[] arArgs;
string strArgumentValue = GetArgumentValue(strName + "_" + intI);
string strArgumentName = argument[1];
string strArgumentType = argument[0];
switch (strArgumentType)
{
switch (strArgumentType) {
case "System.String":
argobjects[intI] = strArgumentValue;
break;
@ -347,19 +323,15 @@ namespace LSLEditor
argobjects[intI] = null;
break;
}
}
else
{
} else {
MessageBox.Show("Argument must be 'type name' [" + args[intI] + "]");
break;
}
}
return argobjects;
}
catch
{
return new object[0];
objResult = argobjects;
} catch { }
}
return objResult;
}
private void buttonEvent_Click(object sender, System.EventArgs e)
@ -374,9 +346,10 @@ namespace LSLEditor
private void Die()
{
if (this.SecondLifeHost != null)
if (this.SecondLifeHost != null) {
this.SecondLifeHost.Die();
}
}
// Die
private void button1_Click(object sender, EventArgs e)
@ -386,9 +359,10 @@ namespace LSLEditor
private void textBox2_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.A)
if (e.Control && e.KeyCode == Keys.A) {
this.textBox2.SelectAll();
}
}
private void selectAllToolStripMenuItem_Click(object sender, EventArgs e)
{

View file

@ -71,10 +71,12 @@ namespace LSLEditor
this.History = new List<string>();
this.intHistory = 0;
if (Properties.Settings.Default.SimulatorLocation != Point.Empty)
if (Properties.Settings.Default.SimulatorLocation != Point.Empty) {
this.Location = Properties.Settings.Default.SimulatorLocation;
if (Properties.Settings.Default.SimulatorSize != Size.Empty)
}
if (Properties.Settings.Default.SimulatorSize != Size.Empty) {
this.Size = Properties.Settings.Default.SimulatorSize;
}
this.Clear();
@ -86,11 +88,11 @@ namespace LSLEditor
this.LocationChanged += new EventHandler(SimulatorConsole_LocationChanged);
foreach (Form form in this.Children)
{
foreach (Form form in this.Children) {
EditForm editForm = form as EditForm;
if (editForm == null || editForm.IsDisposed)
if (editForm == null || editForm.IsDisposed) {
continue;
}
editForm.ChatHandler = chathandler;
editForm.MessageLinkedHandler = messagelinkedhandler;
editForm.StartCompiler();
@ -99,11 +101,11 @@ namespace LSLEditor
public void Stop()
{
foreach (Form form in this.Children)
{
foreach (Form form in this.Children) {
EditForm editForm = form as EditForm;
if (editForm == null || editForm.IsDisposed)
if (editForm == null || editForm.IsDisposed) {
continue;
}
editForm.StopCompiler();
}
}
@ -118,26 +120,28 @@ namespace LSLEditor
this.Listen(e);
// talk only to the owner
if (e.how == CommunicationType.OwnerSay)
return;
foreach (Form form in this.Children)
{
if (e.how != CommunicationType.OwnerSay) {
foreach (Form form in this.Children) {
EditForm editForm = form as EditForm;
if (editForm == null || editForm.IsDisposed)
if (editForm == null || editForm.IsDisposed) {
continue;
}
if (editForm.runtime == null)
if (editForm.runtime == null) {
continue;
}
if (editForm.runtime.SecondLifeHost == null)
if (editForm.runtime.SecondLifeHost == null) {
continue;
}
// prevent loops loops loops loops, dont talk to myself
if (sender != editForm.runtime.SecondLifeHost)
if (sender != editForm.runtime.SecondLifeHost) {
editForm.runtime.SecondLifeHost.Listen(e);
}
}
}
}
private void SecondLifeHost_OnMessageLinked(object sender, SecondLifeHostMessageLinkedEventArgs e)
{
@ -149,8 +153,7 @@ namespace LSLEditor
List<Guid> list;
int intLinkNum = e.iLinkIndex;
switch (intLinkNum)
{
switch (intLinkNum) {
case 1: // LINK_ROOT , root prim in linked set (but not in a single prim, which is 0)
list = this.solutionExplorer.GetScripts(RootObjectGuid, false);
break;
@ -160,8 +163,7 @@ namespace LSLEditor
case -2: // LINK_ALL_OTHERS , all other prims in object besides prim function is in
list = this.solutionExplorer.GetScripts(RootObjectGuid, true);
// remove scripts in prim itself, and below
foreach (Guid guid in this.solutionExplorer.GetScripts(ObjectGuid, true))
{
foreach (Guid guid in this.solutionExplorer.GetScripts(ObjectGuid, true)) {
if (list.Contains(guid))
list.Remove(guid);
}
@ -169,8 +171,7 @@ namespace LSLEditor
case -3: // LINK_ALL_CHILDREN , all child prims in object
list = this.solutionExplorer.GetScripts(RootObjectGuid, true);
// remove root itself
foreach (Guid guid in this.solutionExplorer.GetScripts(RootObjectGuid, false))
{
foreach (Guid guid in this.solutionExplorer.GetScripts(RootObjectGuid, false)) {
if (list.Contains(guid))
list.Remove(guid);
}
@ -193,36 +194,41 @@ namespace LSLEditor
}
// only send message to running scripts in list
foreach (Form form in this.Children)
{
foreach (Form form in this.Children) {
EditForm editForm = form as EditForm;
if (editForm == null || editForm.IsDisposed)
if (editForm == null || editForm.IsDisposed) {
continue;
}
if (editForm.runtime == null)
if (editForm.runtime == null) {
continue;
}
if (editForm.runtime.SecondLifeHost == null)
if (editForm.runtime.SecondLifeHost == null) {
continue;
}
if(list.Contains(editForm.guid))
if (list.Contains(editForm.guid)) {
editForm.runtime.SecondLifeHost.LinkMessage(e);
}
}
}
private void SimulatorConsole_OnControl(object sender, EventArgs e)
{
foreach (Form form in this.Children)
{
foreach (Form form in this.Children) {
EditForm editForm = form as EditForm;
if (editForm == null || editForm.IsDisposed)
if (editForm == null || editForm.IsDisposed) {
continue;
}
if (editForm.runtime == null)
if (editForm.runtime == null) {
continue;
}
if (editForm.runtime.SecondLifeHost == null)
if (editForm.runtime.SecondLifeHost == null) {
continue;
}
editForm.runtime.SecondLifeHost.SendControl((Keys)sender);
}
@ -231,48 +237,49 @@ namespace LSLEditor
private delegate void AppendTextDelegate(string strLine);
public void TalkToSimulatorConsole(string strLine)
{
if (this.textBox2.InvokeRequired)
{
if (this.textBox2.InvokeRequired) {
this.textBox2.Invoke(new AppendTextDelegate(TalkToSimulatorConsole), new object[] { strLine });
}
else
{
} else {
this.textBox2.AppendText(strLine.Replace("\n", "\r\n") + "\r\n");
}
}
private void Chat(int channel, string name, SecondLife.key id, string message, CommunicationType how)
{
if (OnChat != null)
if (OnChat != null) {
OnChat(this, new SecondLifeHostChatEventArgs(channel, name, id, message, how));
}
}
public void Listen(SecondLifeHostChatEventArgs e)
{
// Translate the incomming messages a bit so it looks like SL.
string strHow = ": ";
if (e.how == CommunicationType.Shout)
if (e.how == CommunicationType.Shout) {
strHow = " shout: ";
}
if (e.how == CommunicationType.Whisper)
if (e.how == CommunicationType.Whisper) {
strHow = " whispers: ";
}
string strWho = e.name;
string strMessage = e.message;
if (e.name == Properties.Settings.Default.AvatarName)
if (e.name == Properties.Settings.Default.AvatarName) {
strWho = "You";
}
if (e.message.ToString().StartsWith("/me"))
{
if (e.message.ToString().StartsWith("/me")) {
strWho = e.name;
strHow = " ";
strMessage = e.message.ToString().Substring(3).Trim();
}
if (e.channel == 0)
if (e.channel == 0) {
TalkToSimulatorConsole(strWho + strHow + strMessage);
}
}
private void Speak(CommunicationType how)
{
@ -283,38 +290,29 @@ namespace LSLEditor
intHistory = History.Count;
if (strMessage == "")
return;
if (strMessage[0] == '/')
{
if (strMessage.StartsWith("/me"))
{
if (strMessage != ""){
if (strMessage[0] == '/') {
if (strMessage.StartsWith("/me")) {
// do nothing
}
else
{
} else {
string strChannel = "";
for (int intI = 1; intI < strMessage.Length; intI++)
{
if (strMessage[intI] >= '0' && strMessage[intI] <= '9')
{
for (int intI = 1; intI < strMessage.Length; intI++) {
if (strMessage[intI] >= '0' && strMessage[intI] <= '9') {
strChannel += strMessage[intI];
if (intI < 10)
if (intI < 10) {
continue;
}
try
{
}
try {
intChannel = Convert.ToInt32(strChannel);
strMessage = strMessage.Substring(intI).Trim();
}
catch
{
} catch {
}
break;
}
}
}
}
SecondLife.key id = new SecondLife.key(Properties.Settings.Default.AvatarKey);
@ -336,37 +334,33 @@ namespace LSLEditor
private void ScrollChat(KeyEventArgs e)
{
e.SuppressKeyPress = true;
if (e.KeyCode == Keys.Up)
if (e.KeyCode == Keys.Up) {
intHistory = Math.Max(0, intHistory - 1);
if (e.KeyCode == Keys.Down)
}
if (e.KeyCode == Keys.Down) {
intHistory = Math.Min(History.Count, intHistory + 1);
}
this.textBox1.Clear();
if (intHistory != History.Count)
if (intHistory != History.Count) {
this.textBox1.AppendText(History[intHistory]);
}
}
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
this.buttonSay.Enabled = true;
this.buttonShout.Enabled = true;
if (e.KeyCode == Keys.Return)
{
if (e.KeyCode == Keys.Return) {
Speak(CommunicationType.Say);
e.SuppressKeyPress = true;
}
if (e.Control && (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down))
{
if (e.Control && (e.KeyCode == Keys.Up || e.KeyCode == Keys.Down)) {
ScrollChat(e);
}
else if (e.KeyCode == Keys.Down ||
e.KeyCode == Keys.Left ||
e.KeyCode == Keys.Right ||
e.KeyCode == Keys.Up
)
{
if (OnControl != null)
} else if (e.KeyCode == Keys.Down || e.KeyCode == Keys.Left || e.KeyCode == Keys.Right || e.KeyCode == Keys.Up ) {
if (OnControl != null) {
OnControl(e.KeyCode, new EventArgs());
}
e.SuppressKeyPress = true;
}
}
@ -391,9 +385,10 @@ namespace LSLEditor
private void textBox2_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control && e.KeyCode == Keys.A)
if (e.Control && e.KeyCode == Keys.A) {
this.textBox2.SelectAll();
}
}
private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{

View file

@ -112,10 +112,11 @@ namespace LSLEditor
{
Uri url;
string strVersion = Assembly.GetExecutingAssembly().GetName().Version.ToString();
if (Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().Location).Contains("beta"))
if (Path.GetFileNameWithoutExtension(Assembly.GetExecutingAssembly().Location).Contains("beta")) {
url = new Uri(Properties.Settings.Default.UpdateManifest + "?beta-" + strVersion);
else
} else {
url = new Uri(Properties.Settings.Default.UpdateManifest + "?" + strVersion);
}
manifest = new WebClient();
manifest.DownloadStringCompleted += new DownloadStringCompletedEventHandler(manifest_DownloadCompleted);
@ -130,28 +131,26 @@ namespace LSLEditor
public void CheckForUpdate(bool blnForce)
{
if (!blnForce)
{
if (Properties.Settings.Default.DeleteOldFiles)
if (!blnForce) {
if (Properties.Settings.Default.DeleteOldFiles) {
DeleteOldFile();
}
DateTime dateTime = Properties.Settings.Default.CheckDate;
if (Properties.Settings.Default.CheckEveryDay)
{
if (Properties.Settings.Default.CheckEveryDay) {
TimeSpan lastUpdate = DateTime.Now - dateTime;
if (lastUpdate.TotalDays >= 1.0)
if (lastUpdate.TotalDays >= 1.0) {
blnForce = true;
}
else if (Properties.Settings.Default.CheckEveryWeek)
{
} else if (Properties.Settings.Default.CheckEveryWeek) {
TimeSpan lastUpdate = DateTime.Now - dateTime;
if(lastUpdate.TotalDays >= 7.0)
if (lastUpdate.TotalDays >= 7.0) {
blnForce = true;
}
}
}
if (blnForce)
{
if (blnForce) {
Properties.Settings.Default.CheckDate = DateTime.Now;
Properties.Settings.Default.Save(); // save also all settings
@ -176,19 +175,13 @@ namespace LSLEditor
string strHelpHashMe = "";
string strHelpFile = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), Properties.Settings.Default.HelpOfflineFile);
if (File.Exists(strHelpFile))
{
if (File.Exists(strHelpFile)) {
strHelpHashMe = Decompressor.MD5Verify.ComputeHash(strHelpFile);
}
else
{
} else {
// help file does not exist
if (Properties.Settings.Default.HelpOffline || blnOnlyHelpFile)
{
if (Properties.Settings.Default.HelpOffline || blnOnlyHelpFile) {
strHelpHashMe = "*"; // force new update
}
else
{
} else {
strHelpHashMe = ""; // no update
this.labelHelpFile.Visible = false;
this.labelHelpversionString.Visible = false;
@ -196,22 +189,22 @@ namespace LSLEditor
}
StringReader sr = new StringReader(e.Result);
for (int intI = 0; intI < 255; intI++)
{
for (int intI = 0; intI < 255; intI++) {
string strLine = sr.ReadLine();
if (strLine == null)
if (strLine == null) {
break;
}
int intSplit = strLine.IndexOf("=");
if (intSplit < 0)
if (intSplit < 0) {
continue;
}
string strName = strLine.Substring(0, intSplit);
string strValue = strLine.Substring(intSplit + 1);
//All hashes are of the uncompressed file. However, different archives may contain different versions.
switch (strName)
{
switch (strName) {
case "Version":
case "BZipVersion":
bzip = new versionInfo(strValue);
@ -274,48 +267,41 @@ namespace LSLEditor
this.labelOurVersionString.Text = current.version.ToString();
this.labelLatestVersionString.Text = web.version.ToString();
if (String.IsNullOrEmpty(web.uri) || (web.version.CompareTo(current.version) != 1))
{
if (String.IsNullOrEmpty(web.uri) || (web.version.CompareTo(current.version) != 1)) {
return;
}
if (strHelpHashMe == "")
if (strHelpHashMe == "") {
strHelpHashMe = strHelpHashWeb;
}
if (strHelpHashMe == strHelpHashWeb)
{
if (strHelpHashMe == strHelpHashWeb) {
this.labelHelpversionString.Text = "Up to date";
this.strHelpUrl = null;
}
else
{
} else {
this.labelHelpversionString.Text = "Out of date";
}
if (current.hash == web.hash)
{
if (current.hash == web.hash) {
this.strDownloadUrl = null;
}
else
{
} else {
this.strDownloadUrl = web.uri;
}
if (this.blnOnlyHelpFile)
{
if (this.blnOnlyHelpFile) {
this.strDownloadUrl = null;
this.labelLatestVersion.Visible = false;
this.labelLatestVersionString.Visible = false;
}
if (this.strHelpUrl != null || this.strDownloadUrl != null)
{
if (this.strHelpUrl != null || this.strDownloadUrl != null) {
this.buttonUpdate.Enabled = true;
if (OnUpdateAvailable != null)
if (OnUpdateAvailable != null) {
OnUpdateAvailable(this, null);
}
}
}
private void buttonCancel_Click(object sender, EventArgs e)
{
@ -330,23 +316,23 @@ namespace LSLEditor
private void Download()
{
if (strHelpUrl != null)
if (strHelpUrl != null) {
DownloadHelpFile(); // starts also DownloadProgram when finished
else
} else {
DownloadProgram();
}
}
private void DownloadHelpFile()
{
if (strHelpUrl == null)
return;
if (strHelpUrl != null) {
Uri url = new Uri(strHelpUrl);
client = new WebClient();
if(this.strHelpReferer != null)
if (this.strHelpReferer != null) {
client.Headers.Add("Referer", strHelpReferer);
}
client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadHelpFileCompleted);
client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(client_DownloadProgressChanged);
@ -355,45 +341,43 @@ namespace LSLEditor
string strDirectory = Path.GetDirectoryName(strCurrentFile);
string strNewFile = Path.Combine(strDirectory, Properties.Settings.Default.HelpOfflineFile);
if (File.Exists(strNewFile))
if (File.Exists(strNewFile)) {
File.Delete(strNewFile);
}
client.DownloadFileAsync(url, strNewFile);
}
}
void client_DownloadHelpFileCompleted(object sender, AsyncCompletedEventArgs e)
{
try
{
if (e.Error != null)
try {
if (e.Error != null) {
throw e.Error;
}
string strCurrentFile = Assembly.GetExecutingAssembly().Location;
string strDirectory = Path.GetDirectoryName(strCurrentFile);
string strNewFile = Path.Combine(strDirectory, Properties.Settings.Default.HelpOfflineFile);
string strComputedHash = Decompressor.MD5Verify.ComputeHash(strNewFile);
if (strComputedHash != strHelpHashWeb)
{
if (strComputedHash != strHelpHashWeb) {
this.buttonUpdate.Enabled = true;
throw new Exception("MD5 Hash of HelpFile not correct, try downloading again!");
}
if (this.strDownloadUrl != null)
if (this.strDownloadUrl != null) {
DownloadProgram();
else
} else {
this.Close();
}
catch (Exception exception)
{
} catch (Exception exception) {
MessageBox.Show(exception.Message, "Oops...", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void DownloadProgram()
{
if (strDownloadUrl == null)
return;
if (strDownloadUrl != null) {
Uri url = new Uri(strDownloadUrl);
client = new WebClient();
@ -405,11 +389,13 @@ namespace LSLEditor
string strNewFileName = Path.GetFileName(strDownloadUrl);
string strNewFile = Path.Combine(strDirectory, strNewFileName);
if (File.Exists(strNewFile))
if (File.Exists(strNewFile)) {
File.Delete(strNewFile);
}
client.DownloadFileAsync(url, strNewFile, strNewFileName);
}
}
void client_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
@ -418,10 +404,10 @@ namespace LSLEditor
void client_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
{
try
{
if (e.Error != null)
try {
if (e.Error != null) {
throw e.Error;
}
string strNewFileName = e.UserState.ToString();
@ -433,8 +419,7 @@ namespace LSLEditor
string strOldFile = Path.Combine(strDirectory, "_LSLEditor.exe");
string strExtension = Path.GetExtension(strNewFileName);
switch (strExtension)
{
switch (strExtension) {
case ".bz2":
Decompressor.BZip2.Decompress(File.OpenRead(strZipFile), File.Create(strNewFile));
break;
@ -449,16 +434,16 @@ namespace LSLEditor
break;
}
string strComputedHash = Decompressor.MD5Verify.ComputeHash(strNewFile);
if (strComputedHash == strHashWeb)
{
if (strComputedHash == strHashWeb) {
if (File.Exists(strOldFile))
File.Delete(strOldFile);
File.Move(strCurrentFile, strOldFile);
File.Move(strNewFile, strCurrentFile);
if (File.Exists(strZipFile))
if (File.Exists(strZipFile)) {
File.Delete(strZipFile);
}
// save all there is pending (if any)
Properties.Settings.Default.Save();
@ -466,32 +451,28 @@ namespace LSLEditor
System.Diagnostics.Process.Start(strCurrentFile);
Environment.Exit(0);
}
else
{
} else {
this.buttonUpdate.Enabled = true;
throw new Exception("MD5 Hash not correct, try downloading again!");
}
}
catch (Exception exception)
{
} catch (Exception exception) {
MessageBox.Show(exception.Message, "Oops...", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
private void UpdateApplicationForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (client != null)
{
if (client.IsBusy)
if (client != null) {
if (client.IsBusy) {
client.CancelAsync();
}
client.Dispose();
}
client = null;
if (manifest != null)
{
if (manifest.IsBusy)
if (manifest != null) {
if (manifest.IsBusy) {
manifest.CancelAsync();
}
manifest.Dispose();
}
manifest = null;
@ -502,9 +483,10 @@ namespace LSLEditor
string strCurrentFile = Assembly.GetExecutingAssembly().Location;
string strDirectory = Path.GetDirectoryName(strCurrentFile);
string strOldFile = Path.Combine(strDirectory, "_LSLEditor.exe");
if (File.Exists(strOldFile))
if (File.Exists(strOldFile)) {
File.Delete(strOldFile);
}
}
}
}

View file

@ -68,8 +68,7 @@ namespace LSLEditor
this.ObjectName = strObjectName;
this.id = id;
for (int intI = 1; intI <= 12; intI++)
{
for (int intI = 1; intI <= 12; intI++) {
Button button = this.Controls["Button" + intI] as Button;
button.Visible = false;
}
@ -77,8 +76,7 @@ namespace LSLEditor
this.label1.Text = strOwner + "'s '" + strObjectName + "'";
this.label2.Text = strMessage.ToString().Replace("&", "&&");
for (int intI = 1; intI <= buttons.Count; intI++)
{
for (int intI = 1; intI <= buttons.Count; intI++) {
Button button = this.Controls["Button" + intI] as Button;
if (button == null)
continue;
@ -91,11 +89,11 @@ namespace LSLEditor
void button_Click(object sender, EventArgs e)
{
Button button = sender as Button;
if (button == null)
return;
if (button != null) {
host.Chat(this, this.Channel, this.OwnerName, this.id, button.Text.Replace("&&", "&"), CommunicationType.Say);
this.Close();
}
}
private void button13_Click(object sender, EventArgs e)
{

View file

@ -41,11 +41,10 @@ namespace LSLEditor
private void buttonOK_Click(object sender, EventArgs e)
{
Button button = sender as Button;
if (button == null)
return;
if (button != null) {
host.Chat(this, this.Channel, this.OwnerName, this.id, textBox.Text.Replace("&&", "&"), CommunicationType.Say);
this.Close();
}
}
}
}