All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.yaoqiang.bpmn.editor.dialog.panels.InterfaceRefPanel Maven / Gradle / Ivy

package org.yaoqiang.bpmn.editor.dialog.panels;

import java.util.List;

import org.yaoqiang.bpmn.editor.dialog.XMLComboPanel;
import org.yaoqiang.bpmn.editor.dialog.BPMNPanelContainer;
import org.yaoqiang.bpmn.editor.dialog.XMLPanel;
import org.yaoqiang.bpmn.model.BPMNModelUtils;
import org.yaoqiang.bpmn.model.elements.XMLElement;
import org.yaoqiang.bpmn.model.elements.XMLTextElement;
import org.yaoqiang.bpmn.model.elements.collaboration.Participant;

/**
 * InterfaceRefPanel
 * 
 * @author Shi Yaoqiang([email protected])
 */
public class InterfaceRefPanel extends XMLPanel {

	private static final long serialVersionUID = 1L;

	protected XMLComboPanel interfacePanel;

	public InterfaceRefPanel(BPMNPanelContainer pc, XMLTextElement owner) {
		super(pc, owner);
		XMLElement chn = BPMNModelUtils.getDefinitions(owner).getInterface(owner.toValue());
		List choices = BPMNModelUtils.getDefinitions(owner).getInterfaces();
		List refList = ((Participant) owner.getParent().getParent()).getRefInterfaceList();
		choices.removeAll(refList);
		if (refList.contains(chn)) {
			choices.add(chn);
		}
		interfacePanel = new XMLComboPanel(pc, owner, null, choices, false, false, true);
		this.add(interfacePanel);
	}

	public void saveObjects() {
		interfacePanel.saveObjects();
		if (!interfacePanel.isEmpty()) {
			super.saveObjects();
		}
	}

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy