use of org.pentaho.ui.xul.binding.Binding in project data-access by pentaho.
the class MainWizardController method init.
public void init() {
// We need the SelectDatasourceStep at all times, add it now
wizardDialog = (XulDialog) document.getElementById("main_wizard_window");
summaryDialog = (XulDialog) document.getElementById("summaryDialog");
finishButton = (XulButton) document.getElementById(FINISH_BTN_ELEMENT_ID);
// $NON-NLS-1$
datasourceName = (XulTextbox) document.getElementById("datasourceName");
bf.createBinding(datasourceName, "value", wizardModel, "datasourceName");
wizardModel.addPropertyChangeListener(new PropertyChangeListener() {
@Override
public void propertyChange(PropertyChangeEvent propertyChangeEvent) {
if (propertyChangeEvent.getPropertyName().equals("datasourceName")) {
steps.get(activeStep).setValid(steps.get(activeStep).isValid());
}
}
});
bf.setBindingType(Binding.Type.ONE_WAY);
datatypeMenuList = (XulMenuList) document.getElementById("datatypeMenuList");
Binding datasourceBinding = bf.createBinding(wizardModel, "datasources", datatypeMenuList, "elements");
bf.setBindingType(Binding.Type.ONE_WAY);
bf.createBinding(datatypeMenuList, "selectedItem", wizardModel, "selectedDatasource");
bf.setBindingType(Binding.Type.ONE_WAY);
bf.createBinding(wizardModel, "selectedDatasource", this, "selectedDatasource");
bf.createBinding(this, ACTIVE_STEP_PROPERTY_NAME, BACK_BTN_ELEMENT_ID, DISABLED_PROPERTY_NAME, new BackButtonBindingConverter());
dummyDatasource = ((DummyDatasource) wizardModel.getDatasources().iterator().next());
activeDatasource = dummyDatasource;
selectDatasourceStep = dummyDatasource.getSelectDatasourceStep();
try {
for (IWizardDatasource datasource : wizardModel.getDatasources()) {
datasource.init(getXulDomContainer(), wizardModel);
}
steps.add(selectDatasourceStep);
selectDatasourceStep.activating();
setActiveStep(0);
datasourceBinding.fireSourceChanged();
setSelectedDatasource(dummyDatasource);
datasourceService.getDatasourceIllegalCharacters(new XulServiceCallback<String>() {
@Override
public void success(String retVal) {
}
@Override
public void error(String message, Throwable error) {
}
});
} catch (XulException e) {
MessageHandler.getInstance().showErrorDialog("Error", e.getMessage());
e.printStackTrace();
} catch (InvocationTargetException e) {
MessageHandler.getInstance().showErrorDialog("Error", e.getMessage());
e.printStackTrace();
}
}
Aggregations