Example usage for org.eclipse.jface.fieldassist ContentProposal ContentProposal

List of usage examples for org.eclipse.jface.fieldassist ContentProposal ContentProposal

Introduction

In this page you can find the example usage for org.eclipse.jface.fieldassist ContentProposal ContentProposal.

Prototype

public ContentProposal(String content, String description) 

Source Link

Document

Create a content proposal whose content and description are as specified in the parameters.

Usage

From source file:de.anbos.eclipse.easyshell.plugin.preferences.CommandVariableContentProposalProvider.java

License:Open Source License

private void setProposals(Map<String, String> proposals) {
    contentProposals = new ContentProposal[proposals.size()];
    int i = 0;//from   www.j a  v  a 2 s  .  co m
    for (Map.Entry<String, String> entry : proposals.entrySet()) {
        ContentProposal proposal = new ContentProposal(entry.getKey(), entry.getValue());
        contentProposals[i++] = proposal;
    }
}

From source file:org.eclipse.gyrex.admin.ui.http.internal.EditApplicationDialog.java

License:Open Source License

@Override
protected Control createDialogArea(final Composite parent) {
    final Composite composite = (Composite) super.createDialogArea(parent);
    final GridData gd = (GridData) composite.getLayoutData();
    gd.minimumHeight = convertVerticalDLUsToPixels(200);
    gd.minimumWidth = convertHorizontalDLUsToPixels(400);

    idField.setLabelText("Id");
    contextPathField.setLabelText("Context");
    providerField.setLabelText("Provider");

    final IDialogFieldListener validateListener = new IDialogFieldListener() {
        @Override//www .  j a v a 2  s .com
        public void dialogFieldChanged(final DialogField field) {
            validate();
        }
    };

    idField.setDialogFieldListener(validateListener);
    contextPathField.setDialogFieldListener(validateListener);
    providerField.setDialogFieldListener(validateListener);

    providerItemToIdMap.clear();
    final TreeSet<String> providerItems = new TreeSet<String>();
    final Collection<ApplicationProviderRegistration> providers = HttpActivator.getInstance()
            .getProviderRegistry().getRegisteredProviders().values();
    for (final ApplicationProviderRegistration registration : providers) {
        final String label = HttpUiAdapter.getLabel(registration);
        providerItemToIdMap.put(label, registration.getProviderId());
        providerItems.add(label);
    }
    providerField.setItems(providerItems.toArray(new String[providerItems.size()]));

    contextPathField.setContentProposalProcessor(new IContentProposalProvider() {
        /** serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public IContentProposal[] getProposals(final String contents, final int position) {
            final List<IContentProposal> resultList = new ArrayList<IContentProposal>();

            final String patternString = StringUtils.trimToNull(StringUtils.substring(contents, 0, position));

            final Collection<ContextDefinition> contexts = ContextActivator.getInstance()
                    .getContextRegistryImpl().getDefinedContexts();
            for (final ContextDefinition contextDefinition : contexts) {
                if ((null == patternString)
                        || StringUtils.contains(contextDefinition.getPath().toString(), patternString)) {
                    resultList.add(new ContentProposal(contextDefinition.getPath().toString(),
                            contextDefinition.toString()));
                }
            }

            return resultList.toArray(new IContentProposal[resultList.size()]);
        }
    });

    propertiesField.setLabelText("Properties");
    mountsField.setLabelText("Mounts");

    final Text warning = new Text(composite, SWT.WRAP | SWT.READ_ONLY);
    warning.setText(
            "Warning: this dialog is ugly. Please help us improve the UI. Any mockups and/or patches are very much appreciated!");
    warning.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, false, false));

    LayoutUtil.doDefaultLayout(composite, new DialogField[] { new Separator(), idField, providerField,
            contextPathField, new Separator(), propertiesField, mountsField }, false);
    LayoutUtil.setHorizontalGrabbing(idField.getTextControl(null));
    LayoutUtil.setHorizontalGrabbing(providerField.getComboControl(null));
    LayoutUtil.setHorizontalGrabbing(contextPathField.getTextControl(null));
    LayoutUtil.setHorizontalGrabbing(propertiesField.getListControl(null));
    LayoutUtil.setHorizontalGrabbing(mountsField.getListControl(null));

    if (null != applicationRegistration) {
        idField.setText(applicationRegistration.getApplicationId());
        idField.setEnabled(false);
        contextPathField.setText(applicationRegistration.getContext().getContextPath().toString());
        contextPathField.setEnabled(false);
        for (final Entry<String, String> e : providerItemToIdMap.entrySet()) {
            if (e.getValue().equals(applicationRegistration.getProviderId())) {
                providerField.selectItem(e.getKey());
            }
        }
        providerField.setEnabled(false);

        applicationProperties.putAll(applicationRegistration.getInitProperties());
        mountsField.setElements(applicationManager.getMounts(applicationRegistration.getApplicationId()));
    }

    refreshProperties();

    final GridLayout masterLayout = (GridLayout) composite.getLayout();
    masterLayout.marginWidth = 5;
    masterLayout.marginHeight = 5;

    LayoutUtil.setHorizontalSpan(warning, masterLayout.numColumns);

    return composite;
}

From source file:org.eclipse.gyrex.admin.ui.http.jetty.internal.AddChannelDialog.java

License:Open Source License

@Override
protected Control createDialogArea(final Composite parent) {
    final Composite composite = (Composite) super.createDialogArea(parent);
    final GridData gd = (GridData) composite.getLayoutData();
    gd.minimumHeight = convertVerticalDLUsToPixels(200);
    gd.minimumWidth = convertHorizontalDLUsToPixels(400);
    gd.widthHint = convertHorizontalDLUsToPixels(400);

    idField.setLabelText("Id");
    portField.setLabelText("Port");
    secureField.setLabelText("SSL");
    certificateIdField.setLabelText("Certificate");
    secureChannelIdField.setLabelText("Secure Connector");
    nodeFilterField.setLabelText("Node Filter");

    final IDialogFieldListener validateListener = new IDialogFieldListener() {
        @Override/*w w  w. jav a  2s  .co m*/
        public void dialogFieldChanged(final DialogField field) {
            validate();
        }
    };

    idField.setDialogFieldListener(validateListener);
    portField.setDialogFieldListener(validateListener);
    secureField.setDialogFieldListener(validateListener);
    certificateIdField.setDialogFieldListener(validateListener);
    secureChannelIdField.setDialogFieldListener(validateListener);
    nodeFilterField.setDialogFieldListener(validateListener);

    certificateIdField.setContentProposalProcessor(new IContentProposalProvider() {
        /** serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public IContentProposal[] getProposals(final String contents, final int position) {
            final List<IContentProposal> resultList = new ArrayList<IContentProposal>();

            final String patternString = StringUtils.trimToNull(StringUtils.substring(contents, 0, position));

            final Collection<ICertificate> certificates = jettyManager.getCertificates();
            for (final ICertificate certificate : certificates) {
                if ((null == patternString) || StringUtils.contains(certificate.getId(), patternString)) {
                    resultList.add(new ContentProposal(certificate.getId(), certificate.getInfo()));
                }
            }

            return resultList.toArray(new IContentProposal[resultList.size()]);
        }
    });

    secureChannelIdField.setContentProposalProcessor(new IContentProposalProvider() {
        /** serialVersionUID */
        private static final long serialVersionUID = 1L;

        @Override
        public IContentProposal[] getProposals(final String contents, final int position) {
            final List<IContentProposal> resultList = new ArrayList<IContentProposal>();

            final String patternString = StringUtils.trimToNull(StringUtils.substring(contents, 0, position));

            final Collection<ChannelDescriptor> channels = jettyManager.getChannels();
            for (final ChannelDescriptor channel : channels) {
                if (channel.isSecure()
                        && ((null == patternString) || StringUtils.contains(channel.getId(), patternString))) {
                    resultList.add(new ContentProposal(channel.getId(),
                            String.format("%s (%s)", channel.getId(), channel.toString())));
                }
            }

            return resultList.toArray(new IContentProposal[resultList.size()]);
        }
    });

    secureField.setAttachedDialogFields(certificateIdField);

    final Infobox infobox = new Infobox(composite);
    infobox.setLayoutData(AdminUiUtil.createHorzFillData());
    infobox.addHeading("Create a new connector!");
    infobox.addParagraph(
            "Please fill in id and port to create a connector!\nIf the connector should support encryption, please choose the certificate to be used. You need some more documentation on the usage of the fields SecureConnector and nodefilter.");

    LayoutUtil.doDefaultLayout(composite,
            new DialogField[] { new Separator(), idField, portField, new Separator(), secureField,
                    certificateIdField, new Separator(), secureChannelIdField, new Separator(),
                    nodeFilterField },
            false);
    LayoutUtil.setHorizontalGrabbing(idField.getTextControl(null));

    final GridLayout masterLayout = (GridLayout) composite.getLayout();
    masterLayout.marginWidth = 5;
    masterLayout.marginHeight = 5;

    LayoutUtil.setHorizontalSpan(infobox, masterLayout.numColumns);

    return composite;
}

From source file:org.eclipse.gyrex.admin.ui.jobs.internal.ContextPathProposals.java

License:Open Source License

@Override
public IContentProposal[] getProposals(final String contents, final int position) {
    final List<IContentProposal> resultList = new ArrayList<IContentProposal>();

    final String patternString = StringUtils.trimToNull(StringUtils.substring(contents, 0, position));

    final Collection<ContextDefinition> contexts = JobsUiActivator.getInstance()
            .getService(IRuntimeContextDefinitionManager.class).getDefinedContexts();
    for (final ContextDefinition contextDefinition : contexts) {
        if ((null == patternString)
                || StringUtils.contains(contextDefinition.getPath().toString(), patternString)) {
            resultList.add(//from  w w  w  .  j  av a2s. com
                    new ContentProposal(contextDefinition.getPath().toString(), contextDefinition.toString()));
        }
    }

    return resultList.toArray(new IContentProposal[resultList.size()]);
}

From source file:org.eclipse.gyrex.admin.ui.jobs.internal.TimeZoneProposals.java

License:Open Source License

@Override
public IContentProposal[] getProposals(final String contents, final int position) {
    final List<IContentProposal> resultList = new ArrayList<IContentProposal>();

    final String patternString = StringUtils.trimToNull(StringUtils.substring(contents, 0, position));

    final String[] availableIDs = TimeZone.getAvailableIDs();
    Arrays.sort(availableIDs);//from   w  ww  . j  a va  2 s .c  om
    for (final String id : availableIDs) {
        final TimeZone timeZone = TimeZone.getTimeZone(id);
        if ((null == patternString) || StringUtils.contains(StringUtils.lowerCase(timeZone.getID()),
                StringUtils.lowerCase(patternString))) {
            resultList.add(
                    new ContentProposal(timeZone.getID(), id + " - " + timeZone.getDisplayName(Locale.US)));
        }
    }

    return resultList.toArray(new IContentProposal[resultList.size()]);
}

From source file:org.springframework.ide.eclipse.boot.properties.editor.SpringPropertiesCompletionEngine.java

License:Open Source License

/**
 * Create completions proposals for a field editor where property names can be entered.
 *//*  w  ww . j  ava2  s  .co  m*/
public IContentProposal[] getPropertyFieldProposals(String contents, int position) {
    String prefix = contents.substring(0, position);
    if (StringUtil.hasText(prefix)) {
        List<Match<PropertyInfo>> matches = findMatches(prefix);
        if (matches != null && !matches.isEmpty()) {
            IContentProposal[] proposals = new IContentProposal[matches.size()];
            Collections.sort(matches, new Comparator<Match<PropertyInfo>>() {
                @Override
                public int compare(Match<PropertyInfo> o1, Match<PropertyInfo> o2) {
                    int scoreCompare = Double.compare(o2.score, o1.score);
                    if (scoreCompare != 0) {
                        return scoreCompare;
                    } else {
                        return o1.data.getId().compareTo(o2.data.getId());
                    }
                }
            });
            int i = 0;
            for (Match<PropertyInfo> m : matches) {
                proposals[i++] = new ContentProposal(m.data.getId(), m.data.getDescription());
            }
            return proposals;
        }
    }
    return NO_CONTENT_PROPOSALS;
}