Ejemplo n.º 1
0
        private void UpdateOptionsFromPolicy()
        {
            if (policyContainer == null)
            {
                ClearOptionValue(DefaultOptions.ConvertTabsToSpacesOptionName);
                ClearOptionValue(DefaultOptions.TabSizeOptionName);
                ClearOptionValue(DefaultOptions.IndentSizeOptionName);
                ClearOptionValue(DefaultOptions.NewLineCharacterOptionName);
                ClearOptionValue(DefaultOptions.TrimTrailingWhiteSpaceOptionName);
#if !WINDOWS
                EditorOptions.ClearOptionValue(DefaultTextViewOptions.VerticalRulersName);
#endif

                return;
            }

            var mimeTypes     = IdeServices.DesktopService.GetMimeTypeInheritanceChain(MimeType);
            var currentPolicy = policyContainer.Get <TextStylePolicy> (mimeTypes);

            SetOptionValue(DefaultOptions.ConvertTabsToSpacesOptionName, currentPolicy.TabsToSpaces);
            SetOptionValue(DefaultOptions.TabSizeOptionName, currentPolicy.TabWidth);
            SetOptionValue(DefaultOptions.IndentSizeOptionName, currentPolicy.IndentWidth);
            SetOptionValue(DefaultOptions.NewLineCharacterOptionName, currentPolicy.GetEolMarker());
            SetOptionValue(DefaultOptions.TrimTrailingWhiteSpaceOptionName, currentPolicy.RemoveTrailingWhitespace);

#if !WINDOWS
            EditorOptions.SetOptionValue(
                DefaultTextViewOptions.VerticalRulersName,
                PropertyService.Get <bool> ("ShowRuler") ? new [] { currentPolicy.FileWidth } : Array.Empty <int> ());
#endif
        }
Ejemplo n.º 2
0
 void ClearOptionValue(string optionName)
 {
     TextBufferOptions.ClearOptionValue(optionName);
     EditorOptions.ClearOptionValue(optionName);
 }