Package org.eclipse.ui.dialogs
Class TwoPaneElementSelector
- All Implemented Interfaces:
IShellProvider
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
ConstructorDescriptionTwoPaneElementSelector
(Shell parent, ILabelProvider elementRenderer, ILabelProvider qualifierRenderer) Creates the two pane element selector. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Compute the result and return it.createDialogArea
(Composite parent) Creates and returns the contents of the upper part of this dialog (above the button bar).protected Label
createLabel
(Composite parent, String name) Creates a label if name was notnull
.protected Table
createLowerList
(Composite parent) Creates the list widget and sets layout data.protected Object
Returns the selected element from the lower pane.protected void
Handles default selection (double click).protected void
Handles empty list by disabling widgets.protected void
Handles a selection changed event.void
setElements
(Object[] elements) Sets the elements to be displayed.void
setLowerListComparator
(Comparator comparator) Sets the comparator used to sort the list in the lower pane.void
setLowerListLabel
(String label) Sets the lower list label.protected void
setLowerSelectedElement
(Object element) Selects an element in the lower pane.void
setUpperListLabel
(String label) Sets the upper list label.protected boolean
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 Details
-
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 Details
-
setUpperListLabel
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
Sets the lower list label.- Parameters:
label
- String ornull
. If the label isnull
(default), no label is created.
-
setLowerListComparator
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 ornull
ifString
's comparison methods should be used- Since:
- 3.5
-
setElements
Sets the elements to be displayed.- Parameters:
elements
- the elements to be displayed.
-
createDialogArea
Description copied from class:Dialog
Creates and returns the contents of the upper part of this dialog (above the button bar).The
Dialog
implementation of this framework method creates and returns a newComposite
with 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
super
as in the following example:Composite composite = (Composite) super.createDialogArea(parent); //add controls to composite as necessary return composite;
- Overrides:
createDialogArea
in classDialog
- Parameters:
parent
- the parent composite to contain the dialog area- Returns:
- the dialog area control
-
createLabel
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,
null
otherwise.
-
createLowerList
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:SelectionStatusDialog
Compute the result and return it.- Specified by:
computeResult
in classSelectionStatusDialog
- See Also:
-
handleDefaultSelected
protected void handleDefaultSelected()Description copied from class:AbstractElementListSelectionDialog
Handles default selection (double click). By default, the OK button is pressed.- Overrides:
handleDefaultSelected
in classAbstractElementListSelectionDialog
- See Also:
-
handleSelectionChanged
protected void handleSelectionChanged()Description copied from class:AbstractElementListSelectionDialog
Handles a selection changed event. By default, the current selection is validated.- Overrides:
handleSelectionChanged
in classAbstractElementListSelectionDialog
- See Also:
-
setLowerSelectedElement
Selects an element in the lower pane.- Parameters:
element
- the element to select
-
getLowerSelectedElement
Returns the selected element from the lower pane.- Returns:
- Object
-
handleEmptyList
protected void handleEmptyList()Description copied from class:AbstractElementListSelectionDialog
Handles empty list by disabling widgets.- Overrides:
handleEmptyList
in classAbstractElementListSelectionDialog
-
validateCurrentSelection
protected boolean validateCurrentSelection()Description copied from class:AbstractElementListSelectionDialog
Validates the current selection and updates the status line accordingly.- Overrides:
validateCurrentSelection
in classAbstractElementListSelectionDialog
- Returns:
- boolean
true
if the current selection is valid. - Since:
- 3.5
- See Also:
-