blob: 6b0fb6775ec5cec92465d249db281bff68014f65 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2008, 2012 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 API and implementation
*******************************************************************************/
package org.eclipse.bpel.ui.palette;
import org.eclipse.bpel.common.ui.CommonUIPlugin;
import org.eclipse.bpel.common.ui.ICommonUIConstants;
import org.eclipse.bpel.common.ui.palette.IPaletteProvider;
import org.eclipse.bpel.common.ui.palette.OrderedPaletteGroup;
import org.eclipse.bpel.common.ui.palette.PaletteCategory;
import org.eclipse.bpel.model.BPELPackage;
import org.eclipse.bpel.model.terms.BPELTerms;
import org.eclipse.bpel.ui.Messages;
import org.eclipse.bpel.ui.factories.UIObjectFactoryProvider;
import org.eclipse.bpel.ui.util.BPELCreationToolEntry;
import org.eclipse.bpel.ui.util.ZoominToolEntry;
import org.eclipse.bpel.ui.util.ZoomoutToolEntry;
import org.eclipse.gef.palette.MarqueeToolEntry;
import org.eclipse.gef.palette.PaletteContainer;
import org.eclipse.gef.palette.PaletteRoot;
import org.eclipse.gef.palette.PaletteSeparator;
import org.eclipse.gef.palette.SelectionToolEntry;
/**
* Palette Factory ...
*
* @author Michal Chmielewski (michal.chmielewski@oracle.com)
* @date May 21, 2007
*/
@SuppressWarnings("nls")
public class PaletteFactory implements IPaletteProvider {
/**
* Brand new shiny palette factory
*/
public PaletteFactory() {
}
/**
* (non-Javadoc)
*
* @see org.eclipse.bpel.common.ui.palette.IPaletteProvider#contributeItems(org.eclipse.gef.palette.PaletteRoot)
*/
public void contributeItems(PaletteRoot paletteRoot) {
createTopControlPaletteEntries(paletteRoot);
createBPELPaletteEntries(paletteRoot);
createBottomControlPaletteEntries(paletteRoot);
}
void createBPELPaletteEntries(PaletteContainer palette) {
BPELPackage bpelPackage = BPELPackage.eINSTANCE;
UIObjectFactoryProvider provider = UIObjectFactoryProvider
.getInstance();
PaletteCategory basicActionsCategory = new PaletteCategory(Messages.PaletteFactory_Actions);
basicActionsCategory.setOrder(10);
basicActionsCategory.setCategoryId("bpel.actions"); //$NON-NLS-1$
String term = BPELTerms.getString(Messages.PaletteFactory_Empty);
basicActionsCategory.add(new BPELCreationToolEntry(term, term, provider
.getFactoryFor(bpelPackage.getEmpty())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Invoke_35, Messages.BPELEditor_Invoke_36,
provider.getFactoryFor(bpelPackage.getInvoke())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Receive_4, Messages.BPELEditor_Receive_5,
provider.getFactoryFor(bpelPackage.getReceive())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Reply_6, Messages.BPELEditor_Reply_7,
provider.getFactoryFor(bpelPackage.getReply())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_OpaqueActivity_1,Messages.BPELEditor_OpaqueActivity_2,
provider.getFactoryFor(bpelPackage.getOpaqueActivity())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Assign_10, Messages.BPELEditor_Assign_11,
provider.getFactoryFor(bpelPackage.getAssign())));
basicActionsCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Validate_XML_12,
Messages.BPELEditor_Validate_XML_13, provider
.getFactoryFor(bpelPackage.getValidate())));
palette.add(basicActionsCategory);
PaletteCategory controlCategory = new PaletteCategory(Messages.PaletteFactory_Control);
controlCategory.setOrder(20);
controlCategory.setCategoryId("bpel.control"); //$NON-NLS-1$
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_If_17, Messages.BPELEditor_If_18, provider
.getFactoryFor(bpelPackage.getIf())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Pick_8, Messages.BPELEditor_Pick_9,
provider.getFactoryFor(bpelPackage.getPick())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_While_19, Messages.BPELEditor_While_20,
provider.getFactoryFor(bpelPackage.getWhile())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_ForEach_19, Messages.BPELEditor_ForEach_20,
provider.getFactoryFor(bpelPackage.getForEach())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Repeat_Until_42,
Messages.BPELEditor_Repeat_Until_43, provider
.getFactoryFor(bpelPackage.getRepeatUntil())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Wait_21, Messages.BPELEditor_Wait_22,
provider.getFactoryFor(bpelPackage.getWait())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Sequence_23,
Messages.BPELEditor_Sequence_24, provider
.getFactoryFor(bpelPackage.getSequence())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Scope_1, Messages.BPELEditor_Scope_2,
provider.getFactoryFor(bpelPackage.getScope())));
controlCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Flow_1, Messages.BPELEditor_Flow_2,
provider.getFactoryFor(bpelPackage.getFlow())));
palette.add(controlCategory);
PaletteCategory faultCategory = new PaletteCategory(Messages.PaletteFactory_Faults);
faultCategory.setOrder(30);
faultCategory.setCategoryId("bpel.faults"); //$NON-NLS-1$
faultCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Exit_26, Messages.BPELEditor_Exit_27,
provider.getFactoryFor(bpelPackage.getExit())));
faultCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Throw_28, Messages.BPELEditor_Throw_29,
provider.getFactoryFor(bpelPackage.getThrow())));
faultCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_ReThrow_1, Messages.BPELEditor_ReThrow_2,
provider.getFactoryFor(bpelPackage.getRethrow())));
faultCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_Compensate_1,
Messages.BPELEditor_Compensate_2, provider
.getFactoryFor(bpelPackage.getCompensate())));
faultCategory.add(new BPELCreationToolEntry(
Messages.BPELEditor_CompensateScope_1,
Messages.BPELEditor_CompensateScope_2, provider
.getFactoryFor(bpelPackage.getCompensateScope())));
palette.add(faultCategory);
}
void createTopControlPaletteEntries(PaletteRoot root) {
OrderedPaletteGroup controlGroup = new OrderedPaletteGroup(
Messages.BPELEditor_Top_Control_Group_37);
controlGroup.setOrder(5);
controlGroup.setCategoryId("bpel.top.control"); //$NON-NLS-1$
SelectionToolEntry selectionTool = new SelectionToolEntry(
Messages.BPELEditor_Selection_Tool_38);
controlGroup.add(selectionTool);
MarqueeToolEntry marqueeTool = new MarqueeToolEntry(
Messages.BPELEditor_Marquee_Tool);
controlGroup.add(marqueeTool);
root.add(controlGroup);
root.setDefaultEntry(selectionTool);
}
void createBottomControlPaletteEntries(PaletteContainer palette) {
PaletteSeparator separator = new PaletteSeparator("separator"); //$NON-NLS-1$
palette.add(separator);
OrderedPaletteGroup controlGroup = new OrderedPaletteGroup(
Messages.BPELEditor_Bottom_Control_Group_39);
controlGroup.setOrder(200);
controlGroup.setCategoryId("bpel.bottom.control"); //$NON-NLS-1$
ZoominToolEntry zoomIn = new ZoominToolEntry(
Messages.BPELEditor_Zoom_In_40);
zoomIn.setSmallIcon(CommonUIPlugin.getDefault().getImageRegistry()
.getDescriptor(ICommonUIConstants.ICON_ZOOM_IN_TOOL));
controlGroup.add(zoomIn);
ZoomoutToolEntry zoomOut = new ZoomoutToolEntry(
Messages.BPELEditor_Zoom_Out_41);
zoomOut.setSmallIcon(CommonUIPlugin.getDefault().getImageRegistry()
.getDescriptor(ICommonUIConstants.ICON_ZOOM_OUT_TOOL));
controlGroup.add(zoomOut);
palette.add(controlGroup);
}
}