}
if (flavor [i].equals(ModelerFlavors.PARAM_FIGURE))
{
final ParamFigure paramFigure = (ParamFigure) ie.getSafeTransferData(flavor [i]);
final NodeParam nodeParam = paramFigure.getNodeParam();
SocketFigure socketFigure = (SocketFigure) paramFigure.getParent();
// Add the 'Parameter visibility' sub menu for all parameters of the socket if appropriate
ParamVisibilityHelper.addParamMenu(ie, modeler, socketFigure);
// 'Parameter Value Wizard' popup
final NodeFigure nodeFigure = (NodeFigure) socketFigure.getParent();
if (ParamValueWizard.isParameterValueWizardApplyable(modeler, nodeFigure, nodeParam.getSocket().getName()))
{
JaspiraAction wizardGroup = new JaspiraAction("popupwizard", null, null, null, null, 2, JaspiraAction.TYPE_GROUP);
wizardGroup.addMenuChild(new JaspiraAction(modeler, "modeler.edit.paramvaluewizard")
{
public void actionPerformed(ActionEvent e)
{
// Display parameter value wizard if appropriate
ParamValueWizard.displayParameterValueWizard(modeler, nodeFigure, nodeParam.getSocket().getName(), nodeParam.getName());
}
});
ie.add(wizardGroup);
}
// 'Create identical process variable' popup
String paramName = nodeParam.getName();
if (nodeParam.getProcess().getProcessVariableByName(paramName) == null)
{
JaspiraAction wizardGroup = new JaspiraAction("processvargroup", null, null, null, null, 2, JaspiraAction.TYPE_GROUP);
wizardGroup.addMenuChild(new JaspiraAction(modeler, "modeler.edit.createprocessvarfromparam")
{