/** * Returns whether this participant's source lookup director is configured * to search for duplicate source elements. * * @return whether this participant's source lookup director is configured * to search for duplicate source elements * @since 3.5 */ public boolean isFindDuplicates() { ISourceLookupDirector director = getDirector(); if (director != null) { return director.isFindDuplicates(); } return false; }
/** * Returns whether this container's source should search for duplicate source * elements. Since 3.5, the current participant is consulted to determine if * duplicates should be found. Fall back to querying the source lookup director * if the participant is not an {@link AbstractSourceLookupParticipant}. * * @return whether to search for duplicate source elements */ protected boolean isFindDuplicates() { ISourceLookupDirector director = getDirector(); if (director != null) { if (director instanceof AbstractSourceLookupDirector) { AbstractSourceLookupDirector asld = (AbstractSourceLookupDirector) director; ISourceLookupParticipant participant = asld.getCurrentParticipant(); if (participant instanceof AbstractSourceLookupParticipant ) { AbstractSourceLookupParticipant aslp = (AbstractSourceLookupParticipant) participant; return aslp.isFindDuplicates(); } } return director.isFindDuplicates(); } return false; }
/** * Initializes this control based on the settings in the given * AbstractSourceLookupDirector */ public void initializeFrom(ISourceLookupDirector locator) { if(fConfig == null) { fConfig = locator.getLaunchConfiguration(); } fPathViewer.setEntries(locator.getSourceContainers()); fDuplicatesButton.setSelection(locator.isFindDuplicates()); fLocator = locator; fAddAction.setSourceLookupDirector(locator); fEditAction.setSourceLookupDirector(locator); fRestoreDefaultAction.setSourceLookupDirector(locator); setDirty(false); }