Example usage for org.eclipse.jface.viewers ComboViewer ComboViewer

List of usage examples for org.eclipse.jface.viewers ComboViewer ComboViewer

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers ComboViewer ComboViewer.

Prototype

public ComboViewer(Composite parent, int style) 

Source Link

Document

Creates a combo viewer on a newly-created combo control under the given parent.

Usage

From source file:gov.redhawk.prf.internal.ui.editor.composite.AbstractPropertyComposite.java

License:Open Source License

/**
 * @param propertyComposite//from  w w w.  j a v a 2 s  . c  o  m
 * @param toolkit
 */
protected ComboViewer createModeViewer(final Composite parent, final FormToolkit toolkit) {
    // Mode
    this.modeLabel = toolkit.createLabel(parent, "Mode:");
    this.modeLabel.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
    this.modeLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.BEGINNING).create());
    final ComboViewer viewer = new ComboViewer(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
    viewer.getCombo().addListener(SWT.MouseVerticalWheel, new Listener() {

        @Override
        public void handleEvent(Event event) {
            // Disable Mouse Wheel Combo Box Control
            event.doit = false;
        }

    });
    toolkit.adapt(viewer.getCombo());
    viewer.getControl().setLayoutData(AbstractPropertyComposite.FACTORY.create());
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider());
    viewer.setInput(AccessType.values());
    assignTooltip(viewer.getControl(), HelpConstants.prf_properties_simple_mode);
    this.modeViewer = viewer;
    return this.modeViewer;
}

From source file:gov.redhawk.prf.internal.ui.editor.composite.BasicSimplePropertyComposite.java

License:Open Source License

/**
 * @param propertyComposite//  ww w  . j  ava  2 s  .co  m
 * @param toolkit
 */
protected ComboViewer createActionViewer(final Composite parent, final FormToolkit toolkit) {
    // Action
    this.actionLabel = toolkit.createLabel(parent, "Action:");
    this.actionLabel.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
    this.actionLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.BEGINNING).create());
    final ComboViewer viewer = new ComboViewer(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
    viewer.getCombo().addListener(SWT.MouseVerticalWheel, new Listener() {

        @Override
        public void handleEvent(Event event) {
            // Disable Mouse Wheel Combo Box Control
            event.doit = false;
        }

    });
    toolkit.adapt(viewer.getCombo());
    final List<Object> input = new ArrayList<Object>();
    input.addAll(ActionType.VALUES);
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider());
    viewer.getControl().setLayoutData(BasicSimplePropertyComposite.FACTORY.create());
    viewer.setInput(input);
    viewer.setComparator(new ViewerComparator(new Comparator<String>() {
        // List should be: "", Default, Everything else in alphanumeric
        // order
        @Override
        public int compare(final String o1, final String o2) {
            int retVal = 0;
            if (o1.equalsIgnoreCase(BasicSimplePropertyComposite.DEFAULT_ACTION)) {
                retVal = Integer.MIN_VALUE;
            } else if (o2.equalsIgnoreCase(BasicSimplePropertyComposite.DEFAULT_ACTION)) {
                retVal = Integer.MAX_VALUE;
            } else {
                retVal = o1.compareTo(o2);
            }
            return retVal;
        }
    }));
    assignTooltip(viewer.getControl(), HelpConstants.prf_properties_simple_action);

    this.actionViewer = viewer;
    return viewer;
}

From source file:gov.redhawk.prf.internal.ui.editor.composite.BasicSimplePropertyComposite.java

License:Open Source License

/**
 * @param propertyComposite//from w  ww.  j av  a  2s . co  m
 * @param toolkit
 */
