/******************************************************************************* * Copyright (c) 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.wst.sse.ui.quickoutline; import org.eclipse.jface.viewers.ILabelProvider; import org.eclipse.jface.viewers.ITreeContentProvider; import org.eclipse.wst.sse.ui.IContentSelectionProvider; /** * Base class that provides configuration for a quick outline. * */ public abstract class AbstractQuickOutlineConfiguration { /** * Provides the label provider to be used by the quick outline * * @return an <code>ILabelProvider</code> to be used by the quick outline */ public abstract ILabelProvider getLabelProvider(); /** * Provides the content provider to be used by the quick outline * * @return a <code>ITreeContentProvider</code> to be used when providing the content of the quick outline */ public abstract ITreeContentProvider getContentProvider(); /** * Provides the content selection provider to be used by the quick outline. This allows * for adjusting the selection to be displayed in the outline based on the editor's selection * * @return an <code>IContentSelectionProvider</code> used by the quick outline. By default, returns * null indicating that the selection in the editor translates to the selection in the outline. */ public IContentSelectionProvider getContentSelectionProvider() { return null; } }