package io.sloeber.ui.wizard.newsketch;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Shell;
import io.sloeber.core.api.BoardDescriptor;
import io.sloeber.ui.project.properties.BoardSelectionPage;
/**
* The ArduinoSettingsPage class is linked to page in the import wizard. It
* wraps around the ArduinPropertyPage
*
* @author Jan Baeyens
*
*/
public class NewSketchWizardBoardPage extends WizardPage {
final Shell shell = new Shell();
protected BoardSelectionPage mPageLayout = new BoardSelectionPage();
public void setListener(Listener BoardSelectionChangedListener) {
this.mPageLayout.setListener(BoardSelectionChangedListener);
}
private Listener completeListener = new Listener() {
@Override
public void handleEvent(Event e) {
setPageComplete(NewSketchWizardBoardPage.this.mPageLayout.isPageComplete());
}
};
public NewSketchWizardBoardPage(String pageName) {
super(pageName);
setPageComplete(false);
}
public NewSketchWizardBoardPage(String pageName, String title, ImageDescriptor titleImage) {
super(pageName, title, titleImage);
setPageComplete(false);
}
@Override
public void createControl(Composite parent) {
Composite composite = new Composite(parent, SWT.NULL);
this.mPageLayout.draw(composite);
setControl(composite);
this.mPageLayout.mFeedbackControl.addListener(SWT.Modify, this.completeListener);
setPageComplete(this.mPageLayout.isPageComplete());
}
public BoardDescriptor getBoardID() {
return this.mPageLayout.getBoardID();
}
}