blob: 33ff2d87415d1d88898b4e27e6a2ca63f83b9c36 [file] [log] [blame]
/*******************************************************************************
* 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;
}
}