1 package com
.intellij
.openapi
.roots
.ui
.configuration
.artifacts
;
3 import com
.intellij
.openapi
.actionSystem
.AnAction
;
4 import com
.intellij
.openapi
.actionSystem
.AnActionEvent
;
5 import com
.intellij
.openapi
.project
.DumbAwareAction
;
6 import com
.intellij
.openapi
.project
.ProjectBundle
;
7 import com
.intellij
.packaging
.elements
.CompositePackagingElementType
;
8 import com
.intellij
.packaging
.elements
.PackagingElementFactory
;
10 import java
.util
.List
;
15 public class AddCompositeElementActionGroup
extends DumbAwareAction
{
16 private final ArtifactEditorEx myArtifactEditor
;
17 private final CompositePackagingElementType
<?
> myElementType
;
19 public AddCompositeElementActionGroup(ArtifactEditorEx artifactEditor
, CompositePackagingElementType elementType
) {
20 super(ProjectBundle
.message("artifacts.create.action", elementType
.getPresentableName()));
21 myArtifactEditor
= artifactEditor
;
22 myElementType
= elementType
;
23 getTemplatePresentation().setIcon(elementType
.getCreateElementIcon());
26 public void actionPerformed(AnActionEvent e
) {
27 myArtifactEditor
.addNewPackagingElement(myElementType
);
30 public static void addCompositeCreateActions(List
<AnAction
> actions
, final ArtifactEditorEx artifactEditor
) {
31 for (CompositePackagingElementType packagingElementType
: PackagingElementFactory
.getInstance().getCompositeElementTypes()) {
32 actions
.add(new AddCompositeElementActionGroup(artifactEditor
, packagingElementType
));