1 /******************************************************************************* 2 * Copyright (c) 2004 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.internal; 12 13 import org.eclipse.swt.widgets.Control; 14 15 /** 16 * Interface for trim controls that can be docked to the edge of a Workbench window using 17 * drag-and-drop. 18 */ 19 public interface IWindowTrim { 20 /** 21 * Returns the control representing this trim widget, or null if it has not yet 22 * been created. 23 * 24 * @return the control for the trim widget. 25 */ 26 Control getControl(); 27 28 /** 29 * Returns the set of sides that this trim can be docked onto. 30 * 31 * @return bitwise or of one or more of SWT.TOP, SWT.BOTTOM, SWT.LEFT, and SWT.RIGHT 32 */ 33 int getValidSides(); 34 35 /** 36 * Called to notify the trim object that it has been docked on the given side of the layout 37 * 38 * @param dropSide 39 * @param insertionPoint 40 */ 41 void dock(int dropSide); 42 } 43