IDEA-296909 Editor banners: implement statuses
[idea/community.git] / platform / vcs-impl / src / com / intellij / openapi / vcs / changes / ChangesViewNodeAction.java
1 // 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.
2 package com.intellij.openapi.vcs.changes;
3
4 import com.intellij.openapi.extensions.ProjectExtensionPointName;
5 import com.intellij.openapi.vcs.changes.ui.ChangesBrowserNode;
6 import com.intellij.openapi.vcs.changes.ui.HoverIcon;
7 import org.jetbrains.annotations.ApiStatus;
8 import org.jetbrains.annotations.NotNull;
9 import org.jetbrains.annotations.Nullable;
10
11 /**
12  * EP that allows adding actions to the 'Commit' (aka 'Local Changes') tree, that are visible only when specific node is hovered by mouse.
13  */
14 @ApiStatus.Experimental
15 public interface ChangesViewNodeAction {
16   ProjectExtensionPointName<ChangesViewNodeAction> EP_NAME =
17     new ProjectExtensionPointName<>("com.intellij.vcs.changes.changesViewNodeAction");
18
19   @Nullable
20   HoverIcon createNodeHoverIcon(@NotNull ChangesBrowserNode<?> node);
21 }