package krasa.grepconsole.action;
import javax.swing.*;
import krasa.grepconsole.gui.SettingsContext;
import krasa.grepconsole.plugin.MyConfigurable;
import com.intellij.execution.ui.ConsoleView;
import com.intellij.openapi.actionSystem.AnActionEvent;
import com.intellij.openapi.options.ShowSettingsUtil;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.IconLoader;
public class OpenConsoleSettingsAction extends HighlightManipulationAction {
public static final Icon ICON = IconLoader.getIcon("highlight.gif", OpenConsoleSettingsAction.class);
private ConsoleView console;
public OpenConsoleSettingsAction() {
}
public OpenConsoleSettingsAction(ConsoleView console) {
super("Open Grep Console settings", null, ICON);
this.console = console;
}
@Override
public void actionPerformed(final AnActionEvent e) {
Project project = e.getProject();
actionPerformed(project, SettingsContext.NONE);
}
public void actionPerformed(Project project, SettingsContext console) {
MyConfigurable instance = new MyConfigurable();
instance.setCurrentAction(this);
instance.prepareForm(console);
ShowSettingsUtil.getInstance().editConfigurable(project, "GrepConsoleSettings", instance, true);
instance.setCurrentAction(null);
}
@Override
public void applySettings() {
if (console != null) {
resetHighlights(console);
}
}
}