/* * Copyright (c) 2007 Borland Software Corporation * * 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: * Dmitry Stadnik (Borland) - initial API and implementation */ package org.eclipse.gmf.examples.taipan.port.diagram.part; import java.util.ArrayList; import java.util.List; import org.eclipse.gef.Tool; import org.eclipse.gef.palette.PaletteContainer; import org.eclipse.gef.palette.PaletteGroup; import org.eclipse.gef.palette.PaletteRoot; import org.eclipse.gef.palette.ToolEntry; import org.eclipse.gmf.examples.taipan.port.diagram.providers.TaiPanElementTypes; import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeCreationTool; /** * @generated */ public class TaiPanPaletteFactory { /** * @generated */ public void fillPalette(PaletteRoot paletteRoot) { paletteRoot.add(createPort1Group()); } /** * Creates "Port" palette tool group * @generated */ private PaletteContainer createPort1Group() { PaletteGroup paletteContainer = new PaletteGroup(Messages.Port1Group_title); paletteContainer.add(createBuilding1CreationTool()); return paletteContainer; } /** * @generated */ private ToolEntry createBuilding1CreationTool() { List/*<IElementType>*/types = new ArrayList/*<IElementType>*/(1); types.add(TaiPanElementTypes.Building_2001); NodeToolEntry entry = new NodeToolEntry(Messages.Building1CreationTool_title, Messages.Building1CreationTool_desc, types); entry.setSmallIcon(TaiPanElementTypes.getImageDescriptor(TaiPanElementTypes.Building_2001)); entry.setLargeIcon(entry.getSmallIcon()); return entry; } /** * @generated */ private static class NodeToolEntry extends ToolEntry { /** * @generated */ private final List elementTypes; /** * @generated */ private NodeToolEntry(String title, String description, List elementTypes) { super(title, description, null, null); this.elementTypes = elementTypes; } /** * @generated */ public Tool createTool() { Tool tool = new UnspecifiedTypeCreationTool(elementTypes); tool.setProperties(getToolProperties()); return tool; } } }