You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
165 lines
8.4 KiB
165 lines
8.4 KiB
using Monaco.Helpers; |
|
using Monaco.Editor; |
|
using System; |
|
using System.Collections.Generic; |
|
using System.Linq; |
|
using System.Text; |
|
using System.Threading.Tasks; |
|
using Windows.Data.Json; |
|
using Newtonsoft.Json; |
|
|
|
namespace Monaco.Editor |
|
{ |
|
/// <summary> |
|
/// Object Parser for https://microsoft.github.io/monaco-editor/api/interfaces/monaco.editor.ieditoroptions.html |
|
/// </summary> |
|
#pragma warning disable CS1591 |
|
public interface IEditorOptions |
|
{ |
|
[JsonProperty("acceptSuggestionOnCommitCharacter")] |
|
bool? AcceptSuggestionOnCommitCharacter { get; set; } // = true; |
|
[JsonProperty("acceptSuggestionOnEnter")] |
|
string AcceptSuggestionOnEnter { get; set; } // = "on"; // on, smart, off |
|
[JsonProperty("accessibilitySupport")] |
|
string AccessibilitySupport { get; set; } // = "auto"; // auto, off, on |
|
[JsonProperty("ariaLabel")] |
|
string AriaLabel { get; set; } |
|
[JsonProperty("autoClosingBrackets")] |
|
bool? AutoClosingBrackets { get; set; } // = true; |
|
//bool AutomaticLayout { get; } // We handle this smartly as part of being a control, don't think it's needed to be exposed. |
|
[JsonProperty("codeLens")] |
|
bool? CodeLens { get; set; } // = true; |
|
[JsonProperty("contextMenu")] |
|
bool? ContextMenu { get; set; } // = true; |
|
[JsonProperty("cursorBlinking")] |
|
string CursorBlinking { get; set; } // = "blink"; // blink, smooth, phase, expand, solid |
|
[JsonProperty("cursorStyle")] |
|
string CursorStyle { get; set; } // = "line"; // line, block |
|
[JsonProperty("disableLayerHinting")] |
|
bool? DisableLayerHinting { get; set; } |
|
[JsonProperty("disableMonospaceOptimizations")] |
|
bool? DisableMonospaceOptimizations { get; set; } |
|
[JsonProperty("dragAndDrop")] |
|
bool? DragAndDrop { get; set; } |
|
[JsonProperty("emptySelectionClipboard")] |
|
bool? EmptySelectionClipboard { get; set; } // = true; |
|
//string ExtraEditorClassName { get; set; } // CSS Class? |
|
[JsonProperty("find")] |
|
IEditorFindOptions Find { get; set; } // = new IEditorFindOptions(); |
|
[JsonProperty("fixedOverflowWidgets")] |
|
bool? FixedOverflowWidgets { get; set; } |
|
[JsonProperty("folding")] |
|
bool? Folding { get; set; } |
|
[JsonProperty("fontFamily")] |
|
string FontFamily { get; set; } |
|
[JsonProperty("fontLigatures")] |
|
bool? FontLigatures { get; set; } |
|
[JsonProperty("fontSize")] |
|
uint? FontSize { get; set; } |
|
[JsonProperty("fontWeight")] |
|
string FontWeight { get; set; } // = "normal"; // 'normal' | 'bold' | 'bolder' | 'lighter' | 'initial' | 'inherit' | '100' | '200' | '300' | '400' | '500' | '600' | '700' | '800' | '900'; |
|
[JsonProperty("formatOnPaste")] |
|
bool? FormatOnPaste { get; set; } |
|
[JsonProperty("glyphMargin")] |
|
bool? GlyphMargin { get; set; } |
|
[JsonProperty("hideCursorInOverviewRuler")] |
|
bool? HideCursorInOverviewRuler { get; set; } |
|
[JsonProperty("hover")] |
|
bool? Hover { get; set; } // = true; |
|
[JsonProperty("iconsInSuggestions")] |
|
bool? IconsInSuggestions { get; set; } // = true; |
|
[JsonProperty("letterSpacing")] |
|
int? LetterSpacing { get; set; } |
|
[JsonProperty("lineDecorationsWidth")] |
|
int? LineDecorationsWidth { get; set; } // = 10; // TODO: Figure out support for union |
|
[JsonProperty("lineHeight")] |
|
int? LineHeight { get; set; } |
|
[JsonProperty("lineNumbers")] |
|
string LineNumbers { get; set; } // = "on"; // off, relative, function // TODO: Figure out function support for line numbers, probably separate add-on to interface |
|
[JsonProperty("lineNumbersMinChars")] |
|
int? LineNumbersMinChars { get; set; } //= 5; |
|
[JsonProperty("links")] |
|
bool? Links { get; set; } // = true; |
|
[JsonProperty("matchBrackets")] |
|
bool? MatchBrackets { get; set; } // = true; |
|
[JsonProperty("minimap")] |
|
IEditorMinimapOptions Minimap { get; set; } |
|
[JsonProperty("mouseWheelScrollSensitivity")] |
|
int? MouseWheelScrollSensitivity { get; set; } // = 1; |
|
[JsonProperty("mouseWheelZoom")] |
|
bool? MouseWheelZoom { get; set; } |
|
[JsonProperty("multiCursorModifier")] |
|
string MultiCursorModifier { get; set; } // = "alt"; ctrlCmd |
|
[JsonProperty("occurrencesHighlight")] |
|
bool? OccurrencesHighlight { get; set; } // = true; |
|
[JsonProperty("overviewRulerBorder")] |
|
bool? OverviewRulerBorder { get; set; } // = true; |
|
[JsonProperty("overviewRulerLanes")] |
|
uint? OverviewRulerLanes { get; set; } // = 2; |
|
[JsonProperty("parameterHints")] |
|
bool? ParameterHints { get; set; } // default? |
|
[JsonProperty("quickSuggestions")] |
|
bool? QuickSuggestions { get; set; } // = true; not sure what object option is... |
|
[JsonProperty("quickSuggestionsDelay")] |
|
uint? QuickSuggestionsDelay { get; set; } // = 500; (ms) |
|
[JsonProperty("readOnly")] |
|
bool? ReadOnly { get; set; } |
|
[JsonProperty("renderControlCharacters")] |
|
bool? RenderControlCharacters { get; set; } |
|
[JsonProperty("renderIndentGuides")] |
|
bool? RenderIndentGuides { get; set; } |
|
[JsonProperty("renderLineHighlight")] |
|
string RenderLineHighlight { get; set; } // = "all"; none, gutter, line |
|
[JsonProperty("renderWhitespace")] |
|
string RenderWhitespace { get; set; } // = "none"; boundary, all |
|
[JsonProperty("revealHorizontalRightPadding")] |
|
uint? RevealHorizontalRightPadding { get; set; } // = 30; (px) |
|
[JsonProperty("roundedSelection")] |
|
bool? RoundedSelection { get; set; } // = true; |
|
[JsonProperty("rulers")] |
|
uint[] Rulers { get; set; } |
|
[JsonProperty("scrollBeyondLastLine")] |
|
bool? ScrollBeyondLastLine { get; set; } // = true; |
|
[JsonProperty("scrollbar")] |
|
IEditorScrollbarOptions Scrollbar { get; set; } |
|
[JsonProperty("selectOnLineNumbers")] |
|
bool? SelectOnLineNumbers { get; set; } // = true; |
|
[JsonProperty("selectionClipboard")] |
|
bool? SelectionClipboard { get; set; } // = true; |
|
[JsonProperty("selectionHighlight")] |
|
bool? SelectionHighlight { get; set; } // = true; |
|
[JsonProperty("showFoldingControls")] |
|
string ShowFoldingControls { get; set; } // = "mouseover"; always |
|
[JsonProperty("snipperSuggestions")] |
|
string SnippetSuggestions { get; set; } // = "true"; top, bottom, inline, none |
|
[JsonProperty("stopRenderingLineAfter")] |
|
int? StopRenderingLineAfter { get; set; } // = 10000; |
|
[JsonProperty("suggestFontSize")] |
|
uint? SuggestFontSize { get; set; } |
|
[JsonProperty("suggestLineHeight")] |
|
int? SuggestLineHeight { get; set; } |
|
[JsonProperty("suggestOnTriggerCharacters")] |
|
bool? SuggestOnTriggerCharacters { get; set; } // = true; |
|
[JsonProperty("useTabStops")] |
|
bool? UseTabStops { get; set; } // default? |
|
[JsonProperty("wordBasedSuggestions")] |
|
bool? WordBasedSuggestions { get; set; } // = true; |
|
[JsonProperty("wordSeparators")] |
|
string WordSeparators { get; set; } // A string containing the word separators used when doing word navigation. Defaults to `~!@#$%^&*()-=+[{]}\|;:\'",.<>/? |
|
[JsonProperty("wordWrap")] |
|
string WordWrap { get; set; } // = "off"; on, wordWrapColumn, bounded |
|
[JsonProperty("wordWrapBreakAfterCharacters")] |
|
string WordWrapBreakAfterCharacters { get; set; } // Configure word wrapping characters. A break will be introduced after these characters. Defaults to ' \t})]?|&,;' |
|
[JsonProperty("wordWrapBeforeCharacters")] |
|
string WordWrapBreakBeforeCharacters { get; set; } // Configure word wrapping characters. A break will be introduced before these characters. Defaults to '{([+' |
|
[JsonProperty("wordWrapObtrusiveCharacters")] |
|
string WordWrapBreakObtrusiveCharacters { get; set; } // Configure word wrapping characters. A break will be introduced after these characters only if no wordWrapBreakBeforeCharacters or wordWrapBreakAfterCharacters were found. Defaults to '.' |
|
[JsonProperty("wordWrapColumn")] |
|
uint? WordWrapColumn { get; set; } // = 80; |
|
[JsonProperty("wordWrapMinified")] |
|
bool? WordWrapMinified { get; set; } |
|
[JsonProperty("wrappingIndent")] |
|
string WrappingIndent { get; set; } // = "none"; same, indent |
|
} |
|
#pragma warning restore CS1591 |
|
}
|
|
|