1 package com
.intellij
.ide
.actions
;
3 import com
.intellij
.openapi
.actionSystem
.*;
4 import com
.intellij
.openapi
.project
.DumbAware
;
5 import com
.intellij
.openapi
.ui
.DialogWrapper
;
6 import com
.intellij
.openapi
.vcs
.ProjectLevelVcsManager
;
7 import com
.intellij
.openapi
.vcs
.VcsBundle
;
8 import com
.intellij
.openapi
.vcs
.VcsDirectoryMapping
;
10 import java
.util
.Arrays
;
12 public class StartUseVcsAction
extends AnAction
implements DumbAware
{
14 public void update(final AnActionEvent e
) {
15 final VcsDataWrapper data
= new VcsDataWrapper(e
);
16 final boolean enabled
= data
.enabled();
18 final Presentation presentation
= e
.getPresentation();
19 presentation
.setEnabled(enabled
);
20 presentation
.setVisible(enabled
);
22 presentation
.setText(VcsBundle
.message("action.enable.version.control.integration.text"));
26 public void actionPerformed(final AnActionEvent e
) {
27 final VcsDataWrapper data
= new VcsDataWrapper(e
);
28 final boolean enabled
= data
.enabled();
33 final StartUseVcsDialog dialog
= new StartUseVcsDialog(data
);
35 if (dialog
.getExitCode() == DialogWrapper
.OK_EXIT_CODE
) {
36 final String vcsName
= dialog
.getVcs();
37 if (vcsName
.length() > 0) {
38 final ProjectLevelVcsManager manager
= data
.getManager();
39 manager
.setDirectoryMappings(Arrays
.asList(new VcsDirectoryMapping("", vcsName
)));