protected ComboViewer createTypeViewer(final Composite parent, final FormToolkit toolkit) {
    // Type
    final Label label = toolkit.createLabel(parent, "Type*:");
    label.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
    this.typeViewer = new ComboViewer(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
    this.typeViewer.getCombo().addListener(SWT.MouseVerticalWheel, new Listener() {

        @Override
        public void handleEvent(Event event) {
            // Disable Mouse Wheel Combo Box Control
            event.doit = false;
        }

    });
    this.typeViewer.setContentProvider(new ArrayContentProvider());
    this.typeViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            switch ((PropertyValueType) element) {
            case DOUBLE:
                return super.getText(element) + " (64-bit)";
            case FLOAT:
                return super.getText(element) + " (32-bit)";
            case LONG:
                return super.getText(element) + " (32-bit)";
            case LONGLONG:
                return super.getText(element) + " (64-bit)";
            case SHORT:
                return super.getText(element) + " (16-bit)";
            case ULONG:
                return super.getText(element) + " (32-bit)";
            case ULONGLONG:
                return super.getText(element) + " (64-bit)";
            case USHORT:
                return super.getText(element) + " (16-bit)";
            case OCTET:
            case STRING:
            case OBJREF:
            case CHAR:
            case BOOLEAN:
            default:
                return super.getText(element);
            }
        }
    });
    this.typeViewer.setInput(PropertyValueType.values());
    this.typeViewer.setSorter(new ViewerSorter());
    toolkit.adapt(this.typeViewer.getCombo());

    this.typeViewer.getControl()
            .setLayoutData(GridDataFactory.fillDefaults().span(1, 1).grab(true, false).create());
    assignTooltip(this.typeViewer.getControl(), HelpConstants.prf_properties_simple_type);

    this.typeModifier = new Combo(parent, SWT.DROP_DOWN | SWT.READ_ONLY);
    this.typeModifier.addListener(SWT.MouseVerticalWheel, new Listener() {

        @Override
        public void handleEvent(Event event) {
            // Disable Mouse Wheel Combo Box Control
            event.doit = false;
        }

    });
    this.typeModifier.setItems(new String[] { "", "real", "complex" });
    toolkit.adapt(this.typeModifier);
    typeModifier.setLayoutData(GridDataFactory.fillDefaults().span(1, 1).grab(false, false).create());

    return this.typeViewer;
}

From source file:gov.redhawk.sca.launch.ui.tabs.WaveformMainTab.java

License:Open Source License

/**
 * {@inheritDoc}//  w  ww  .  j a v  a2 s .  com
 */
