コード例 #1
0
 private void CloseStringEditor()
 {
     if (stringEditor != null)
     {
         var editor = stringEditor;
         stringEditor = null;
         try
         {
             if (!editor.IsDisposed)
             {
                 editor.Close();
             }
         }
         catch
         {
         }
     }
 }
コード例 #2
0
        private void OpenStringEditor()
        {
            if (stringEditor == null)
            {
                var plugins = PluginList.All.Records.OfType<Plugin>().ToList();
                if (plugins.Count == 0)
                {
                    MessageBox.Show(this, "No plugins available to edit", Resources.ErrorText, MessageBoxButtons.OK,
                        MessageBoxIcon.Error);
                    return;
                }

                stringEditor = new StringsEditor();
                stringEditor.FormClosed += delegate { CloseStringEditor(); };
                stringEditor.Plugins = plugins.ToArray();
                stringEditor.Show(this); // modeless. Close if the tree is modified.
            }
        }