{
public static final String SIMPLE_AM2900_MACHINE_ID = "Am2900Simple";
public static final String STRICT_AM2900_MACHINE_ID = "Am2900Strict";
+ public static final String SIMPLE_AM2900_DESCRIPTION = "Am2900Simple\nTODO Description";
+ public static final String STRICT_AM2900_DESCRIPTION = "Am2900Strict\nTODO Description";
public static final List<Register> unsortedRegisters;
public static final List<RegisterGroup> registerGroups;
return strict ? STRICT_AM2900_MACHINE_ID : SIMPLE_AM2900_MACHINE_ID;
}
+ @Override
+ public String getDescription()
+ {
+ return strict ? STRICT_AM2900_DESCRIPTION : SIMPLE_AM2900_DESCRIPTION;
+ }
+
@Override
public Am2900Machine createNew()
{
*/
String getId();
+ /**
+ * Returns a human-readable description of the machine definition.
+ *
+ * @author Daniel Kirschten
+ */
+ String getDescription();
+
/**
* Creates a new instance of the machine
*
private static final String DEFAULT_MACHINE = "Am2900Simple";// TODO don't hardcode that here!
private MachineCombo machineSelect;
+ private Label machineDescription;
private MachineDefinition defaultMachineDefinition;
private MachineContext machineContext;
private void addFirstSection(Composite parent)
{
- Composite composite = createDefaultComposite(parent);
+ Composite composite = createDefaultComposite(parent, false);
// Label for path field
Label pathLabel = new Label(composite, SWT.NONE);
private void addSecondSection(Composite parent)
{
- Composite composite = createDefaultComposite(parent);
+ Composite composite = createDefaultComposite(parent, true);
// Label for machine
Label ownerLabel = new Label(composite, SWT.NONE);
// Machine choice
machineSelect = MachineContextSwtTools.createMachineSelector(composite, SWT.NONE);
- if (currentId.isPresent())
- machineSelect.add(currentId.get());
+ machineDescription = new Label(composite, SWT.NONE);
+ machineSelect.addListener(md -> machineDescription.setText(md.getDescription()));
+ machineDescription.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
Optional<MachineDefinition> currentMachineDefinition = machineContext.getMachineDefinition();
return composite;
}
- private Composite createDefaultComposite(Composite parent)
+ private Composite createDefaultComposite(Composite parent, boolean grabExcessVerticalSpace)
{
Composite composite = new Composite(parent, SWT.NULL);
GridLayout layout = new GridLayout();
GridData data = new GridData();
data.verticalAlignment = GridData.FILL;
data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ data.grabExcessVerticalSpace = grabExcessVerticalSpace;
composite.setLayoutData(data);
return composite;
public class MograsimSettingsPage extends WizardPage
{
private MachineCombo machineSelect;
+ private Label machineDescription;
public MograsimSettingsPage(IStructuredSelection selection)
{
private void addFirstSection(Composite parent)
{
- Composite composite = createDefaultComposite(parent);
+ Composite composite = createDefaultComposite(parent, false);
// Label for path field
Label pathLabel = new Label(composite, SWT.NONE);
separator.setLayoutData(gridData);
}
- private Composite createDefaultComposite(Composite parent)
+ private Composite createDefaultComposite(Composite parent, boolean grabExcessVerticalSpace)
{
Composite composite = new Composite(parent, SWT.NULL);
GridLayout layout = new GridLayout();
GridData data = new GridData();
data.verticalAlignment = GridData.FILL;
data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ data.grabExcessVerticalSpace = grabExcessVerticalSpace;
composite.setLayoutData(data);
return composite;
private void addSecondSection(Composite parent)
{
- Composite composite = createDefaultComposite(parent);
+ Composite composite = createDefaultComposite(parent, true);
// Label for machine
Label ownerLabel = new Label(composite, SWT.NONE);
// Machine choice
machineSelect = MachineContextSwtTools.createMachineSelector(composite, SWT.NONE);
machineSelect.addListener(md -> setPageComplete(isValid()));
- GridData gd = new GridData();
-// machineSelect.setLayoutData(gd);
+
+ machineDescription = new Label(composite, SWT.NONE);
+ machineSelect.addListener(md -> machineDescription.setText(md.getDescription()));
+ machineDescription.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
}
public boolean isValid()