@Override
public void createControl(final Composite parent) {
    // create the top level composite for the dialog area
    final Composite composite = new Composite(parent, SWT.NONE);
    setControl(composite);
    composite.setFont(parent.getFont());

    composite.setLayout(new GridLayout(2, false));

    final Label domainName = new Label(composite, SWT.None);
    domainName.setText("Domain:");

    this.domainCombo = new ComboViewer(composite, SWT.BORDER);
    this.domainCombo.setContentProvider(new ArrayContentProvider());
    this.domainCombo.setLabelProvider(new AdapterFactoryLabelProvider(new ScaItemProviderAdapterFactory()));
    this.domainCombo
            .setInput(ScaPlugin.getDefault().getDomainManagerRegistry(parent.getDisplay()).getDomains());
    this.domainCombo.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.domainCombo.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            final IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            final Object element = selection.getFirstElement();
            if (element instanceof ScaDomainManager) {
                final ScaDomainManager domain = (ScaDomainManager) element;
                WaveformMainTab.this.waveformSelectionList.getViewer().setInput(domain);
            } else {
                WaveformMainTab.this.waveformSelectionList.getViewer().setInput("");
            }
            WaveformMainTab.this.support.firePropertyChange(WaveformMainTab.DOMAIN, null,
                    getScaDomainManager());
            updateLaunchConfigurationDialog();
        }
    });

    this.waveformSelectionList = new FormFilteredTree(composite, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER,
            new PatternFilter());
    this.waveformSelectionList
            .setLayoutData(GridDataFactory.fillDefaults().grab(true, true).span(2, 1).create());
    this.contentProvider = new InstallApplicationContentProvider();
    this.contentProvider.addContentCompletionListener(new JobChangeAdapter() {

        @Override
        public void done(final IJobChangeEvent event) {
            WorkbenchJob job = new WorkbenchJob("Restore Selection") {

                @Override
                public IStatus runInUIThread(IProgressMonitor monitor) {
                    if (!getControl().isDisposed()) {
                        restorePreviousWaveformSelection();
                    }
                    return Status.OK_STATUS;
                }
            };
            job.schedule();
        }
    });
    this.waveformSelectionList.getViewer().setContentProvider(this.contentProvider);
    this.waveformSelectionList.getViewer()
            .setLabelProvider(new AdapterFactoryLabelProvider(new WizardSadItemProviderAdapterFactory()));
    this.waveformSelectionList.getViewer().setComparator(new ViewerComparator() {
        private Comparator<String> viewerComparator;

        @Override
        protected Comparator<String> getComparator() {
            if (this.viewerComparator == null) {
                this.viewerComparator = new Comparator<String>() {
                    @Override
                    public int compare(final String s1, final String s2) {
                        return s1.compareToIgnoreCase(s2);
                    }
                };
            }
            return this.viewerComparator;
        }
    });

    this.startWaveform = new Button(composite, SWT.CHECK);
    this.startWaveform.setText("Start the waveform after launching");
    this.startWaveform.setLayoutData(GridDataFactory.fillDefaults().span(2, 1).grab(false, false).create());
    this.startWaveform.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            updateLaunchConfigurationDialog();
        }
    });

    this.openEditorButton = new Button(composite, SWT.CHECK);
    this.openEditorButton.setText("Open editor after launch");
    this.openEditorButton.setLayoutData(GridDataFactory.fillDefaults().span(2, 1).grab(false, false).create());
    this.openEditorButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            updateLaunchConfigurationDialog();
        }
    });

    this.waveformSelectionList.getViewer().addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            final Object selected = ((StructuredSelection) event.getSelection()).getFirstElement();
            if (selected instanceof SoftwareAssembly) {
                final SoftwareAssembly sad = (SoftwareAssembly) selected;
                WaveformMainTab.this.waveformProfile = sad.eResource().getURI().path();
            } else {
                WaveformMainTab.this.waveformProfile = "";
            }
            WaveformMainTab.this.support.firePropertyChange(WaveformMainTab.SAD, null, getSoftwareAssembly());
            updateLaunchConfigurationDialog();
        }

    });
}

From source file:gov.redhawk.sca.ui.ScaComponentFactory.java

License:Open Source License

/**
 * @since 9.0/*ww w  . ja v  a 2  s  . com*/
 */
public static Viewer createEnumPropertyViewer(final Composite parent, final int style,
        final ScaSimpleProperty prop) {
    if (prop.getDefinition() != null && prop.getDefinition().getEnumerations() != null) {
        final ComboViewer viewer = new ComboViewer(parent, style);
        CompatibilityUtil.disableComboWheelScrollSelect(viewer);
        viewer.setLabelProvider(new LabelProvider() {
            @Override
            public String getText(final Object element) {
                return ScaSimplePropertyItemProvider.getValueText(prop, element);
            }
        });
        viewer.setContentProvider(new ArrayContentProvider());
        final List<Object> values = new ArrayList<Object>();
        for (final Enumeration e : prop.getDefinition().getEnumerations().getEnumeration()) {
            values.add(AnyUtils.convertString(e.getValue(), prop.getDefinition().getType().getLiteral(),
                    prop.getDefinition().isComplex()));
        }
        viewer.setInput(values);
        return viewer;
    }
    return null;
}

From source file:gov.redhawk.sca.waveform.controlpanel.propertyEditors.DecimalPropertyEditor.java

License:Open Source License

