package form.preferences; import com.intellij.openapi.options.ConfigurationException; import com.intellij.openapi.options.SearchableConfigurable; import com.intellij.openapi.project.Project; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import javax.swing.*; /** * Created by [email protected] on 2017. 5. 4. * Blog : http://jojoldu.tistory.com * Github : http://github.com/jojoldu */ public class TranslatorConfigurable implements SearchableConfigurable { private TranslatorConfigurableGUI gui; @SuppressWarnings("FieldCanBeLocal") private final Project project; public TranslatorConfigurable(@NotNull Project project) { this.project = project; } @Nullable @Override public JComponent createComponent() { gui = new TranslatorConfigurableGUI(); gui.createUI(project); return gui.getRootPanel(); } @Override public void disposeUIResources() { gui = null; } @NotNull @Override public String getId() { return "preference.TranslatorConfigurable"; } @Nls @Override public String getDisplayName() { return "Translator"; } @Nullable @Override public String getHelpTopic() { return "preference.TranslatorConfigurable"; } @Override public boolean isModified() { return gui.isModified(); } @Override public void apply() throws ConfigurationException { gui.apply(); } }