Beispiel #1
0
#pragma warning restore 649

        public IClassifier GetClassifier(ITextBuffer textBuffer)
        {
            MigrationService.MigrateSettingsTo_2_0_0();
            MigrationService.MigrateSettingsTo_3_1_0();
            if (!_wereSettingsSet)
            {
                var editorSettings = SettingsManager.LoadEditorSettings(Paths.CoCoClassificationSettingsFile, MigrationService.Instance);
                var editorOption   = OptionService.ToOption(editorSettings);
                FormattingService.SetFormattingOptions(editorOption);
                ClassificationChangingService.SetAnalyzingOptions(editorOption);

                var generalSettings = SettingsManager.LoadGeneralSettings(Paths.CoCoGeneralSettingsFile, MigrationService.Instance);
                var generalOption   = OptionService.ToOption(generalSettings);
                GeneralChangingService.SetGeneralOptions(generalOption);

                _wereSettingsSet = true;
            }

            return(textBuffer.Properties.GetOrCreateSingletonProperty(() => new CSharpTextBufferClassifier(
                                                                          _classificationsInfo, ClassificationChangingService.Instance,
                                                                          _isEnable, GeneralChangingService.Instance,
                                                                          _textDocumentFactoryService, textBuffer)));
        }