/******************************************************************************* * Copyright (c) 2007 Exadel, Inc. and Red Hat, Inc. * Distributed under license by Red Hat, Inc. All rights reserved. * This program is 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: * Exadel, Inc. and Red Hat, Inc. - initial API and implementation ******************************************************************************/ package org.jboss.tools.jsf.ui.editor.edit; import java.util.List; import org.eclipse.gef.AccessibleEditPart; import org.eclipse.gef.EditPolicy; import org.eclipse.swt.accessibility.AccessibleEvent; import org.jboss.tools.jsf.ui.editor.model.IJSFModel; /** * Support for containers. */ abstract public class JSFContainerEditPart extends JSFEditPart { protected AccessibleEditPart createAccessible() { return new AccessibleGraphicalEditPart() { public void getName(AccessibleEvent event) { event.result = getJSFModel().toString(); } }; } /** * Installs EditPolicies for container. */ protected void createEditPolicies() { super.createEditPolicies(); installEditPolicy(EditPolicy.CONTAINER_ROLE, new JSFContainerEditPolicy()); installEditPolicy(EditPolicy.LAYOUT_ROLE, new JSFXYLayoutEditPolicy()); } /** * Returns the model as a IJSFModel. * * @return IJSFModel. */ protected IJSFModel getJSFModel() { return (IJSFModel) getModel(); } /** * Returns list of container's children. * * @return List of children. */ protected List getModelChildren() { return getJSFModel().getGroupList().getElements(); } }