| /******************************************************************************* |
| * Copyright (c) 2000, 2005 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.ui.internal; |
| |
| public interface ILayoutContainer { |
| public boolean allowsAdd(LayoutPart toAdd); |
| |
| /** |
| * Add a child to the container. |
| */ |
| public void add(LayoutPart newPart); |
| |
| /** |
| * Returns a list of layout children. |
| */ |
| public LayoutPart[] getChildren(); |
| |
| /** |
| * Remove a child from the container. |
| */ |
| public void remove(LayoutPart part); |
| |
| /** |
| * Replace one child with another |
| */ |
| public void replace(LayoutPart oldPart, LayoutPart newPart); |
| |
| public void findSashes(LayoutPart toFind, PartPane.Sashes result); |
| |
| /** |
| * When a layout part closes, focus will return to the previously active part. |
| * This method determines whether the parts in this container should participate |
| * in this behavior. If this method returns true, its parts may automatically be |
| * given focus when another part is closed. |
| * |
| * @return true iff the parts in this container may be given focus when the active |
| * part is closed |
| */ |
| public boolean allowsAutoFocus(); |
| |
| /** |
| * Called by child parts to request a zoom in, given an immediate child |
| * |
| * @param toZoom |
| * @since 3.1 |
| */ |
| public void childRequestZoomIn(LayoutPart toZoom); |
| |
| /** |
| * Called by child parts to request a zoom out |
| * |
| * @since 3.1 |
| */ |
| public void childRequestZoomOut(); |
| |
| /** |
| * Returns true iff the given child is obscured due to the fact that the container is zoomed into |
| * another part. |
| * |
| * @param toTest |
| * @return |
| * @since 3.1 |
| */ |
| public boolean childObscuredByZoom(LayoutPart toTest); |
| |
| /** |
| * Returns true iff we are zoomed into the given part, given an immediate child of this container. |
| * |
| * @param toTest |
| * @return |
| * @since 3.1 |
| */ |
| public boolean childIsZoomed(LayoutPart toTest); |
| |
| /** |
| * Called when the preferred size of the given child has changed, requiring a |
| * layout to be triggered. |
| * |
| * @param childThatChanged the child that triggered the new layout |
| */ |
| public void resizeChild(LayoutPart childThatChanged); |
| |
| } |