1 /******************************************************************************* 2 * Copyright (c) 2005, 2006 IBM Corporation and others. 3 * All rights reserved. This program and the accompanying materials 4 * are made available under the terms of the Eclipse Public License v1.0 5 * which accompanies this distribution, and is available at 6 * http://www.eclipse.org/legal/epl-v10.html 7 * 8 * Contributors: 9 * IBM Corporation - initial API and implementation 10 *******************************************************************************/ 11 package org.eclipse.jdt.ui.text.folding; 12 13 import org.eclipse.jdt.core.IJavaElement; 14 15 /** 16 * Extends {@link IJavaFoldingStructureProvider} with the following 17 * functions: 18 * <ul> 19 * <li>collapsing of comments and members</li> 20 * <li>expanding and collapsing of certain java elements</li> 21 * </ul> 22 * 23 * @since 3.2 24 */ 25 public interface IJavaFoldingStructureProviderExtension { 26 /** 27 * Collapses all members except for top level types. 28 */ 29 void collapseMembers(); 30 31 /** 32 * Collapses all comments. 33 */ 34 void collapseComments(); 35 36 /** 37 * Collapses the given elements. 38 * 39 * @param elements the java elements to collapse (the array and its elements must not be 40 * modified) 41 */ 42 void collapseElements(IJavaElement[] elements); 43 44 /** 45 * Expands the given elements. 46 * 47 * @param elements the java elements to expand (the array and its elements must not be modified) 48 */ 49 void expandElements(IJavaElement[] elements); 50 } 51