@Bindable public void setSelectedDatasource(IWizardDatasource datasource) { if (datasource instanceof DummyDatasource) { this.datasourceDeck.setSelectedIndex(0); this.datasource = null; this.wrappedStep = null; return; } if (datasource == null) { return; } if (this.datasource != null) { this.wrappedStep.removePropertyChangeListener(validListener); this.datasource.removePropertyChangeListener(finishableListener); } this.wrappedStep = datasource.getSteps().get(0); this.datasource = datasource; this.wrappedStep.addPropertyChangeListener(validListener); this.datasource.addPropertyChangeListener(finishableListener); this.datasourceDeck.setSelectedIndex( datasourceDeck.getChildNodes().indexOf(datasource.getSteps().get(0).getUIComponent())); datasource.getSteps().get(0).refresh(); firePropertyChange("valid", !isValid(), isValid()); }
public void setActiveStep(final int step) { try { if (this.steps == null || steps.isEmpty()) { return; } final int oldActiveStep = this.activeStep; if (oldActiveStep >= 0) { final IWizardStep deactivatingWizardStep = steps.get(oldActiveStep); if (step > oldActiveStep) { if (!deactivatingWizardStep.stepDeactivatingForward()) { return; } } else { if (!deactivatingWizardStep.stepDeactivatingReverse()) { return; } } } this.activeStep = step; final IWizardStep activatingWizardStep = steps.get(activeStep); updateBindings(); // update the controller panel final XulDeck deck = (XulDeck) document.getElementById(CONTENT_DECK_ELEMENT_ID); int index = deck.getChildNodes().indexOf(activatingWizardStep.getUIComponent()); deck.setSelectedIndex(index); selectDataSourceMenuList(activatingWizardStep, index); activatingWizardStep.refresh(); if (activeStep > oldActiveStep) { activatingWizardStep.stepActivatingForward(); } else { activatingWizardStep.stepActivatingReverse(); } this.firePropertyChange(ACTIVE_STEP_PROPERTY_NAME, oldActiveStep, this.activeStep); } catch (Exception e) { e.printStackTrace(); } }