@Override
public void renderNameValuePair(final Composite parent) {
    final Label label = new Label(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(false, false).applyTo(label);
    label.setText(this.name);
    final Range range = this.prop.getDefinition().getRange();
    //Dval not working properly on RAP
    if (range != null && !SWT.getPlatform().startsWith("rap")) {
        this.dval = new Dval(parent, SWT.BORDER);
        this.control = this.dval.getTextBox();
        final Double min = Double.parseDouble(range.getMin());
        final Double max = Double.parseDouble(range.getMax());
        this.dval.applyFormat(getFormatPattern());
        this.dval.setValue(this.value.doubleValue());
        this.dval.setMinimum(min);
        this.dval.setMaximum(max);
        double incr = 0;
        if (this.value.doubleValue() > DecimalPropertyEditor.MAX_VALUE_NO_SCI_NOTATION) {
            incr = DecimalPropertyEditor.IBCR_0;
        } else {//from  ww  w  .j  a va  2  s  . co  m
            if (max - min < 1) {
                incr = DecimalPropertyEditor.INCR_1;
            } else if (max - min < DecimalPropertyEditor.MIN_1) {
                incr = 1;
            } else if (max - min < DecimalPropertyEditor.MIN_2) {
                incr = DecimalPropertyEditor.INCR_2;
            } else {
                incr = DecimalPropertyEditor.INCR_3;
            }
        }
        this.dval.setIncrement(incr);
        this.dval.setPageIncrement(incr * DecimalPropertyEditor.PAGE_INCR_MULTIPLIER);
        GridDataFactory.fillDefaults().grab(true, false).applyTo(this.dval);
    } else {
        final Enumerations values = this.prop.getDefinition().getEnumerations();
        if (values == null || values.getEnumeration() == null || values.getEnumeration().size() == 0) {
            this.control = new Text(parent, SWT.BORDER);
            GridDataFactory.fillDefaults().grab(true, false).applyTo(this.control);
            this.form.applyPattern(getFormatPattern());
            ((Text) this.control).setText(this.form.format(this.value));
        } else {
            this.enumViewer = new ComboViewer(parent, SWT.NONE);
            CompatibilityUtil.disableComboWheelScrollSelect(enumViewer);
            GridDataFactory.fillDefaults().grab(true, false).applyTo(this.enumViewer.getControl());
            this.enumViewer.setContentProvider(new EnumValuesContentProvider());
            this.enumViewer.setLabelProvider(new EnumValuesLabelProvider());
            this.enumViewer.setInput(this.prop.getDefinition().getEnumerations());
            this.enumViewer.addSelectionChangedListener(new ISelectionChangedListener() {

                @Override
                public void selectionChanged(final SelectionChangedEvent event) {
                    final Enumeration sel = (Enumeration) ((StructuredSelection) event.getSelection())
                            .getFirstElement();
                    DecimalPropertyEditor.this.form.applyPattern(getFormatPattern());
                    try {
                        DecimalPropertyEditor.this.value = DecimalPropertyEditor.this.form
                                .parse(sel.getValue());
                    } catch (final ParseException e) {
                        //PASS
                    }
                }

            });
        }
    }
}

From source file:gov.redhawk.sca.waveform.controlpanel.propertyEditors.IntegerPropertyEditor.java

License:Open Source License

@Override
public void renderNameValuePair(final Composite parent) {
    final Label label = new Label(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(false, false).applyTo(label);
    label.setText(this.name);
    final Range range = this.prop.getDefinition().getRange();
    //Dval not working properly on RAP
    if (range != null && !SWT.getPlatform().startsWith("rap")) {
        this.dval = new Dval(parent, SWT.BORDER);
        this.dval.setParseIntegerOnly(true);
        this.control = this.dval.getTextBox();
        final Double min = Double.parseDouble(range.getMin());
        final Double max = Double.parseDouble(range.getMax());
        this.dval.applyFormat(getFormatPattern());
        this.dval.setValue(this.value.doubleValue());
        this.dval.setMinimum(min);
        this.dval.setMaximum(max);
        double incr = 0;
        if (this.value.doubleValue() > IntegerPropertyEditor.MAX_VALUE_NO_SCI_NOTATION) {
            incr = IntegerPropertyEditor.IBCR_0;
        } else {/* www  .ja v a 2  s .  com*/
            if (max - min < 1) {
                incr = IntegerPropertyEditor.INCR_1;
            } else if (max - min < IntegerPropertyEditor.MIN_1) {
                incr = 1;
            } else if (max - min < IntegerPropertyEditor.MIN_2) {
                incr = IntegerPropertyEditor.INCR_2;
            } else {
                incr = IntegerPropertyEditor.INCR_3;
            }
        }
        this.dval.setIncrement(incr);
        this.dval.setPageIncrement(incr * IntegerPropertyEditor.PAGE_INCR_MULTIPLIER);
        GridDataFactory.fillDefaults().grab(true, false).applyTo(this.dval);
    } else {
        final Enumerations values = this.prop.getDefinition().getEnumerations();
        if (values == null || values.getEnumeration() == null || values.getEnumeration().size() == 0) {
            this.control = new Text(parent, SWT.BORDER);
            GridDataFactory.fillDefaults().grab(true, false).applyTo(this.control);
            this.form.applyPattern(getFormatPattern());
            ((Text) this.control).setText(this.form.format(this.value));
        } else {
            this.enumViewer = new ComboViewer(parent, SWT.NONE);
            CompatibilityUtil.disableComboWheelScrollSelect(enumViewer);
            GridDataFactory.fillDefaults().grab(true, false).applyTo(this.enumViewer.getControl());
            this.enumViewer.setContentProvider(new EnumValuesContentProvider());
            this.enumViewer.setLabelProvider(new EnumValuesLabelProvider());
            this.enumViewer.setInput(this.prop.getDefinition().getEnumerations());
            this.enumViewer.addSelectionChangedListener(new ISelectionChangedListener() {

                @Override
                public void selectionChanged(final SelectionChangedEvent event) {
                    final Enumeration sel = (Enumeration) ((StructuredSelection) event.getSelection())
                            .getFirstElement();
                    IntegerPropertyEditor.this.form.applyPattern(getFormatPattern());
                    try {
                        IntegerPropertyEditor.this.value = IntegerPropertyEditor.this.form
                                .parse(sel.getValue());
                    } catch (final ParseException e) {
                        //PASS
                    }
                }

            });
        }
    }
}

From source file:gov.redhawk.ui.port.nxmblocks.BulkIONxmBlockControls.java

License:Open Source License

public void createControls(final Composite container) {
    container.setLayout(new GridLayout(2, false));
    Label label;/*from www . j  a  v a 2  s .c  o  m*/

    // === connection ID ==
    label = new Label(container, SWT.None);
    label.setText("Connection ID:");
    connectionIDField = new Text(container, SWT.BORDER);
    connectionIDField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    connectionIDField.setToolTipText("Custom Port connection ID to use vs a generated one.");

    if (this.settings.getConnectionID() != null && !this.settings.getConnectionID().isEmpty()) {
        connectionIDField.setEditable(false); // cannot change custom connection ID after it has been set at this time
        connectionIDField.setEnabled(false);
    }

    // === sample rate ===
    label = new Label(container, SWT.NONE);
    label.setText(BulkIONxmBlockControls.SAMPLE_RATE_FIELD_NAME + ":");
    this.sampleRateField = new ComboViewer(container, SWT.BORDER); // writable
    this.sampleRateField.getCombo().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.sampleRateField.getCombo().setToolTipText(
            "Custom sample rate to override value in StreamSRI. Use default or 0 to use value from StreamSRI.");
    this.sampleRateField.setContentProvider(ArrayContentProvider.getInstance()); // ArrayContentProvider does not store any state, therefore can re-use instances
    this.sampleRateField.setLabelProvider(new LabelProvider());
    Object[] inputValues = ArrayUtil.copyAndPrependIfNotNull(this.settings.getSampleRate(),
            BulkIONxmBlockControls.VALUE_USE_DEFAULT);
    this.sampleRateField.setInput(inputValues);
    this.sampleRateField.setSelection(new StructuredSelection(inputValues[0])); // select first value (which is current value or default)

    /**
    // === pipe size ==
    label = new Label(container, SWT.None);
    label.setText("Pipe Size:");
    pipeSizeField = new Text(container, SWT.BORDER);
    pipeSizeField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    pipeSizeField.setToolTipText("Custom pipe (buffer) size vs default.");
     */

    // === blocking option ===
    this.blockingField = new Button(container, SWT.CHECK);
    this.blockingField.setText("Blocking");
    this.blockingField.setLayoutData(GridDataFactory.fillDefaults().span(2, 1).grab(true, false).create());
    this.blockingField.setToolTipText(
            "On/checked to block pushPacket when Plot is not able to keep up; Off to drop packets in this scenario.");

    // === remove source from plot on end-of-stream (EOS) ===
    this.removeOnEOSButton = new Button(container, SWT.CHECK);
    this.removeOnEOSButton.setText("Remove Stream from Plot on End Of Stream");
    this.removeOnEOSButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).span(2, 1).create());
    this.removeOnEOSButton.setToolTipText(
            "On/checked to remove streams from plot when an end-of-stream is received in pushPacket.");

    initDataBindings();
}

