1 /******************************************************************************* 2 * Copyright (c) 2004, 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.ui; 12 13 /** 14 * Extension interface to <code>IPerspectiveListener</code> which 15 * adds support for listening to part-specific perspective lifecycle events. 16 * For example, this allows a perspective listener to determine which view 17 * is being hidden during a <code>CHANGE_VIEW_HIDE</code> event. 18 * <p> 19 * This interface may be implemented by clients. 20 * </p> 21 * 22 * @see IPageService#addPerspectiveListener(IPerspectiveListener) 23 * @see PerspectiveAdapter 24 * @since 3.0 25 */ 26 public interface IPerspectiveListener2 extends IPerspectiveListener { 27 28 /** 29 * Notifies this listener that a part in the given page's perspective 30 * has changed in some way (for example, view show/hide, editor open/close, etc). 31 * 32 * @param page the workbench page containing the perspective 33 * @param perspective the descriptor for the changed perspective 34 * @param partRef the reference to the affected part 35 * @param changeId one of the <code>CHANGE_*</code> constants on IWorkbenchPage 36 */ 37 public void perspectiveChanged(IWorkbenchPage page, 38 IPerspectiveDescriptor perspective, 39 IWorkbenchPartReference partRef, String changeId); 40 } 41