Add API for accessing all attribute keys in a color scheme

This commit is contained in:
Dmitry Jemerov
2018-02-27 12:05:27 +01:00
parent 695aae6810
commit f8d11e71f9
@@ -1,18 +1,4 @@
/*
* Copyright 2000-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package com.intellij.openapi.editor.colors.impl;
@@ -196,6 +182,19 @@ public abstract class AbstractColorsScheme extends EditorFontCacheImpl implement
return myColorsMap.keySet();
}
/**
* Returns the collection of text attribute keys for which this color scheme defines attributes.
*/
@SuppressWarnings("unused")
@NotNull
public Set<TextAttributesKey> getAttributeKeys() {
HashSet<TextAttributesKey> result = new HashSet<>(myAttributesMap.keySet());
if (myParentScheme instanceof DefaultColorsScheme) {
result.addAll(((DefaultColorsScheme) myParentScheme).getAttributeKeys());
}
return result;
}
@Override
public void setEditorFontName(String fontName) {
ModifiableFontPreferences currPreferences = ensureEditableFontPreferences();