/* * Copyright (c) 2012-2016 Marsha Chechik, Alessio Di Sandro, Michalis Famelis, * Rick Salay. * 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: * Alessio Di Sandro - Implementation. */ package edu.toronto.cs.se.modelepedia.tutorial.economy.diagram.part; import java.util.Collections; import java.util.List; import org.eclipse.gef.Tool; import org.eclipse.gef.palette.PaletteContainer; import org.eclipse.gef.palette.PaletteDrawer; import org.eclipse.gef.palette.PaletteRoot; import org.eclipse.gef.palette.ToolEntry; import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeCreationTool; import org.eclipse.gmf.runtime.emf.type.core.IElementType; import edu.toronto.cs.se.modelepedia.tutorial.economy.diagram.providers.EconomyElementTypes; /** * @generated */ public class EconomyPaletteFactory { /** * @generated */ public void fillPalette(PaletteRoot paletteRoot) { paletteRoot.add(createObjects1Group()); } /** * Creates "Objects" palette tool group * @generated */ private PaletteContainer createObjects1Group() { PaletteDrawer paletteContainer = new PaletteDrawer( Messages.Objects1Group_title); paletteContainer.setId("createObjects1Group"); //$NON-NLS-1$ paletteContainer.add(createGold1CreationTool()); return paletteContainer; } /** * @generated */ private ToolEntry createGold1CreationTool() { NodeToolEntry entry = new NodeToolEntry( Messages.Gold1CreationTool_title, Messages.Gold1CreationTool_desc, Collections.singletonList(EconomyElementTypes.Gold_2001)); entry.setId("createGold1CreationTool"); //$NON-NLS-1$ entry.setSmallIcon(EconomyElementTypes .getImageDescriptor(EconomyElementTypes.Gold_2001)); entry.setLargeIcon(entry.getSmallIcon()); return entry; } /** * @generated */ private static class NodeToolEntry extends ToolEntry { /** * @generated */ private final List<IElementType> elementTypes; /** * @generated */ private NodeToolEntry(String title, String description, List<IElementType> elementTypes) { super(title, description, null, null); this.elementTypes = elementTypes; } /** * @generated */ public Tool createTool() { Tool tool = new UnspecifiedTypeCreationTool(elementTypes); tool.setProperties(getToolProperties()); return tool; } } }