From source file:gov.redhawk.ui.port.nxmblocks.FftNxmBlockControls.java

License:Open Source License

public void createControls(@NonNull final Composite container) {
    container.setLayout(new GridLayout(2, false));
    Label label;/*from   w w w  .  ja  v  a2 s.c  o  m*/

    // === FFT transform size ===
    label = new Label(container, SWT.NONE);
    label.setText(FftNxmBlockControls.FFT_SIZE_FIELD_NAME + ":");
    this.transformSizeField = new ComboViewer(container, SWT.BORDER); // writable
    this.transformSizeField.getCombo().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.transformSizeField.getCombo().setToolTipText("Performance is best if factorable by 2, 3, 4 and 5.");
    this.transformSizeField.setContentProvider(ArrayContentProvider.getInstance()); // ArrayContentProvider does not store any state, therefore can re-use instances
    this.transformSizeField.setLabelProvider(new LabelProvider());
    Object[] inputValues = ArrayUtil.copyAndPrependIfNotNull(this.settings.getTransformSize(),
            FftNxmBlockControls.FFT_SIZE_COMBO_VALUES);
    this.transformSizeField.setInput(inputValues);
    this.transformSizeField.setSelection(new StructuredSelection(inputValues[0])); // select first value (which is current value or default)

    // === percent overlap ===
    label = new Label(container, SWT.NONE);
    label.setText(FftNxmBlockControls.OVERLAP_FIELD_NAME + ":");
    this.overlapField = new Text(container, SWT.BORDER);
    this.overlapField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.overlapField.setText(Integer.toString(this.settings.getOverlap()));

    // === num averages (NAVG=) ===
    label = new Label(container, SWT.NONE);
    label.setText(FftNxmBlockControls.NUM_AVERAGES_FIELD_NAME + ":");
    this.numAveragesField = new Text(container, SWT.BORDER);
    this.numAveragesField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.numAveragesField.setText(Integer.toString(this.settings.getNumAverages()));
    this.numAveragesField
            .setToolTipText("Avoid using large value as it will cause highlighted energy to remain longer.");

    // === num sliding averages (/NEXP=) ===
    label = new Label(container, SWT.NONE);
    label.setText(FftNxmBlockControls.SLIDING_NUM_AVERAGES_FIELD_NAME + ":");
    this.slidingNumAveragesField = new Text(container, SWT.BORDER);
    this.slidingNumAveragesField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.slidingNumAveragesField.setText(Integer.toString(this.settings.getNumExpAverages()));
    this.slidingNumAveragesField
            .setToolTipText("Avoid using large value as it will cause highlighted energy to remain longer.");

    // === FFT output type ===
    label = new Label(container, SWT.NONE);
    label.setText("Output Type:");
    this.fftType = new ComboViewer(container, SWT.READ_ONLY);
    fftType.getCombo().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    fftType.setContentProvider(ArrayContentProvider.getInstance()); // ArrayContentProvider does not store any state, therefore can re-use instances
    fftType.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return ((FftNxmBlockSettings.OutputType) element).getLabel();
        }
    });
    fftType.setInput(FftNxmBlockSettings.OutputType.getStandardTypes());
    OutputType currentOutputType = this.settings.getOutputType();
    if (currentOutputType == null) {
        currentOutputType = OutputType.NORMAL;
        settings.setOutputType(currentOutputType);
    }
    fftType.setSelection(new StructuredSelection(currentOutputType));

    // === FFT Window ===
    label = new Label(container, SWT.NONE);
    label.setText("Window:");
    fftWindow = new ComboViewer(container, SWT.READ_ONLY);
    fftWindow.getCombo().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    fftWindow.setContentProvider(ArrayContentProvider.getInstance()); // ArrayContentProvider does not store any state, therefore can re-use instances
    fftWindow.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return ((FftNxmBlockSettings.WindowType) element).getLabel();
        }
    });
    fftWindow.setInput(FftNxmBlockSettings.WindowType.values());
    WindowType windowType = this.settings.getWindow();
    if (windowType == null) {
        windowType = WindowType.HANNING; // default to Hanning Window Type
        settings.setWindow(windowType);
    }
    fftWindow.setSelection(new StructuredSelection(windowType));

    initDataBindings();
}

