List of usage examples for org.eclipse.jface.fieldassist ContentProposalAdapter PROPOSAL_IGNORE
int PROPOSAL_IGNORE
To view the source code for org.eclipse.jface.fieldassist ContentProposalAdapter PROPOSAL_IGNORE.
Click Source Link
From source file:bndtools.editor.pkgpatterns.PkgPatternsDetailsPage.java
License:Open Source License
public void createContents(Composite parent) { FormToolkit toolkit = getManagedForm().getToolkit(); FieldDecoration assistDecor = FieldDecorationRegistry.getDefault() .getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL); KeyStroke assistKeyStroke = null; try {/*from ww w .j a v a 2 s.com*/ assistKeyStroke = KeyStroke.getInstance("Ctrl+Space"); } catch (ParseException x) { // Ignore } Section mainSection = toolkit.createSection(parent, Section.TITLE_BAR); mainSection.setText(title); mainComposite = toolkit.createComposite(mainSection); mainSection.setClient(mainComposite); toolkit.createLabel(mainComposite, "Pattern:"); txtName = toolkit.createText(mainComposite, "", SWT.BORDER); ControlDecoration decPattern = new ControlDecoration(txtName, SWT.LEFT | SWT.TOP, mainComposite); decPattern.setImage(assistDecor.getImage()); decPattern.setDescriptionText(MessageFormat.format( "Content assist is available. Press {0} or start typing to activate", assistKeyStroke.format())); decPattern.setShowHover(true); decPattern.setShowOnlyOnFocus(true); PkgPatternsProposalProvider proposalProvider = new PkgPatternsProposalProvider( new FormPartJavaSearchContext(this)); ContentProposalAdapter patternProposalAdapter = new ContentProposalAdapter(txtName, new TextContentAdapter(), proposalProvider, assistKeyStroke, UIConstants.autoActivationCharacters()); patternProposalAdapter.addContentProposalListener(proposalProvider); patternProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); patternProposalAdapter.setAutoActivationDelay(1000); patternProposalAdapter.setLabelProvider(new PkgPatternProposalLabelProvider()); patternProposalAdapter.addContentProposalListener(new IContentProposalListener() { public void proposalAccepted(IContentProposal proposal) { PkgPatternProposal patternProposal = (PkgPatternProposal) proposal; String toInsert = patternProposal.getContent(); int currentPos = txtName.getCaretPosition(); txtName.setSelection(patternProposal.getReplaceFromPos(), currentPos); txtName.insert(toInsert); txtName.setSelection(patternProposal.getCursorPosition()); } }); toolkit.createLabel(mainComposite, "Version:"); txtVersion = toolkit.createText(mainComposite, "", SWT.BORDER); /* * Section attribsSection = toolkit.createSection(parent, Section.TITLE_BAR | Section.TWISTIE); * attribsSection.setText("Extra Attributes"); Composite attribsComposite = * toolkit.createComposite(attribsSection); */ // Listeners txtName.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { if (!modifyLock.isUnderModification()) { if (selectedClauses.size() == 1) { selectedClauses.get(0).setName(txtName.getText()); if (listPart != null) { listPart.updateLabels(selectedClauses); listPart.validate(); } markDirty(); } } } }); txtVersion.addModifyListener(new ModifyListener() { public void modifyText(ModifyEvent e) { if (!modifyLock.isUnderModification()) { String text = txtVersion.getText(); if (text.length() == 0) text = null; for (HeaderClause clause : selectedClauses) { clause.getAttribs().put(Constants.VERSION_ATTRIBUTE, text); } if (listPart != null) { listPart.updateLabels(selectedClauses); listPart.validate(); } markDirty(); } } }); // Layout GridData gd; parent.setLayout(new GridLayout()); mainSection.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); mainComposite.setLayout(new GridLayout(2, false)); gd = new GridData(SWT.FILL, SWT.TOP, true, false); gd.horizontalIndent = 5; gd.widthHint = 100; txtName.setLayoutData(gd); gd = new GridData(SWT.FILL, SWT.TOP, true, false); gd.horizontalIndent = 5; gd.widthHint = 100; txtVersion.setLayoutData(gd); }
From source file:com.rcpcompany.uibindings.internal.handlers.QuickFixHandler.java
License:Open Source License
@Override public Object execute(ExecutionEvent event) throws ExecutionException { // LogUtils.debug(this, "hello"); if (Activator.getDefault().TRACE_HANDLERS) { LogUtils.debug(this, ""); }//from w ww . ja v a 2 s . c o m final IValueBinding binding = (IValueBinding) HandlerUtil.getVariable(event, Constants.SOURCES_ACTIVE_BINDING); if (binding == null) { Display.getDefault().beep(); throw new ExecutionException("Quickfixes not supported for control"); } final ValueBindingMessageImageDecorator decorator = binding .getService(ValueBindingMessageImageDecorator.class); if (decorator == null) { Display.getDefault().beep(); throw new ExecutionException("Quickfixes not supported for control"); } final List<IQuickfixProposal> quickfixes = decorator.getQuickfixes(); if (quickfixes == null || quickfixes.size() == 0) return null; if (quickfixes.size() == 1 && IManager.Factory.getManager().isAutoApplySingleQuickfix()) { quickfixes.get(0).apply(); return null; } final IQuickfixProposal[] quickfixArray = quickfixes.toArray(new IQuickfixProposal[quickfixes.size()]); final IContentProposalProvider proposalProvider = new IContentProposalProvider() { @Override public IContentProposal[] getProposals(String contents, int position) { return quickfixArray; } }; final MyContentProposalAdapter proposalAdapter = new MyContentProposalAdapter(binding.getControl(), new MyControlContentAdapter(), proposalProvider); proposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); proposalAdapter.addContentProposalListener(new IContentProposalListener() { @Override public void proposalAccepted(IContentProposal proposal) { Assert.isNotNull(proposal); final IQuickfixProposal quickfix = (IQuickfixProposal) proposal; quickfix.apply(); } }); proposalAdapter.setLabelProvider(new MyQuickfixLabelProvider()); proposalAdapter.open(); return null; }
From source file:com.rcpcompany.uibindings.internal.utils.BindingMessagesPopup.java
License:Open Source License
/** * Constructs and returns a new message popup. * /*from w ww . jav a2s . c o m*/ * @param control the control that should have the popup assiciated. * @param messages the messages to show */ public BindingMessagesPopup(Control control) { super(control, new MyControlContentAdapter(), null, null, null); setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); addContentProposalListener(new IContentProposalListener() { @Override public void proposalAccepted(IContentProposal proposal) { Assert.isNotNull(proposal); final IBindingMessage message = ((MyContentProposal) proposal).getMessage(); message.getBinding().setFocus(); } }); setLabelProvider(new MyQuickfixLabelProvider()); }
From source file:net.enilink.komma.edit.ui.util.SearchWidget.java
License:Open Source License
/** * Creates the search text and adds listeners. This method calls * {@link #doCreateSearchText(Composite)} to create the text control. * Subclasses should override {@link #doCreateSearchText(Composite)} instead * of overriding this method./*from w w w . j a va 2 s . co m*/ * * @param parent * <code>Composite</code> of the search text */ protected void createSearchText(Composite parent) { searchText = doCreateSearchText(parent); searchText.addFocusListener(new FocusAdapter() { /* * (non-Javadoc) * * @see * org.eclipse.swt.events.FocusListener#focusLost(org.eclipse.swt * .events.FocusEvent) */ public void focusGained(FocusEvent e) { /* * Running in an asyncExec because the selectAll() does not * appear to work when using mouse to give focus to text. */ Display display = searchText.getDisplay(); display.asyncExec(new Runnable() { public void run() { if (!searchText.isDisposed()) { if (getInitialText().equals(searchText.getText().trim())) { searchText.selectAll(); } } } }); } }); searchText.addSelectionListener(new SelectionAdapter() { @Override public void widgetDefaultSelected(SelectionEvent e) { doSearch(searchText.getText()); } }); searchText.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false)); // content proposals for searching class ObjectProposal extends ContentProposal { Object object; ObjectProposal(Object object) { super(""); this.object = object; } } ContentProposalAdapter proposalAdapter = new ContentProposalAdapter(searchText, new TextContentAdapter(), new IContentProposalProvider() { @Override public IContentProposal[] getProposals(String contents, int position) { Collection<Object> results = findElements(contents); List<IContentProposal> proposals = new ArrayList<IContentProposal>(); for (Object result : results) { proposals.add(new ObjectProposal(result)); } return proposals.toArray(new IContentProposal[proposals.size()]); } }, null, null); proposalAdapter.setAutoActivationDelay(750); proposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); proposalAdapter.addContentProposalListener(new IContentProposalListener() { @Override public void proposalAccepted(IContentProposal proposal) { viewer.setSelection(new StructuredSelection(((ObjectProposal) proposal).object), true); } }); proposalAdapter.setLabelProvider(new LabelProvider() { @Override public String getText(Object element) { ILabelProvider labelProvider = getLabelProvider(); return labelProvider != null ? labelProvider.getText(((ObjectProposal) element).object) : super.getText(element); } @Override public Image getImage(Object element) { ILabelProvider labelProvider = getLabelProvider(); return labelProvider != null ? labelProvider.getImage(((ObjectProposal) element).object) : super.getImage(element); } }); }
From source file:net.sf.wickedshell.ui.shell.viewer.text.TextShellViewer.java
License:Open Source License
/** * Initializes the field assist which provides command completion. *///from w ww.ja v a 2 s. co m private void initFieldAssist() { KeyStroke keyStroke = KeyStroke.getInstance(SWT.CTRL, ' '); adapter = new ContentProposalAdapter(shellDisplayControl, new TextContentAdapter(), new ShellContentProposalProvider(this), keyStroke, new char[] { SWT.TAB }); adapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); adapter.addContentProposalListener(new IContentProposalListener() { /** * @see org.eclipse.jface.fieldassist.IContentProposalListener#proposalAccepted(org.eclipse.jface.fieldassist.IContentProposal) */ public void proposalAccepted(IContentProposal proposal) { setCurrentCommand(proposal.getContent()); } }); adapter.setLabelProvider(new LabelProvider() { /** * @see org.eclipse.jface.viewers.LabelProvider#getText(java.lang.Object) */ public String getText(Object element) { Completion completion = (Completion) element; return completion.getLabel(); } /** * @see org.eclipse.jface.viewers.LabelProvider#getImage(java.lang.Object) */ public Image getImage(Object element) { Completion completion = (Completion) element; if (completion.getImagePath() != null && completion.getImagePath().length() > 1) { return ResourceManager.getPluginImage(ShellPlugin.getDefault(), completion.getImagePath()); } return ResourceManager.getPluginImage(ShellPlugin.getDefault(), "img/staticCompletion.gif"); } }); }
From source file:org.dawnsci.common.widgets.celleditor.ExpresionCellEditor.java
License:Open Source License
private void enableContentProposal(IContentProposalProvider contentProposalProvider, KeyStroke keyStroke, char[] autoActivationCharacters) { contentProposalAdapter = new ContentProposalAdapter(text, new TextContentAdapter(), contentProposalProvider, keyStroke, autoActivationCharacters); contentProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); // Listen for popup open/close events to be able to handle focus events correctly contentProposalAdapter.addContentProposalListener(new IContentProposalListener2() { public void proposalPopupClosed(ContentProposalAdapter adapter) { popupOpen = false;/*from w ww .j a v a 2s . c om*/ } public void proposalPopupOpened(ContentProposalAdapter adapter) { popupOpen = true; } }); contentProposalAdapter.addContentProposalListener(new IContentProposalListener() { @Override public void proposalAccepted(IContentProposal proposal) { IContentProposalProvider provider = contentProposalAdapter.getContentProposalProvider(); Control control = ExpresionCellEditor.this.getControl(); if (provider != null && provider instanceof ExpressionFunctionProposalProvider) { int[] lastMatchBounds = ((ExpressionFunctionProposalProvider) provider).getLastMatchBounds(); int lastPosition = ((ExpressionFunctionProposalProvider) provider).getLastPosition(); IControlContentAdapter contentAdapter = contentProposalAdapter.getControlContentAdapter(); String text = contentAdapter.getControlContents(control); if (text.isEmpty()) { contentAdapter.setControlContents(control, proposal.getContent(), proposal.getContent().length()); return; } if (lastPosition > lastMatchBounds[1]) { StringBuilder builder = new StringBuilder(); builder.append(text.substring(0, lastPosition)); builder.append(proposal.getContent()); contentAdapter.setControlContents(control, builder.toString(), lastPosition + proposal.getContent().length()); return; } String match = text.substring(lastMatchBounds[0], lastMatchBounds[1]); if (match.contains(":")) { int index = match.lastIndexOf(":"); StringBuilder builder = new StringBuilder(); builder.append(text.substring(0, lastMatchBounds[0] + index + 1)); builder.append(proposal.getContent()); builder.append(text.substring(lastMatchBounds[1])); contentAdapter.setControlContents(control, builder.toString(), lastMatchBounds[0] + index + proposal.getContent().length() + 1); } else { StringBuilder builder = new StringBuilder(); builder.append(text.substring(0, lastMatchBounds[0])); builder.append(proposal.getContent()); builder.append(text.substring(lastMatchBounds[1])); contentAdapter.setControlContents(control, builder.toString(), lastMatchBounds[0] + proposal.getContent().length()); } } } }); }
From source file:org.dawnsci.common.widgets.celleditor.TextCellEditorWithContentProposal.java
License:Open Source License
private void enableContentProposal(IContentProposalProvider contentProposalProvider, KeyStroke keyStroke, char[] autoActivationCharacters) { contentProposalAdapter = new OpenableContentAssistCommandAdapter(text, new TextContentAdapter(), contentProposalProvider, null, null, true); contentProposalAdapter.setAutoActivationDelay(0); contentProposalAdapter.setLabelProvider(labelProvider); contentProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); // Listen for popup open/close events to be able to handle focus // events correctly contentProposalAdapter.addContentProposalListener(new IContentProposalListener2() { @Override/*from w w w . ja va 2 s . c o m*/ public void proposalPopupClosed(ContentProposalAdapter adapter) { popupOpen = false; } @Override public void proposalPopupOpened(ContentProposalAdapter adapter) { popupOpen = true; } }); if (contentProposalListener != null) { registerListener(contentProposalListener); } }
From source file:org.dawnsci.common.widgets.gda.function.detail.JexlExpressionFunctionDetailPane.java
License:Open Source License
@Override public Control createControl(Composite parent) { Composite composite = new Composite(parent, 0); GridLayoutFactory.fillDefaults().numColumns(2).applyTo(composite); Label fxy = new Label(composite, SWT.NONE); fxy.setText("f(x)="); FontData fontData = fxy.getFont().getFontData()[0]; fxyFont = new Font(fxy.getDisplay(), new FontData(fontData.getName(), fontData.getHeight() * 3 / 2, SWT.ITALIC)); fxy.setFont(fxyFont);//from w w w . j a v a 2 s . c om jexlTextEditor = new Text(composite, SWT.V_SCROLL | SWT.WRAP); GridDataFactory.fillDefaults().grab(true, true).applyTo(jexlTextEditor); modifyListener = new ModifyListenerImplementation(); jexlTextEditor.setFont(JFaceResources.getTextFont()); jexlTextEditor.setText(""); jexlTextEditor.addModifyListener(modifyListener); focusListener = new FocusAdapterExtension(); jexlTextEditor.addFocusListener(focusListener); proposalProvider = new ExpressionFunctionProposalProvider(Collections.<String, Object>emptyMap()); contentProposalAdapter = new OpenableContentAssistCommandAdapter(jexlTextEditor, new TextContentAdapter(), proposalProvider, null, null, true); contentProposalAdapter.setLabelProvider(new ContentProposalLabelProvider()); contentProposalAdapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); contentProposalAdapter.addContentProposalListener(new JexlContentProposalListener(jexlTextEditor)); return composite; }
From source file:org.eclipse.birt.chart.ui.swt.fieldassist.FieldAssistHelper.java
License:Open Source License
private int getContentAssistAcceptance() { IPreferenceStore store = getPreferenceStore(); String acceptanceStyle = store.getString(PreferenceConstants.PREF_CONTENTASSISTRESULT); if (acceptanceStyle.equals(PreferenceConstants.PREF_CONTENTASSISTRESULT_INSERT)) return ContentProposalAdapter.PROPOSAL_INSERT; if (acceptanceStyle.equals(PreferenceConstants.PREF_CONTENTASSISTRESULT_REPLACE)) return ContentProposalAdapter.PROPOSAL_REPLACE; return ContentProposalAdapter.PROPOSAL_IGNORE; }
From source file:org.eclipse.mylyn.internal.web.tasks.WebContentProposalProvider.java
License:Open Source License
@SuppressWarnings("deprecation") public static ControlDecoration createDecoration(final Text text, // ParametersEditor parametersEditor, boolean includeTemplates) { FieldDecorationRegistry registry = FieldDecorationRegistry.getDefault(); FieldDecoration fieldDecoration = registry.getFieldDecoration(FieldDecorationRegistry.DEC_CONTENT_PROPOSAL); ControlDecoration decoration = new ControlDecoration(text, SWT.LEFT | SWT.TOP); decoration.setImage(fieldDecoration.getImage()); decoration.setDescriptionText(fieldDecoration.getDescription()); decoration.setShowOnlyOnFocus(true); KeyStroke keystroke = null;/* ww w . j av a 2s . c o m*/ try { keystroke = KeyStroke.getInstance("Ctrl" + KeyStroke.KEY_DELIMITER + "Space"); //$NON-NLS-1$ //$NON-NLS-2$ } catch (ParseException e) { } ContentProposalAdapter adapter = new ContentProposalAdapter(text, new TextContentAdapter(), // new WebContentProposalProvider(parametersEditor, includeTemplates), keystroke, null); adapter.setPopupSize(new Point(200, 150)); adapter.setPropagateKeys(true); adapter.setFilterStyle(ContentProposalAdapter.FILTER_CUMULATIVE); // workaround for bug 196565 WebContentProposalListener listener = new WebContentProposalListener(adapter); adapter.addContentProposalListener((IContentProposalListener) listener); adapter.addContentProposalListener((IContentProposalListener2) listener); adapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_IGNORE); return decoration; }