package org.roxgt.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.PaletteSeparator; import org.eclipse.gef.palette.ToolEntry; import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeConnectionTool; import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeCreationTool; import org.roxgt.diagram.providers.RoxgtElementTypes; /** * @generated */ public class RoxgtPaletteFactory { /** * @generated */ public void fillPalette(PaletteRoot paletteRoot) { paletteRoot.add(createRoxgt1Group()); } /** * Creates "roxgt" palette tool group * @generated */ private PaletteContainer createRoxgt1Group() { PaletteGroup paletteContainer = new PaletteGroup( Messages.Roxgt1Group_title); paletteContainer.add(createNode1CreationTool()); paletteContainer.add(createEdge2CreationTool()); paletteContainer.add(new PaletteSeparator()); paletteContainer.add(createProperty4CreationTool()); return paletteContainer; } /** * @generated */ private ToolEntry createNode1CreationTool() { List/*<IElementType>*/types = new ArrayList/*<IElementType>*/(1); types.add(RoxgtElementTypes.Node_1001); NodeToolEntry entry = new NodeToolEntry( Messages.Node1CreationTool_title, Messages.Node1CreationTool_desc, types); entry.setSmallIcon(RoxgtElementTypes .getImageDescriptor(RoxgtElementTypes.Node_1001)); entry.setLargeIcon(entry.getSmallIcon()); return entry; } /** * @generated */ private ToolEntry createEdge2CreationTool() { List/*<IElementType>*/types = new ArrayList/*<IElementType>*/(1); types.add(RoxgtElementTypes.Edge_3001); LinkToolEntry entry = new LinkToolEntry( Messages.Edge2CreationTool_title, Messages.Edge2CreationTool_desc, types); entry.setSmallIcon(RoxgtElementTypes .getImageDescriptor(RoxgtElementTypes.Edge_3001)); entry.setLargeIcon(entry.getSmallIcon()); return entry; } /** * @generated */ private ToolEntry createProperty4CreationTool() { List/*<IElementType>*/types = new ArrayList/*<IElementType>*/(1); types.add(RoxgtElementTypes.Property_2001); NodeToolEntry entry = new NodeToolEntry( Messages.Property4CreationTool_title, Messages.Property4CreationTool_desc, types); entry.setSmallIcon(RoxgtElementTypes .getImageDescriptor(RoxgtElementTypes.Property_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; } } /** * @generated */ private static class LinkToolEntry extends ToolEntry { /** * @generated */ private final List relationshipTypes; /** * @generated */ private LinkToolEntry(String title, String description, List relationshipTypes) { super(title, description, null, null); this.relationshipTypes = relationshipTypes; } /** * @generated */ public Tool createTool() { Tool tool = new UnspecifiedTypeConnectionTool(relationshipTypes); tool.setProperties(getToolProperties()); return tool; } } }