internal TerminalSettings()

in sources/Google.Solutions.IapDesktop.Extensions.Session/Settings/TerminalSettings.cs [126:204]


        internal TerminalSettings(ISettingsStore store)
        {
            this.IsCopyPasteUsingCtrlCAndCtrlVEnabled = store.Read<bool>(
                "IsCopyPasteUsingCtrlCAndCtrlVEnabled",
                "IsCopyPasteUsingCtrlCAndCtrlVEnabled",
                null,
                null,
                true);
            this.IsCopyPasteUsingShiftInsertAndCtrlInsertEnabled = store.Read<bool>(
                "IsCopyPasteUsingShiftInsertAndCtrlInsertEnabled",
                "IsCopyPasteUsingShiftInsertAndCtrlInsertEnabled",
                null,
                null,
                true);
            this.IsQuoteConvertionOnPasteEnabled = store.Read<bool>(
                "IsQuoteConvertionOnPasteEnabled",
                "IsQuoteConvertionOnPasteEnabled",
                null,
                null,
                true);
            this.IsBracketedPasteEnabled = store.Read<bool>(
                "IsBracketedPasteEnabled",
                "IsBracketedPasteEnabled",
                null,
                null,
                true);
            this.IsScrollingUsingCtrlHomeEndEnabled = store.Read<bool>(
                "IsScrollingUsingCtrlHomeEndEnabled",
                "IsScrollingUsingCtrlHomeEndEnabled",
                null,
                null,
                true);
            this.IsScrollingUsingCtrlPageUpDownEnabled = store.Read<bool>(
                "IsScrollingUsingCtrlPageUpDownEnabled",
                "IsScrollingUsingCtrlPageUpDownEnabled",
                null,
                null,
                true);
            this.FontFamily = store.Read<string>(
                "FontFamily",
                "FontFamily",
                null,
                null,
                DefaultFontFamily,
                f => f == null || IsValidFont(f));
            this.FontSizeAsDword = store.Read<int>(
                "FontSize",
                "FontSize",
                null,
                null,
                DwordFromFontSize(DefaultFontSize),
                Predicate.InRange(
                    DwordFromFontSize(MinimumFontSize),
                    DwordFromFontSize(MaximumFontSize)));
            this.ForegroundColorArgb = store.Read<int>(
                "ForegroundColor",
                "ForegroundColor",
                null,
                null,
                Color.White.ToArgb(),
                Predicate.InRange(
                    Color.Black.ToArgb(),
                    Color.White.ToArgb()));
            this.BackgroundColorArgb = store.Read<int>(
                "BackgroundColor",
                "BackgroundColor",
                null,
                null,
                DefaultBackgroundColor.ToArgb(),
                Predicate.InRange(
                    Color.Black.ToArgb(),
                    Color.White.ToArgb()));
            this.CaretStyle = store.Read<VirtualTerminal.CaretStyle>(
                "CaretStyle",
                "CaretStyle",
                null,
                null,
                VirtualTerminal.CaretStyle.BlinkingBar);
        }