package com.rthoni.intellij.codefromds.ui.actions; import com.intellij.openapi.actionSystem.AnAction; import com.intellij.openapi.actionSystem.AnActionEvent; import com.intellij.openapi.actionSystem.CommonDataKeys; import com.intellij.openapi.actionSystem.DataContext; import com.intellij.openapi.project.Project; import com.intellij.openapi.project.ProjectManager; import com.intellij.openapi.ui.DialogWrapper; import com.intellij.openapi.vfs.VirtualFile; import com.rthoni.intellij.codefromds.dbo.GenerateOptions; import com.rthoni.intellij.codefromds.ui.dialogs.GenerateDialog; import javax.swing.*; /** * Created by robin on 11/14/16. */ public class GenerateAction extends AnAction { @Override public void actionPerformed(AnActionEvent e) { GenerateDialog dlg = new GenerateDialog(null); dlg.show(); int res = dlg.getExitCode(); if (res == DialogWrapper.OK_EXIT_CODE) { GenerateOptions options = dlg.getOptions(); dlg = new GenerateDialog(null); dlg.setOptions(options); dlg.show(); } } @Override public void update(AnActionEvent e) { if (e.getPlace().equals("MainMenu")) { super.update(e); } else { final VirtualFile file = CommonDataKeys.VIRTUAL_FILE.getData(e.getDataContext()); e.getPresentation().setVisible(file != null && file.getName().endsWith(".json")); } } }