Package org.eclipse.ui.dialogs
Class TwoPaneElementSelector
-
- All Implemented Interfaces:
IShellProvider
public class TwoPaneElementSelector extends AbstractElementListSelectionDialog
A list selection dialog with two panes. Duplicated entries will be folded together and are displayed in the lower pane (qualifier).- Since:
- 2.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jface.window.Window
Window.IExceptionHandler
-
-
Field Summary
-
Fields inherited from class org.eclipse.ui.dialogs.AbstractElementListSelectionDialog
fFilteredList
-
Fields inherited from class org.eclipse.jface.dialogs.Dialog
blockedHandler, buttonBar, DIALOG_DEFAULT_BOUNDS, DIALOG_PERSISTLOCATION, DIALOG_PERSISTSIZE, dialogArea, DLG_IMG_ERROR, DLG_IMG_HELP, DLG_IMG_INFO, DLG_IMG_MESSAGE_ERROR, DLG_IMG_MESSAGE_INFO, DLG_IMG_MESSAGE_WARNING, DLG_IMG_QUESTION, DLG_IMG_WARNING, ELLIPSIS
-
Fields inherited from class org.eclipse.jface.window.Window
CANCEL, OK, resizeHasOccurred
-
-
Constructor Summary
Constructors Constructor Description TwoPaneElementSelector(Shell parent, ILabelProvider elementRenderer, ILabelProvider qualifierRenderer)Creates the two pane element selector.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcomputeResult()Compute the result and return it.ControlcreateDialogArea(Composite parent)Creates and returns the contents of the upper part of this dialog (above the button bar).protected LabelcreateLabel(Composite parent, String name)Creates a label if name was notnull.protected TablecreateLowerList(Composite parent)Creates the list widget and sets layout data.protected ObjectgetLowerSelectedElement()Returns the selected element from the lower pane.protected voidhandleDefaultSelected()Handles default selection (double click).protected voidhandleEmptyList()Handles empty list by disabling widgets.protected voidhandleSelectionChanged()Handles a selection changed event.voidsetElements(Object[] elements)Sets the elements to be displayed.voidsetLowerListComparator(Comparator comparator)Sets the comparator used to sort the list in the lower pane.voidsetLowerListLabel(String label)Sets the lower list label.protected voidsetLowerSelectedElement(Object element)Selects an element in the lower pane.voidsetUpperListLabel(String label)Sets the upper list label.protected booleanvalidateCurrentSelection()Validates the current selection and updates the status line accordingly.-
Methods inherited from class org.eclipse.ui.dialogs.AbstractElementListSelectionDialog
cancelPressed, create, createFilteredList, createFilterText, createMessageArea, getFilter, getFoldedElements, getSelectedElements, getSelectionIndex, getSelectionIndices, getValidator, handleElementsChanged, isCaseIgnored, open, setAllowDuplicates, setEmptyListMessage, setEmptySelectionMessage, setFilter, setIgnoreCase, setListElements, setMatchEmptyString, setMultipleSelection, setSelection, setSize, setValidator, updateOkState
-
Methods inherited from class org.eclipse.ui.dialogs.SelectionStatusDialog
configureShell, createButtonBar, getFirstResult, okPressed, setImage, setResult, setStatusLineAboveButtons, updateButtonsEnableState, updateStatus
-
Methods inherited from class org.eclipse.ui.dialogs.SelectionDialog
createButtonsForButtonBar, getDialogBoundsSettings, getDialogBoundsStrategy, getInitialElementSelections, getInitialSelections, getMessage, getOkButton, getResult, isResizable, setDialogBoundsSettings, setInitialElementSelections, setInitialSelections, setMessage, setResult, setSelectionResult, setTitle
-
Methods inherited from class org.eclipse.jface.dialogs.TrayDialog
closeTray, createHelpControl, getLayout, getTray, handleShellCloseEvent, isDialogHelpAvailable, isHelpAvailable, openTray, setDialogHelpAvailable, setHelpAvailable
-
Methods inherited from class org.eclipse.jface.dialogs.Dialog
applyDialogFont, buttonPressed, close, convertHeightInCharsToPixels, convertHeightInCharsToPixels, convertHorizontalDLUsToPixels, convertHorizontalDLUsToPixels, convertVerticalDLUsToPixels, convertVerticalDLUsToPixels, convertWidthInCharsToPixels, convertWidthInCharsToPixels, createButton, createContents, dialogFontIsDefault, getBlockedHandler, getButton, getButtonBar, getCancelButton, getDialogArea, getImage, getInitialLocation, getInitialSize, getOKButton, initializeBounds, initializeDialogUnits, setBlockedHandler, setButtonLayoutData, setButtonLayoutFormData, shortenText
-
Methods inherited from class org.eclipse.jface.window.Window
canHandleShellCloseEvent, constrainShellSize, createShell, getConstrainedShellBounds, getContents, getDefaultImage, getDefaultImages, getDefaultOrientation, getParentShell, getReturnCode, getShell, getShellListener, getShellStyle, getWindowManager, handleFontChange, setBlockOnOpen, setDefaultImage, setDefaultImages, setDefaultModalParent, setDefaultOrientation, setExceptionHandler, setParentShell, setReturnCode, setShellStyle, setWindowManager
-
-
-
-
Constructor Detail
-
TwoPaneElementSelector
public TwoPaneElementSelector(Shell parent, ILabelProvider elementRenderer, ILabelProvider qualifierRenderer)
Creates the two pane element selector.- Parameters:
parent- the parent shell.elementRenderer- the element renderer.qualifierRenderer- the qualifier renderer.
-
-
Method Detail
-
setUpperListLabel
public void setUpperListLabel(String label)
Sets the upper list label. If the label isnull(default), no label is created.- Parameters:
label- the label to set or null for no label.
-
setLowerListLabel
public void setLowerListLabel(String label)
Sets the lower list label.- Parameters:
label- String ornull. If the label isnull(default), no label is created.
-
setLowerListComparator
public void setLowerListComparator(Comparator comparator)
Sets the comparator used to sort the list in the lower pane.Note: the comparator might want to honor
AbstractElementListSelectionDialog.isCaseIgnored().- Parameters:
comparator- a Comparator ornullifString's comparison methods should be used- Since:
- 3.5
-
setElements
public void setElements(Object[] elements)
Sets the elements to be displayed.- Parameters:
elements- the elements to be displayed.
-
createDialogArea
public Control createDialogArea(Composite parent)
Description copied from class:DialogCreates and returns the contents of the upper part of this dialog (above the button bar).The
Dialogimplementation of this framework method creates and returns a newCompositewith standard margins and spacing.The returned control's layout data must be an instance of
GridData. This method must not modify the parent's layout.Subclasses must override this method but may call
superas in the following example:Composite composite = (Composite) super.createDialogArea(parent); //add controls to composite as necessary return composite;
- Overrides:
createDialogAreain classDialog- Parameters:
parent- the parent composite to contain the dialog area- Returns:
- the dialog area control
-
createLabel
protected Label createLabel(Composite parent, String name)
Creates a label if name was notnull.- Parameters:
parent- the parent composite.name- the name of the label.- Returns:
- returns a label if a name was given,
nullotherwise.
-
createLowerList
protected Table createLowerList(Composite parent)
Creates the list widget and sets layout data.- Parameters:
parent- the parent composite.- Returns:
- returns the list table widget.
-
computeResult
protected void computeResult()
Description copied from class:SelectionStatusDialogCompute the result and return it.- Specified by:
computeResultin classSelectionStatusDialog- See Also:
SelectionStatusDialog.computeResult()
-
handleDefaultSelected
protected void handleDefaultSelected()
Description copied from class:AbstractElementListSelectionDialogHandles default selection (double click). By default, the OK button is pressed.- Overrides:
handleDefaultSelectedin classAbstractElementListSelectionDialog- See Also:
AbstractElementListSelectionDialog.handleDefaultSelected()
-
handleSelectionChanged
protected void handleSelectionChanged()
Description copied from class:AbstractElementListSelectionDialogHandles a selection changed event. By default, the current selection is validated.- Overrides:
handleSelectionChangedin classAbstractElementListSelectionDialog- See Also:
AbstractElementListSelectionDialog.handleSelectionChanged()
-
setLowerSelectedElement
protected void setLowerSelectedElement(Object element)
Selects an element in the lower pane.- Parameters:
element- the element to select
-
getLowerSelectedElement
protected Object getLowerSelectedElement()
Returns the selected element from the lower pane.- Returns:
- Object
-
handleEmptyList
protected void handleEmptyList()
Description copied from class:AbstractElementListSelectionDialogHandles empty list by disabling widgets.- Overrides:
handleEmptyListin classAbstractElementListSelectionDialog
-
validateCurrentSelection
protected boolean validateCurrentSelection()
Description copied from class:AbstractElementListSelectionDialogValidates the current selection and updates the status line accordingly.- Overrides:
validateCurrentSelectionin classAbstractElementListSelectionDialog- Returns:
- boolean
trueif the current selection is valid. - Since:
- 3.5
- See Also:
AbstractElementListSelectionDialog.validateCurrentSelection()
-
-