public void Invoke(object sender, ModuleEditorEventArgs e) { Log.Source.TraceInformation("Invoking {0} FileName='{1}'", ClassName, ((IEditor)sender).FileName); Invoking(); ModuleEditor instance = (ModuleEditor)GetInstance(); instance.Invoke(sender, e); }
public void Invoke(IEditor editor, ModuleEditorEventArgs e) { Log.Source.TraceInformation("Invoking {0} FileName='{1}'", ClassName, editor.FileName); Invoking(); ModuleEditor instance = (ModuleEditor)GetInstance(); instance.Invoke(editor, e); }
// Called by the core when a file matching Mask is opened in the editor. public override void Invoke(IEditor editor, ModuleEditorEventArgs e) { // get the file name, it may be amended var fileName = editor.FileName; // ?NewFile? if (fileName.Contains("?")) { return; } // get the usual configurations var parser = new EditorConfigParser(); var configurations = parser.GetConfigurationFilesTillRoot(fileName); if (configurations.Count == 0) { // get the profile configurations to use with the amended file var defaults = GetProfileConfigurations(ref fileName); if (defaults == null) { return; } configurations = defaults; } // get the properties for the original or amended file var config = parser.Parse(fileName, configurations); var properties = config.Properties; if (properties.TryGetValue(key_trim_trailing_whitespace, out var trim) && string.Equals(trim, "true", StringComparison.OrdinalIgnoreCase)) { do_trim_trailing_whitespace = true; } if (properties.TryGetValue(key_insert_final_newline, out var eof) && string.Equals(eof, "true", StringComparison.OrdinalIgnoreCase)) { do_insert_final_newline = true; } if (do_trim_trailing_whitespace || do_insert_final_newline) { editor.Saving += OnSaving; } if (properties.TryGetValue(key_indent_style, out var style)) { switch (style) { case "tab": editor.ExpandTabs = ExpandTabsMode.None; break; case "space": editor.ExpandTabs = editor.DisableHistory ? ExpandTabsMode.New : ExpandTabsMode.All; break; } } if (properties.TryGetValue(key_indent_size, out var size)) { if (int.TryParse(size, out var value) && value > 0) { editor.TabSize = value; } } if (properties.TryGetValue(key_charset, out var charset)) { var codePage = editor.CodePage; switch (charset.ToLower()) { case "utf-8": if (editor.CodePage != 65001) { editor.CodePage = 65001; } if (editor.WriteByteOrderMark) { editor.WriteByteOrderMark = false; } break; case "utf-8-bom": if (editor.CodePage != 65001) { editor.CodePage = 65001; } if (!editor.WriteByteOrderMark) { editor.WriteByteOrderMark = true; } break; case "utf-16le": if (editor.CodePage != 1200) { editor.CodePage = 1200; } editor.WriteByteOrderMark = true; break; case "utf-16be": if (editor.CodePage != 1201) { editor.CodePage = 1201; } editor.WriteByteOrderMark = true; break; } } }
/// <summary> /// Editor <see cref="IEditorBase.Opened"/> handler. /// </summary> /// <param name="editor">The editor.</param> /// <param name="e">The arguments.</param> /// <remarks> /// This method is called once on opening an editor. /// Normally it adds editor event handlers, then they do the jobs. /// </remarks> /// <example> /// See the demo module <c>EditorKit</c> and its module editor classes. /// It is not just an example, it can be used for real. /// </example> public abstract void Invoke(IEditor editor, ModuleEditorEventArgs e);
public override void Invoke(IEditor editor, ModuleEditorEventArgs e) { editor.ExpandTabs = editor.DisableHistory ? ExpandTabsMode.New : ExpandTabsMode.All; editor.TabSize = 2; }
// Called when a file is opened. It installs OnSaving(). public override void Invoke(IEditor editor, ModuleEditorEventArgs e) { editor.Saving += OnSaving; }
/// <summary> /// Editor <see cref="IEditorBase.Opened"/> handler. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The arguments.</param> /// <remarks> /// This method is called once on opening an editor. /// Normally it adds editor event handlers, then they do the jobs. /// </remarks> /// <example> /// See the demo module <c>EditorKit</c> and its module editor classes. /// It is not just an example, it can be used for real. /// </example> public abstract void Invoke(object sender, ModuleEditorEventArgs e);
// Called when a file is opened. It installs OnSaving(). public override void Invoke(object sender, ModuleEditorEventArgs e) { ((IEditor)sender).Saving += OnSaving; }
public override void Invoke(object sender, ModuleEditorEventArgs e) { ((IEditor)sender).ExpandTabs = ExpandTabsMode.All; }