From source file:gov.redhawk.ui.port.nxmblocks.PlotNxmBlockControls.java

License:Open Source License

public void createControls(final Composite container) {
    container.setLayout(new GridLayout(2, false));
    Label label;/*from ww w .ja v a  2  s  .  c o  m*/

    // === frame size ===
    label = new Label(container, SWT.NONE);
    label.setText(FRAME_SIZE_FIELD_NAME + ":");
    this.frameSizeField = new ComboViewer(container, SWT.BORDER); // writable
    this.frameSizeField.getCombo().setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.frameSizeField.getCombo().setToolTipText(
            "Custom frame size to override value in StreamSRI. Default uses value from StreamSRI.");
    this.frameSizeField.setContentProvider(ArrayContentProvider.getInstance()); // ArrayContentProvider does not store any state, therefore can re-use instances
    this.frameSizeField.setLabelProvider(new LabelProvider());
    Object[] inputValues = ArrayUtil.copyAndPrependIfNotNull(this.settings.getFrameSize(),
            FRAME_SIZE_COMBO_VALUES);
    this.frameSizeField.setInput(inputValues);
    this.frameSizeField.setSelection(new StructuredSelection(inputValues[0])); // select first value (which is current value or default)
    this.frameSizeField
            .addSelectionChangedListener(new SelectAllTextComboTextListener(this.frameSizeField.getCombo()));

    // === line plot frame thinning ===
    label = new Label(container, SWT.NONE);
    label.setText("&Line Plot Frame Thinning:");
    this.linePlotConsumeLengthField = new Text(container, SWT.BORDER);
    this.linePlotConsumeLengthField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    this.linePlotConsumeLengthField.setToolTipText("Thin line plot by displaying 1 out of every n frames. "
            + "Use -1 for no thinning. Leave blank to use default of "
            + PlotPreferences.LINE_PLOT_CONSUMELENGTH.getDefaultValue() + ".");

    initDataBindings();
}