From a03f08f8326f7238b329d76e84ef24e9e50cd9c4 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Sun, 20 Jan 2019 16:00:03 +0100 Subject: [PATCH] +UITheme.isThemeFile() --- .../platform-impl/src/com/intellij/ide/ui/UITheme.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java b/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java index 2b0c4b6c0a98..d65cce4bfcfd 100644 --- a/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java +++ b/platform/platform-impl/src/com/intellij/ide/ui/UITheme.java @@ -1,4 +1,4 @@ -// 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. +// Copyright 2000-2019 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.ide.ui; import com.fasterxml.jackson.databind.ObjectMapper; @@ -6,11 +6,13 @@ import com.intellij.ide.plugins.cl.PluginClassLoader; import com.intellij.openapi.util.IconLoader; import com.intellij.openapi.util.IconPathPatcher; import com.intellij.openapi.util.text.StringUtil; +import com.intellij.openapi.vfs.VirtualFile; import com.intellij.ui.ColorUtil; import com.intellij.util.SVGLoader; import com.intellij.util.ui.JBDimension; import com.intellij.util.ui.JBInsets; import com.intellij.util.ui.UIUtil; +import org.jetbrains.annotations.Contract; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.w3c.dom.Element; @@ -35,6 +37,7 @@ import static com.intellij.util.ui.JBUI.asUIResource; * @author Konstantin Bulenkov */ public class UITheme { + public static final String FILE_EXT_ENDING = ".theme.json"; private String name; private boolean dark; private String author; @@ -387,6 +390,11 @@ public class UITheme { this.editorSchemeName = editorSchemeName; } + @Contract("null -> false") + public static boolean isThemeFile(@Nullable VirtualFile file) { + return file != null && StringUtil.endsWithIgnoreCase(file.getName(), FILE_EXT_ENDING); + } + // //json deserialization methods //