Search in sources :

Example 1 with AttributeInputDialog

use of eu.esdihumboldt.hale.ui.common.definition.AttributeInputDialog in project hale by halestudio.

the class ClassificationMappingParameterPage method createFixedValueInputButton.

/**
 * Creates an button to open an editor for setting the fixed value.
 *
 * @param initialValue the initial value or null
 */
private void createFixedValueInputButton(final String initialValue) {
    if (fixedValueInputButton != null) {
        fixedValueInputButton.dispose();
        if (fixedValueText != null) {
            fixedValueText.dispose();
            fixedValueText = null;
        }
    }
    setPageComplete(false);
    fixedValueInputButton = new Button(notClassifiedActionComposite, SWT.PUSH);
    fixedValueInputButton.setText("Select");
    fixedValueInputButton.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
    // Set the text for the label
    if (fixedValueText == null && initialValue != null) {
        fixedValueText = new Text(notClassifiedActionComposite, SWT.READ_ONLY | SWT.BORDER);
        fixedValueText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
        notClassifiedActionComposite.layout();
        fixedValueText.setText(initialValue);
    }
    fixedValueInputButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            AttributeInputDialog dialog = new AttributeInputDialog(targetProperty, targetEntity, Display.getCurrent().getActiveShell(), "Set default value", "This value will be assigned to targets when the source value is not mapped", new TransformationVariableReplacer());
            if (initialValue != null) {
                AttributeEditor<?> editor = dialog.getEditor();
                if (editor != null) {
                    editor.setAsText(initialValue);
                }
            }
            if (dialog.open() == Dialog.OK) {
                if (fixedValueText == null) {
                    fixedValueText = new Text(notClassifiedActionComposite, SWT.READ_ONLY | SWT.BORDER);
                    fixedValueText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
                    notClassifiedActionComposite.layout();
                }
                fixedValueText.setText(dialog.getValueAsText());
                setPageComplete(true);
            }
        }
    });
    notClassifiedActionComposite.layout();
    notClassifiedActionComposite.getParent().layout();
}
Also used : TransformationVariableReplacer(eu.esdihumboldt.hale.ui.transformation.TransformationVariableReplacer) Button(org.eclipse.swt.widgets.Button) SelectionAdapter(org.eclipse.swt.events.SelectionAdapter) AttributeInputDialog(eu.esdihumboldt.hale.ui.common.definition.AttributeInputDialog) GridData(org.eclipse.swt.layout.GridData) SelectionEvent(org.eclipse.swt.events.SelectionEvent) AttributeEditor(eu.esdihumboldt.hale.ui.common.AttributeEditor) Text(org.eclipse.swt.widgets.Text)

Example 2 with AttributeInputDialog

use of eu.esdihumboldt.hale.ui.common.definition.AttributeInputDialog in project hale by halestudio.

the class ClassificationMappingParameterPage method selectValue.

private Value selectValue(PropertyDefinition property, EntityDefinition entity, String title, String message, String initialValue) {
    AttributeInputDialog dialog = new AttributeInputDialog(property, entity, Display.getCurrent().getActiveShell(), title, message, new TransformationVariableReplacer());
    dialog.create();
    if (initialValue != null)
        dialog.getEditor().setAsText(initialValue);
    if (dialog.open() == Dialog.OK)
        return Value.of(dialog.getValueAsText());
    else
        return null;
}
Also used : TransformationVariableReplacer(eu.esdihumboldt.hale.ui.transformation.TransformationVariableReplacer) AttributeInputDialog(eu.esdihumboldt.hale.ui.common.definition.AttributeInputDialog)

Aggregations

AttributeInputDialog (eu.esdihumboldt.hale.ui.common.definition.AttributeInputDialog)2 TransformationVariableReplacer (eu.esdihumboldt.hale.ui.transformation.TransformationVariableReplacer)2 AttributeEditor (eu.esdihumboldt.hale.ui.common.AttributeEditor)1 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)1 SelectionEvent (org.eclipse.swt.events.SelectionEvent)1 GridData (org.eclipse.swt.layout.GridData)1 Button (org.eclipse.swt.widgets.Button)1 Text (org.eclipse.swt.widgets.Text)1