mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-08-26 15:27:45 +07:00
PrintOption extension reworked to create new instance each time when the dialog is opened
This commit is contained in:
+30
-22
@@ -23,14 +23,16 @@ package com.intellij.codeEditor.printing;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
import com.intellij.openapi.fileTypes.StdFileTypes;
|
||||
import com.intellij.openapi.options.ConfigurationException;
|
||||
import com.intellij.openapi.options.UnnamedConfigurable;
|
||||
import com.intellij.psi.*;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.util.Map;
|
||||
import java.util.TreeMap;
|
||||
|
||||
public class HyperlinksToClassesOption implements PrintOption {
|
||||
public class HyperlinksToClassesOption extends PrintOption {
|
||||
private JCheckBox myCbGenerateHyperlinksToClasses;
|
||||
private boolean isGenerateHyperlinksToClasses = false;
|
||||
|
||||
@@ -42,27 +44,6 @@ public class HyperlinksToClassesOption implements PrintOption {
|
||||
isGenerateHyperlinksToClasses = generateHyperlinksToClasses;
|
||||
}
|
||||
|
||||
public JComponent createComponent() {
|
||||
myCbGenerateHyperlinksToClasses = new JCheckBox(CodeEditorBundle.message("export.to.html.generate.hyperlinks.checkbox"), isGenerateHyperlinksToClasses);
|
||||
return myCbGenerateHyperlinksToClasses;
|
||||
}
|
||||
|
||||
public boolean isModified() {
|
||||
return myCbGenerateHyperlinksToClasses.isSelected() != isGenerateHyperlinksToClasses;
|
||||
}
|
||||
|
||||
public void apply() throws ConfigurationException {
|
||||
isGenerateHyperlinksToClasses = myCbGenerateHyperlinksToClasses.isSelected();
|
||||
}
|
||||
|
||||
public void reset() {
|
||||
myCbGenerateHyperlinksToClasses.setSelected(isGenerateHyperlinksToClasses);
|
||||
}
|
||||
|
||||
public void disposeUIResources() {
|
||||
myCbGenerateHyperlinksToClasses = null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public TreeMap<Integer, PsiReference> collectReferences(PsiFile psiFile, Map<PsiFile, PsiFile> filesMap) {
|
||||
if (isGenerateHyperlinksToClasses()) {
|
||||
@@ -76,6 +57,12 @@ public class HyperlinksToClassesOption implements PrintOption {
|
||||
return null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public UnnamedConfigurable createConfigurable() {
|
||||
return new HyperlinksToClassesConfigurable();
|
||||
}
|
||||
|
||||
|
||||
private static void findClassReferences(PsiElement psiElement, TreeMap<Integer, PsiReference> refMap, Map<PsiFile, PsiFile> filesMap, PsiFile psiFile) {
|
||||
PsiReference ref = psiElement.getReference();
|
||||
@@ -95,4 +82,25 @@ public class HyperlinksToClassesOption implements PrintOption {
|
||||
}
|
||||
}
|
||||
|
||||
private class HyperlinksToClassesConfigurable implements UnnamedConfigurable {
|
||||
public JComponent createComponent() {
|
||||
myCbGenerateHyperlinksToClasses = new JCheckBox(CodeEditorBundle.message("export.to.html.generate.hyperlinks.checkbox"), isGenerateHyperlinksToClasses);
|
||||
return myCbGenerateHyperlinksToClasses;
|
||||
}
|
||||
|
||||
public boolean isModified() {
|
||||
return myCbGenerateHyperlinksToClasses.isSelected() != isGenerateHyperlinksToClasses;
|
||||
}
|
||||
|
||||
public void apply() throws ConfigurationException {
|
||||
isGenerateHyperlinksToClasses = myCbGenerateHyperlinksToClasses.isSelected();
|
||||
}
|
||||
|
||||
public void reset() {
|
||||
myCbGenerateHyperlinksToClasses.setSelected(isGenerateHyperlinksToClasses);
|
||||
}
|
||||
|
||||
public void disposeUIResources() {
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user