mock filetype manager if no application allows running lexer suites.
[fedora-idea.git] / platform-api / src / com / intellij / ui / FileColorManager.java
blob1c22ae66bfa7416dfd9065223c2231e08d6436f6
1 package com.intellij.ui;
3 import org.jetbrains.annotations.NotNull;
4 import org.jetbrains.annotations.Nullable;
5 import com.intellij.openapi.vfs.VirtualFile;
6 import com.intellij.openapi.project.Project;
7 import com.intellij.openapi.components.ServiceManager;
9 import java.awt.*;
10 import java.util.Collection;
12 /**
13 * @author spleaner
15 public abstract class FileColorManager {
17 public static FileColorManager getInstance(@NotNull final Project project) {
18 return ServiceManager.getService(project, FileColorManager.class);
21 public abstract boolean isEnabled();
23 public abstract void setEnabled(boolean enabled);
25 public abstract void setEnabledForTabs(boolean b);
27 public abstract boolean isEnabledForTabs();
29 public abstract void addColoredFile(@NotNull VirtualFile file, @NotNull String colorName);
31 public abstract void removeColoredFile(@NotNull VirtualFile file);
33 public abstract void setShared(@NotNull VirtualFile file, boolean shared);
35 @SuppressWarnings({"MethodMayBeStatic"})
36 @Nullable
37 public abstract Color getColor(@NotNull String name);
39 @SuppressWarnings({"MethodMayBeStatic"})
40 public abstract Collection<String> getColorNames();
42 @Nullable
43 public abstract Color getFileColor(@NotNull VirtualFile file, boolean strict);
45 @Nullable
46 public abstract Color getFileColor(@NotNull VirtualFile file);
48 @Nullable
49 public abstract String getColorName(VirtualFile file);
51 public abstract boolean isShared(@NotNull VirtualFile virtualFile);