<@doc alias="port" hierarchy="GMLDOM"> Represents an inbound or outbound component interface. Infoshape Class (c) SAP AG 2003-2006. All rights reserved. /////////////////////////////////////////////////////////////////////// // CLASS HEADER Class DataPort inherit Port metadata title = '#TEXT[XTIT_DATA_PORT]'; metadata descr = '#TEXT[XTOL_DATA_PORT]'; /////////////////////////////////////////////////////////////////////// // METHODS override method notifyOnInfoshapeChange(changeType, changeData) this.supercall(); var usages = this.unit && this.unit.getUsages() || null; for( var i in usages) { var obj = usages[i] //get plug on usage, matching this port var plug = obj.getPlugByPort(this); if (plug) { var links = obj.getLinksByPlug(plug); for (var l in links) links[l].notifyOnInfoshapeChange(changeType, changeData); } } end override method onClone(elementsMap, parent, force) //debugger; //first to the default cloning var copy = this.supercall(); //default cloning leaves the port points to an existing RefInfoshape. // now create a new, empty ref infoshape for the cloned port //later - when links link the port to other elements, they will be influences as well. copy.createInfoshape(null); //create an empty ref var ref = copy.getInfoshape(); if (!ref) return; var this_bo = this.getInfoshape().getBOInfoshape(); if (this_bo) ref.setBOInfoshape(this_bo); return copy; end listen onShapeMenu for gml:DataPort menu.append(); menu.append({button:'#NS[OPEN_FIELDS_EDITOR]'}); end