package demo14;
import javax.swing.*;
import org.openswing.swing.client.*;
import java.awt.*;
import org.openswing.swing.tree.client.*;
import java.awt.event.*;
import org.openswing.swing.util.client.ClientSettings;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import org.openswing.swing.wizard.client.WizardPanel;
import org.openswing.swing.wizard.client.WizardController;
/**
* <p>Title: OpenSwing Framework</p>
* <p>Description: Wizard controller: it defines which panel to show.</p>
* <p>Copyright: Copyright (C) 2006 Mauro Carniel</p>
* <p> </p>
* @author Mauro Carniel
* @version 1.0
*/
public class ZIPWizardController extends WizardController implements ItemListener {
private WizardPanel wizardPanel = null;
public ZIPWizardController(WizardPanel wizardPanel) {
this.wizardPanel = wizardPanel;
}
/**
* Method called by WizardPanel when showing the panel the first time
* @param wizard wizard panel
* @return panel identifier of the panel to show
*/
public String getFirstPanelId(WizardPanel wizard) {
return "INTRO";
}
/**
* Method called by WizardPanel to check which panel is the last one
* @param wizard wizard panel
* @return panel identifier of the last panel
*/
public String getLastPanelId(WizardPanel wizard) {
if ( !((FirstPanel)wizard.getPanel("FIRST")).getRadioButtonZip().isSelected() )
return "SECOND";
else
return "THIRD";
}
/**
* Method called by WizardPanel when when pressing "Back" button
* @param wizard wizard panel
* @return panel identifier of the panel to show
*/
public String getBackPanelId(WizardPanel wizard) {
if (wizard.getCurrentVisiblePanel().getPanelId().equals("FIRST"))
return "INTRO";
else if (wizard.getCurrentVisiblePanel().getPanelId().equals("SECOND"))
return "FIRST";
else if (wizard.getCurrentVisiblePanel().getPanelId().equals("THIRD"))
return "FIRST";
else
return null;
}
/**
* Method called by WizardPanel when pressing "Next" button
* @param wizard wizard panel
* @return panel identifier of the panel to show
*/
public String getNextPanelId(WizardPanel wizard) {
if (wizard.getCurrentVisiblePanel().getPanelId().equals("INTRO"))
return "FIRST";
else if (wizard.getCurrentVisiblePanel().getPanelId().equals("FIRST")) {
if ( !((FirstPanel)wizard.getPanel("FIRST")).getRadioButtonZip().isSelected() )
return "SECOND";
else
return "THIRD";
}
else
return null;
}
public void itemStateChanged(ItemEvent e) {
wizardPanel.getNextButton().setEnabled( ((JRadioButton)e.getItem()).isSelected() );
}
}