package org.intellij.wizard;
import javax.swing.*;
import java.util.Map;
/**
* The main component of wizard flow.
*
* @author <a href="mailto:aefimov@spklabs.com">Alexey Efimov</a>
*/
public interface WizardComponent {
/**
* The name of wizard component. This name also be shown in tab title.
*/
public String getName();
/**
* Initializing of wizard component. This component
* invoked then {@link Wizard} construct all steps in {@link WizardExpert}.
*
* @param properties Initial properties from XML descriptor
*/
public void init(Wizard wizard, Map<String, String> properties);
/**
* Save wizard component settings to temporary storage.
* It not final task of component - it
* invoke then user click on "Previous" or "Next" button.
*/
public void save(Wizard wizard);
/**
* Method calls after {@link #save} to check valid settings in
* component. If settings not valid then method must return false.
* If you like, you may show by {@link com.intellij.openapi.ui.Messages#showWarningDialog}
* method error message in this method.
*/
public boolean validate();
/**
* Return component for wizard component
*/
public JComponent getComponent();
}
|
|