Class AutoCompleteComboViewer
java.lang.Object
org.eclipse.jface.viewers.Viewer
org.eclipse.jface.viewers.ContentViewer
org.eclipse.jface.viewers.StructuredViewer
org.eclipse.jface.viewers.AbstractListViewer
org.eclipse.jface.viewers.ComboViewer
com._1c.g5.v8.dt.platform.services.ui.AutoCompleteComboViewer
- All Implemented Interfaces:
EventListener,IInputProvider,IInputSelectionProvider,IPostSelectionProvider,ISelectionProvider,org.eclipse.swt.events.FocusListener,org.eclipse.swt.events.KeyListener,org.eclipse.swt.events.ModifyListener,org.eclipse.swt.internal.SWTEventListener
public class AutoCompleteComboViewer
extends ComboViewer
implements org.eclipse.swt.events.ModifyListener, org.eclipse.swt.events.FocusListener, org.eclipse.swt.events.KeyListener
ComboViewer extension with auto complete support.
By default, eontent to proposal associations will be defined by ILabelProvider of this
combo viewer. Clients may override with buildProposals(Iterable). Iterable input
is expected for this viewer.
SWT.DROP_DOWN style is automatically appended to viewer.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.eclipse.jface.viewers.StructuredViewer
StructuredViewer.ColorAndFontCollector, StructuredViewer.ColorAndFontCollectorWithProviders -
Field Summary
FieldsFields inherited from class org.eclipse.jface.viewers.Viewer
WIDGET_DATA_KEY -
Constructor Summary
ConstructorsConstructorDescriptionAutoCompleteComboViewer(org.eclipse.swt.widgets.Composite parent) Constructor ofAutoCompleteComboViewer.AutoCompleteComboViewer(org.eclipse.swt.widgets.Composite parent, int style) Constructor ofAutoCompleteComboViewer. -
Method Summary
Modifier and TypeMethodDescriptionbuildProposals(Iterable<Object> input) Build proposals for the viewer auto completion.protected voidDisable auto complete if it is enabled.protected voidEnable auto complete if it is not already enabled.protected IStructuredSelectionextractSelection(String typedValue) Try to extractIStructuredSelectionfrom given text input.voidfocusGained(org.eclipse.swt.events.FocusEvent event) voidfocusLost(org.eclipse.swt.events.FocusEvent event) protected StringgetLabelText(Object object) Returns label text for the given input object.protected voidInitialize auto completion support for this viewer.protected voidinputChanged(Object input, Object oldInput) protected booleanisAllowed(char character) Returns whether the given control character is allowed for auto complete popup providing.voidkeyPressed(org.eclipse.swt.events.KeyEvent event) voidkeyReleased(org.eclipse.swt.events.KeyEvent event) voidmodifyText(org.eclipse.swt.events.ModifyEvent event) Methods inherited from class org.eclipse.jface.viewers.ComboViewer
getCCombo, getCombo, getControl, listAdd, listDeselectAll, listGetItemCount, listGetSelectionIndices, listRemove, listRemoveAll, listSetItem, listSetItems, listSetSelection, listShowSelection, revealMethods inherited from class org.eclipse.jface.viewers.AbstractListViewer
add, add, doFindInputItem, doFindItem, doUpdateItem, getElementAt, getLabelProvider, getSelectionFromWidget, indexForElement, insert, internalRefresh, listGetTopIndex, listSetTopIndex, remove, remove, setLabelProvider, setSelectionToWidgetMethods inherited from class org.eclipse.jface.viewers.StructuredViewer
addDoubleClickListener, addDragSupport, addDropSupport, addFilter, addOpenListener, addPostSelectionChangedListener, assertContentProviderType, assertElementsNotNull, associate, buildLabel, disassociate, equals, filter, findItem, findItems, fireDoubleClick, fireOpen, firePostSelectionChanged, getColorAndFontCollector, getComparator, getComparer, getFilteredChildren, getFilters, getItem, getRawChildren, getRoot, getSortedChildren, getSorter, getStructuredSelection, handleDispose, handleDoubleSelect, handleInvalidSelection, handleLabelProviderChanged, handleOpen, handlePostSelect, handleSelect, hasFilters, hookControl, internalRefresh, internalUpdate, mapElement, needsRefilter, preservingSelection, refresh, refresh, refresh, refresh, refreshItem, removeDoubleClickListener, removeFilter, removeOpenListener, removePostSelectionChangedListener, resetFilters, setComparator, setComparer, setContentProvider, setFilters, setInput, setSelection, setSelectionToWidget, setSorter, setUseHashlookup, testFindItem, testFindItems, unmapAllElements, unmapElement, unmapElement, update, update, updateItem, updateSelection, usingElementMapMethods inherited from class org.eclipse.jface.viewers.ContentViewer
getContentProvider, getInput, labelProviderChangedMethods inherited from class org.eclipse.jface.viewers.Viewer
addHelpListener, addSelectionChangedListener, fireHelpRequested, fireSelectionChanged, getData, handleHelpRequest, removeHelpListener, removeSelectionChangedListener, scrollDown, scrollUp, setData, setSelectionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.eclipse.jface.viewers.ISelectionProvider
addSelectionChangedListener, removeSelectionChangedListener, setSelection
-
Field Details
-
autoComplete
-
proposalToObjects
-
-
Constructor Details
-
AutoCompleteComboViewer
public AutoCompleteComboViewer(org.eclipse.swt.widgets.Composite parent) Constructor ofAutoCompleteComboViewer.- Parameters:
parent- the parent control, cannot benull
-
AutoCompleteComboViewer
public AutoCompleteComboViewer(org.eclipse.swt.widgets.Composite parent, int style) Constructor ofAutoCompleteComboViewer.- Parameters:
parent- the parent control, cannot benullstyle- theSWTstyle bits
-
-
Method Details
-
modifyText
public void modifyText(org.eclipse.swt.events.ModifyEvent event) - Specified by:
modifyTextin interfaceorg.eclipse.swt.events.ModifyListener
-
keyPressed
public void keyPressed(org.eclipse.swt.events.KeyEvent event) - Specified by:
keyPressedin interfaceorg.eclipse.swt.events.KeyListener
-
keyReleased
public void keyReleased(org.eclipse.swt.events.KeyEvent event) - Specified by:
keyReleasedin interfaceorg.eclipse.swt.events.KeyListener
-
focusGained
public void focusGained(org.eclipse.swt.events.FocusEvent event) - Specified by:
focusGainedin interfaceorg.eclipse.swt.events.FocusListener
-
focusLost
public void focusLost(org.eclipse.swt.events.FocusEvent event) - Specified by:
focusLostin interfaceorg.eclipse.swt.events.FocusListener
-
getSelection
- Specified by:
getSelectionin interfaceISelectionProvider- Overrides:
getSelectionin classStructuredViewer
-
inputChanged
- Overrides:
inputChangedin classAbstractListViewer
-
isAllowed
protected boolean isAllowed(char character) Returns whether the given control character is allowed for auto complete popup providing.- Parameters:
character- the control character to check- Returns:
- whether the given control character is allowed for auto complete popup providing
-
buildProposals
Build proposals for the viewer auto completion. Default implementation usesILabelProviderto get proposal text. Allows non-unique input object text presentation. Returns multi map:- key - string representation for the target object
- value - the target object
- Parameters:
input- an iterable input of the viewer, cannot benull, can be empty- Returns:
- proposals multi map for the viewer auto completion, never
null
-
getLabelText
Returns label text for the given input object.- Parameters:
object- the input object to get label text for, cannot benull- Returns:
- the label text for the given input object, never
null
-
initializeAutoComplete
protected void initializeAutoComplete()Initialize auto completion support for this viewer. -
extractSelection
Try to extractIStructuredSelectionfrom given text input. Can return structured selection with item from current input of combo viewer or empty selection.- Parameters:
typedValue- text input to extract structured selection from, cannot benull- Returns:
- extracted structured selection, never
null, can be empty
-
ensureEnabled
protected void ensureEnabled()Enable auto complete if it is not already enabled. -
ensureDisabled
protected void ensureDisabled()Disable auto complete if it is enabled.
-