1765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye/******************************************************************************* 2765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Copyright (c) 2011 Google, Inc. 3765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * All rights reserved. This program and the accompanying materials 4765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * are made available under the terms of the Eclipse Public License v1.0 5765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * which accompanies this distribution, and is available at 6765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * http://www.eclipse.org/legal/epl-v10.html 7765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * 8765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Contributors: 9765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Google, Inc. - initial API and implementation 10765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye *******************************************************************************/ 11765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyepackage org.eclipse.wb.internal.core.model.property.editor.presentation; 12765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 13765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.internal.core.model.property.Property; 14765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.internal.core.model.property.editor.PropertyEditor; 15765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyeimport org.eclipse.wb.internal.core.model.property.table.PropertyTable; 16765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 17765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye/** 18765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Implementations of {@link PropertyEditorPresentation} are used to show some presentation for 19765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * visible, but not activated yet {@link PropertyEditor}. 20765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * 21765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * @author scheglov_ke 22765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * @coverage core.model.property.editor 23765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye */ 24765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbyepublic abstract class PropertyEditorPresentation { 25765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye /** 26765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Shows presentation for given {@link Property}. 27765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * 28765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * @return the width that this presentation occupies on the right of given rectangle. 29765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye */ 30765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye public abstract int show(PropertyTable propertyTable, 31765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye Property property, 32765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye int x, 33765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye int y, 34765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye int width, 35765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye int height); 36765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye 37765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye /** 38765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye * Hides presentation. 39765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye */ 40765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye public abstract void hide(PropertyTable propertyTable, Property property); 41765e52e2d30d0754625b8c7af6c36e93612f15beTor Norbye} 42