19 package org.sleuthkit.autopsy.report.infrastructure;
21 import java.awt.event.ActionEvent;
22 import java.awt.event.ActionListener;
24 import java.util.prefs.Preferences;
25 import javax.swing.JButton;
26 import javax.swing.event.ChangeListener;
27 import org.openide.WizardDescriptor;
28 import org.openide.util.HelpCtx;
29 import org.openide.util.NbBundle;
30 import org.openide.util.NbPreferences;
32 class ReportWizardPanel1
implements WizardDescriptor.FinishablePanel<WizardDescriptor> {
34 private WizardDescriptor wiz;
35 private ReportVisualPanel1 component;
36 private final Map<String, ReportModuleConfig> moduleConfigs;
37 private final JButton nextButton;
38 private final JButton finishButton;
40 ReportWizardPanel1(Map<String, ReportModuleConfig> moduleConfigs) {
41 this.moduleConfigs = moduleConfigs;
42 nextButton =
new JButton(NbBundle.getMessage(
this.getClass(),
"ReportWizardPanel1.nextButton.text"));
43 finishButton =
new JButton(NbBundle.getMessage(
this.getClass(),
"ReportWizardPanel1.finishButton.text"));
44 finishButton.setEnabled(
false);
47 nextButton.addActionListener(
new ActionListener() {
49 public void actionPerformed(ActionEvent e) {
54 finishButton.addActionListener(
new ActionListener() {
56 public void actionPerformed(ActionEvent e) {
63 public ReportVisualPanel1 getComponent() {
64 if (component == null) {
65 component =
new ReportVisualPanel1(
this, moduleConfigs);
71 public HelpCtx getHelp() {
72 return HelpCtx.DEFAULT_HELP;
76 public boolean isValid() {
83 public boolean isFinishPanel() {
87 public void setNext(
boolean enabled) {
88 nextButton.setEnabled(enabled);
91 public void setFinish(
boolean enabled) {
92 finishButton.setEnabled(enabled);
96 public void addChangeListener(ChangeListener l) {
100 public void removeChangeListener(ChangeListener l) {
104 public void readSettings(WizardDescriptor wiz) {
107 wiz.setOptions(
new Object[]{WizardDescriptor.PREVIOUS_OPTION, nextButton, finishButton, WizardDescriptor.CANCEL_OPTION});
111 public void storeSettings(WizardDescriptor wiz) {
112 wiz.putProperty(
"moduleConfigs", getComponent().getUpdatedModuleConfigs());
116 Preferences prefs = NbPreferences.forModule(ReportWizardPanel1.class);
117 prefs.putBoolean(
"tableModule", getComponent().getTableModule() != null);
118 prefs.putBoolean(
"generalModule", getComponent().getGeneralModule() != null);
119 prefs.putBoolean(
"portableCaseModule", getComponent().getPortableCaseModule() != null);