// Copyright (c) Microsoft Corporation. // Licensed under the MIT license. import "IKeyBindings.idl"; import "IControlAppearance.idl"; namespace Microsoft.Terminal.Control { enum ScrollbarState { Visible = 0, Hidden }; enum TextAntialiasingMode { Grayscale = 0, Cleartype, Aliased }; // Class Description: // TerminalSettings encapsulates all settings that control the // TermControl's behavior. In these settings there is both the entirety // of the Core ITerminalSettings interface, and any additional settings // for specifically the control. interface IControlSettings requires Microsoft.Terminal.Core.ICoreSettings, Microsoft.Terminal.Control.IControlAppearance { String ProfileName; Boolean UseAcrylic; ScrollbarState ScrollState; String FontFace; Int32 FontSize; Windows.UI.Text.FontWeight FontWeight; String Padding; Windows.Foundation.Collections.IMap FontFeatures; Windows.Foundation.Collections.IMap FontAxes; Microsoft.Terminal.Control.IKeyBindings KeyBindings; Boolean CopyOnSelect; Boolean FocusFollowMouse; String Commandline; String StartingDirectory; String EnvironmentVariables; TextAntialiasingMode AntialiasingMode; // Experimental Settings Boolean ForceFullRepaintRendering; Boolean SoftwareRendering; }; }