blob: c9541079ec88aa5ac7a2d4fbef07b9a8380d5261 [file] [log] [blame]
//------------------------------------------------------------------------------
// Copyright (c) 2005, 2007 IBM Corporation and others.
// 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:
// IBM Corporation - initial implementation
//------------------------------------------------------------------------------
/*
* Copyright (c) 2005, 2006 IBM Corporation and others.
* 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:
* IBM Corporation - initial implementation
*
*/
package org.eclipse.epf.diagramming.part;
import java.util.List;
import org.eclipse.gef.Tool;
import org.eclipse.gef.palette.PaletteContainer;
import org.eclipse.gef.palette.PaletteRoot;
import org.eclipse.gef.palette.ToolEntry;
import org.eclipse.jface.resource.ImageDescriptor;
import java.util.ArrayList;
import org.eclipse.epf.diagram.core.DiagramCoreResources;
import org.eclipse.epf.diagram.core.bridge.BridgeHelper;
import org.eclipse.epf.diagramming.providers.UMLElementTypes;
import org.eclipse.gef.palette.PaletteDrawer;
import org.eclipse.gef.palette.PaletteSeparator;
import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeConnectionTool;
import org.eclipse.gmf.runtime.diagram.ui.tools.UnspecifiedTypeCreationTool;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
/**
* @generated
*/
public class UMLPaletteFactory {
/**
* @generated
*/
public void fillPalette(PaletteRoot paletteRoot) {
paletteRoot.add(createFlows1Group());
paletteRoot.add(createNodes2Group());
}
/**
* @modiifed
*/
private PaletteContainer createFlows1Group() {
PaletteContainer paletteContainer = new PaletteDrawer(DiagramCoreResources.ActivityDiagram_Palette_flows_title);
paletteContainer.setDescription(DiagramCoreResources.ActivityDiagram_Palette_flow_create_text);
paletteContainer.add(createControlFlow1CreationTool());
return paletteContainer;
}
/**
* @modiifed
*/
private PaletteContainer createNodes2Group() {
PaletteContainer paletteContainer = new PaletteDrawer(DiagramCoreResources.ActivityDiagram_Palette_nodes_ttiles);
paletteContainer.setDescription(DiagramCoreResources.ActivityDiagram_Palette_nodes_group_text);
paletteContainer.add(createActivityPartition1CreationTool());
paletteContainer.add(createStartNode2CreationTool());
paletteContainer.add(createForkNode3CreationTool());
paletteContainer.add(createMergeNode4CreationTool());
paletteContainer.add(createDecisionNode5CreationTool());
paletteContainer.add(createEndNode6CreationTool());
paletteContainer.add(createJoinNode7CreationTool());
paletteContainer.add(new PaletteSeparator());
paletteContainer.add(createActivity9CreationTool());
paletteContainer.add(createPhase10CreationTool());
paletteContainer.add(createIteration11CreationTool());
paletteContainer.add(createTaskDescriptor12CreationTool());
paletteContainer.add(createMilestone13CreationTool());
return paletteContainer;
}
/**
* @modiifed
*/
private ToolEntry createControlFlow1CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/ControlFlow.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> relationshipTypes = new ArrayList<IElementType>();
relationshipTypes.add(UMLElementTypes.ControlFlow_3001);
ToolEntry result = new LinkToolEntry(DiagramCoreResources.ActivityDiagram_Palette_control_flow_text,
DiagramCoreResources.ActivityDiagram_Palette_control_flow_create_text, smallImage, largeImage,
relationshipTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createActivityPartition1CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/ActivityPartition.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.ActivityPartition_1008);
elementTypes.add(UMLElementTypes.ActivityPartition_2001);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Partition_Node_text,
DiagramCoreResources.ActivityDiagram_Partition_Node_tooltip, smallImage, largeImage,
elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createStartNode2CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/InitialNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.InitialNode_1004);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_StartNode_text,
DiagramCoreResources.ActivityDiagram_StartNode_tooltip, smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createForkNode3CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/ForkNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.ForkNode_1003);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Fork_Node_text,
DiagramCoreResources.ActivityDiagram_Fork_Node_tooltip, smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createMergeNode4CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/MergeNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.MergeNode_1002);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Merge_Node_text,
DiagramCoreResources.ActivityDiagram_Merge_Node_tooltip, smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createDecisionNode5CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/DecisionNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.DecisionNode_1005);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_DecisionNode_text,
DiagramCoreResources.ActivityDiagram_DecisionNode_tooltip, smallImage, largeImage,
elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createEndNode6CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/ActivityFinalNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.ActivityFinalNode_1001);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_EndNode_text,
DiagramCoreResources.ActivityDiagram_EndNode_tooltip,
smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createJoinNode7CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/JoinNode.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.JoinNode_1006);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Join_Node_text,
DiagramCoreResources.ActivityDiagram_Join_Node_tooltip, smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createActivity9CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/Activity.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.StructuredActivityNode_1007);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Activity_text,
DiagramCoreResources.ActivityDiagram_Activity_tooltip,
smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createPhase10CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/Phase.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.StructuredActivityNode_1010);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Phase_text,
DiagramCoreResources.ActivityDiagram_Phase_tooltip,
smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createIteration11CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/Iteration.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.StructuredActivityNode_1011);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Iteration_text,
DiagramCoreResources.ActivityDiagram_Iteration_tooltip,
smallImage, largeImage, elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createTaskDescriptor12CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/TaskDescriptor.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.ActivityParameterNode_1009);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.AbstractDiagram_TaskDescriptor_text,
DiagramCoreResources.AbstractDiagram_TaskDescriptor_tooltip,
smallImage, largeImage,
elementTypes);
return result;
}
/**
* @modiifed
*/
private ToolEntry createMilestone13CreationTool() {
ImageDescriptor smallImage;
ImageDescriptor largeImage;
smallImage = EPFDiagramEditorPlugin
.findImageDescriptor("/org.eclipse.epf.diagramming/icons/full/obj16/Milestone.gif"); //$NON-NLS-1$
largeImage = smallImage;
final List<IElementType> elementTypes = new ArrayList<IElementType>();
elementTypes.add(UMLElementTypes.ActivityParameterNode_1012);
ToolEntry result = new NodeToolEntry(DiagramCoreResources.ActivityDiagram_Milestone_text,
DiagramCoreResources.ActivityDiagram_Milestone_tooltip,
smallImage, largeImage, elementTypes);
return result;
}
/**
* @generated
*/
private static class NodeToolEntry extends ToolEntry {
/**
* @generated
*/
private final List elementTypes;
/**
* @generated
*/
private NodeToolEntry(String title, String description,
ImageDescriptor smallIcon, ImageDescriptor largeIcon,
List elementTypes) {
super(title, description, smallIcon, largeIcon);
this.elementTypes = elementTypes;
}
/**
* @modified
*/
public Tool createTool() {
Tool tool = new UnspecifiedTypeCreationTool(elementTypes);
tool.setProperties(getToolProperties());
BridgeHelper.elementTypes.add((IElementType)elementTypes
.get(elementTypes.size() - 1));
return tool;
}
}
/**
* @generated
*/
private static class LinkToolEntry extends ToolEntry {
/**
* @generated
*/
private final List relationshipTypes;
/**
* @generated
*/
private LinkToolEntry(String title, String description,
ImageDescriptor smallIcon, ImageDescriptor largeIcon,
List relationshipTypes) {
super(title, description, smallIcon, largeIcon);
this.relationshipTypes = relationshipTypes;
}
/**
* @generated
*/
public Tool createTool() {
Tool tool = new UnspecifiedTypeConnectionTool(relationshipTypes);
tool.setProperties(getToolProperties());
return tool;
}
}
}