19 package org.sleuthkit.autopsy.report;
21 import java.awt.event.ActionEvent;
22 import java.awt.event.ActionListener;
23 import java.util.Collection;
25 import java.util.prefs.Preferences;
26 import javax.swing.JButton;
27 import javax.swing.event.ChangeListener;
28 import org.openide.WizardDescriptor;
29 import org.openide.util.HelpCtx;
30 import org.openide.util.NbBundle;
31 import org.openide.util.NbPreferences;
33 class ReportWizardPanel1
implements WizardDescriptor.FinishablePanel<WizardDescriptor> {
35 private WizardDescriptor wiz;
36 private ReportVisualPanel1 component;
37 private JButton nextButton;
38 private JButton finishButton;
40 ReportWizardPanel1() {
41 nextButton =
new JButton(NbBundle.getMessage(
this.getClass(),
"ReportWizardPanel1.nextButton.text"));
42 finishButton =
new JButton(NbBundle.getMessage(
this.getClass(),
"ReportWizardPanel1.finishButton.text"));
43 finishButton.setEnabled(
false);
46 nextButton.addActionListener(
new ActionListener() {
48 public void actionPerformed(ActionEvent e) {
53 finishButton.addActionListener(
new ActionListener() {
55 public void actionPerformed(ActionEvent e) {
62 public ReportVisualPanel1 getComponent() {
63 if (component == null) {
64 component =
new ReportVisualPanel1(
this);
70 public HelpCtx getHelp() {
71 return HelpCtx.DEFAULT_HELP;
75 public boolean isValid() {
82 public boolean isFinishPanel() {
86 public void setNext(
boolean enabled) {
87 nextButton.setEnabled(enabled);
90 public void setFinish(
boolean enabled) {
91 finishButton.setEnabled(enabled);
95 public void addChangeListener(ChangeListener l) {
99 public void removeChangeListener(ChangeListener l) {
103 public void readSettings(WizardDescriptor wiz) {
106 wiz.setOptions(
new Object[]{WizardDescriptor.PREVIOUS_OPTION, nextButton, finishButton, WizardDescriptor.CANCEL_OPTION});
110 public void storeSettings(WizardDescriptor wiz) {
111 Map<TableReportModule, Boolean> tables = getComponent().getTableModuleStates();
112 Map<GeneralReportModule, Boolean> generals = getComponent().getGeneralModuleStates();
113 wiz.putProperty(
"tableModuleStates", tables);
114 wiz.putProperty(
"generalModuleStates", generals);
115 wiz.putProperty(
"fileModuleStates", getComponent().getFileModuleStates());
119 Preferences prefs = NbPreferences.forModule(ReportWizardPanel1.class);
120 prefs.putBoolean(
"tableModule", any(tables.values()));
121 prefs.putBoolean(
"generalModule", any(generals.values()));
131 private boolean any(Collection<Boolean> bools) {
132 for (Boolean b : bools) {