You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GenerateAction.java 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package com.rthoni.intellij.codefromds.ui.actions;
  2. import com.intellij.openapi.actionSystem.AnAction;
  3. import com.intellij.openapi.actionSystem.AnActionEvent;
  4. import com.intellij.openapi.actionSystem.CommonDataKeys;
  5. import com.intellij.openapi.actionSystem.DataContext;
  6. import com.intellij.openapi.project.Project;
  7. import com.intellij.openapi.project.ProjectManager;
  8. import com.intellij.openapi.ui.DialogWrapper;
  9. import com.intellij.openapi.vfs.VirtualFile;
  10. import com.rthoni.intellij.codefromds.dbo.GenerateOptions;
  11. import com.rthoni.intellij.codefromds.ui.dialogs.GenerateDialog;
  12. import javax.swing.*;
  13. /**
  14. * Created by robin on 11/14/16.
  15. */
  16. public class GenerateAction extends AnAction {
  17. @Override
  18. public void actionPerformed(AnActionEvent e) {
  19. GenerateDialog dlg = new GenerateDialog(null);
  20. dlg.show();
  21. int res = dlg.getExitCode();
  22. if (res == DialogWrapper.OK_EXIT_CODE) {
  23. GenerateOptions options = dlg.getOptions();
  24. options.getSelection();
  25. }
  26. }
  27. @Override
  28. public void update(AnActionEvent e) {
  29. if (e.getPlace().equals("MainMenu")) {
  30. super.update(e);
  31. }
  32. else {
  33. final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(e.getDataContext());
  34. e.getPresentation().setVisible(file != null && file.getName().endsWith(".json"));
  35. }
  36. }
  37. }