private void DuplicateScriptMenuItem_Click(object sender, EventArgs e) { if (LuaListView.SelectedIndices().Any()) { var script = SelectedFiles.First(); var sfd = new SaveFileDialog { InitialDirectory = Path.GetDirectoryName(script.Path), DefaultExt = ".lua", FileName = $"{Path.GetFileNameWithoutExtension(script.Path)} (1)", OverwritePrompt = true, Filter = "Lua Scripts (*.lua)|*.lua|All Files (*.*)|*.*" }; if (sfd.ShowDialog() == DialogResult.OK) { string text = File.ReadAllText(script.Path); File.WriteAllText(sfd.FileName, text); LuaImp.ScriptList.Add(new LuaFile(Path.GetFileNameWithoutExtension(sfd.FileName), sfd.FileName)); UpdateDialog(); System.Diagnostics.Process.Start(sfd.FileName); } } }
private void MoveDownMenuItem_Click(object sender, EventArgs e) { var indices = LuaListView.SelectedIndices().ToList(); if (indices.Count == 0 || indices.Last() == LuaImp.ScriptList.Count - 1) { return; } for (var i = indices.Count - 1; i >= 0; i--) { var file = LuaImp.ScriptList[indices[i]]; LuaImp.ScriptList.Remove(file); LuaImp.ScriptList.Insert(indices[i] + 1, file); } var newindices = indices.Select(t => t + 1).ToList(); LuaListView.SelectedIndices.Clear(); foreach (var newi in newindices) { LuaListView.SelectItem(newi, true); } UpdateDialog(); }
private void MoveUpMenuItem_Click(object sender, EventArgs e) { var indices = LuaListView.SelectedIndices().ToList(); if (indices.Count == 0 || indices[0] == 0) { return; } foreach (var index in indices) { var file = LuaImp.ScriptList[index]; LuaImp.ScriptList.Remove(file); LuaImp.ScriptList.Insert(index - 1, file); } var newindices = indices.Select(t => t - 1).ToList(); LuaListView.SelectedIndices.Clear(); foreach (var newi in newindices) { LuaListView.SelectItem(newi, true); } UpdateDialog(); }
private void InsertSeparatorMenuItem_Click(object sender, EventArgs e) { var indices = LuaListView.SelectedIndices().ToList(); if (indices.Any() && indices.Last() < LuaImp.ScriptList.Count) { LuaImp.ScriptList.Insert(indices.Last(), LuaFile.SeparatorInstance); } else { LuaImp.ScriptList.Add(LuaFile.SeparatorInstance); } UpdateDialog(); }
private void ScriptSubMenu_DropDownOpened(object sender, EventArgs e) { ToggleScriptMenuItem.Enabled = PauseScriptMenuItem.Enabled = EditScriptMenuItem.Enabled = SelectedFiles.Any(); RemoveScriptMenuItem.Enabled = MoveUpMenuItem.Enabled = MoveDownMenuItem.Enabled = LuaListView.SelectedIndices().Any(); SelectAllMenuItem.Enabled = _luaList.Any(); StopAllScriptsMenuItem.Enabled = _luaList.Any(script => script.Enabled); RegisteredFunctionsMenuItem.Enabled = GlobalWin.Tools.LuaConsole.LuaImp.RegisteredFunctions.Any(); }