Skip to content

Commit 1bac1b2

Browse files
committed
Allow files to be selected in the project view.
1 parent 71da423 commit 1bac1b2

File tree

2 files changed

+9
-13
lines changed

2 files changed

+9
-13
lines changed

META-INF/plugin.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
text="Show Bytecode outline"
4848
description="Shows the bytecode outline and ASMified code from the current class">
4949
<add-to-group group-id="EditorPopupMenu" anchor="last"/>
50+
<add-to-group group-id="ProjectViewPopupMenu" anchor="last"/>
5051
<add-to-group group-id="CodeMenu" anchor="last"/>
5152
</action>
5253
</actions>

src/org/objectweb/asm/idea/ShowBytecodeOutlineAction.java

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,16 @@
1818

1919
package org.objectweb.asm.idea;
2020

21-
import com.intellij.openapi.actionSystem.*;
21+
import com.intellij.openapi.actionSystem.AnAction;
22+
import com.intellij.openapi.actionSystem.AnActionEvent;
23+
import com.intellij.openapi.actionSystem.PlatformDataKeys;
24+
import com.intellij.openapi.actionSystem.Presentation;
2225
import com.intellij.openapi.application.Application;
2326
import com.intellij.openapi.application.ApplicationManager;
2427
import com.intellij.openapi.compiler.CompileContext;
2528
import com.intellij.openapi.compiler.CompileScope;
2629
import com.intellij.openapi.compiler.CompileStatusNotification;
2730
import com.intellij.openapi.compiler.CompilerManager;
28-
import com.intellij.openapi.editor.Editor;
2931
import com.intellij.openapi.fileEditor.FileDocumentManager;
3032
import com.intellij.openapi.module.Module;
3133
import com.intellij.openapi.module.ModuleUtil;
@@ -59,15 +61,10 @@ public class ShowBytecodeOutlineAction extends AnAction {
5961

6062
@Override
6163
public void update(final AnActionEvent e) {
62-
final Editor editor = e.getData(PlatformDataKeys.EDITOR);
6364
final VirtualFile virtualFile = e.getData(PlatformDataKeys.VIRTUAL_FILE);
65+
final Project project = e.getData(PlatformDataKeys.PROJECT);
6466
final Presentation presentation = e.getPresentation();
65-
if (editor == null || virtualFile == null) {
66-
presentation.setEnabled(false);
67-
return;
68-
}
69-
final Project project = editor.getProject();
70-
if (project == null) {
67+
if (project == null || virtualFile == null) {
7168
presentation.setEnabled(false);
7269
return;
7370
}
@@ -76,10 +73,8 @@ public void update(final AnActionEvent e) {
7673
}
7774

7875
public void actionPerformed(AnActionEvent e) {
79-
final Editor editor = e.getData(PlatformDataKeys.EDITOR);
8076
final VirtualFile virtualFile = e.getData(PlatformDataKeys.VIRTUAL_FILE);
81-
if (editor == null) return;
82-
final Project project = editor.getProject();
77+
final Project project = e.getData(PlatformDataKeys.PROJECT);
8378
if (project == null || virtualFile == null) return;
8479
final PsiFile psiFile = PsiManager.getInstance(project).findFile(virtualFile);
8580
if (psiFile instanceof PsiClassOwner) {
@@ -99,7 +94,7 @@ public void actionPerformed(AnActionEvent e) {
9994
final Application application = ApplicationManager.getApplication();
10095
application.runWriteAction(new Runnable() {
10196
public void run() {
102-
FileDocumentManager.getInstance().saveDocument(editor.getDocument());
97+
FileDocumentManager.getInstance().saveAllDocuments();
10398
}
10499
});
105100
application.executeOnPooledThread(new Runnable() {

0 commit comments

Comments
 (0)