Files
HRMS/hrmsEjb/net/sf/jasperreports/engine/design/JRDesignElementGroup.java
2025-07-28 13:56:49 +05:30

63 lines
2.2 KiB
Java

package net.sf.jasperreports.engine.design;
import net.sf.jasperreports.engine.JRElementGroup;
import net.sf.jasperreports.engine.base.JRBaseElementGroup;
import net.sf.jasperreports.engine.design.events.JRChangeEventsSupport;
import net.sf.jasperreports.engine.design.events.JRPropertyChangeSupport;
public class JRDesignElementGroup extends JRBaseElementGroup implements JRChangeEventsSupport {
private static final long serialVersionUID = 10200L;
public static final String PROPERTY_ELEMENT_GROUP = "elementGroup";
public static final String PROPERTY_CHILDREN = "children";
private transient JRPropertyChangeSupport eventSupport;
public void setElementGroup(JRElementGroup elementGroup) {
Object old = this.elementGroup;
this.elementGroup = elementGroup;
getEventSupport().firePropertyChange("elementGroup", old, this.elementGroup);
}
public void addElement(JRDesignElement element) {
element.setElementGroup((JRElementGroup)this);
this.children.add(element);
getEventSupport().fireCollectionElementAddedEvent("children", element, this.children.size() - 1);
}
public JRDesignElement removeElement(JRDesignElement element) {
element.setElementGroup(null);
int idx = this.children.indexOf(element);
if (idx >= 0) {
this.children.remove(idx);
getEventSupport().fireCollectionElementRemovedEvent("children", element, idx);
}
return element;
}
public void addElementGroup(JRDesignElementGroup elemGrp) {
elemGrp.setElementGroup((JRElementGroup)this);
this.children.add(elemGrp);
getEventSupport().fireCollectionElementAddedEvent("children", elemGrp, this.children.size() - 1);
}
public JRDesignElementGroup removeElementGroup(JRDesignElementGroup elemGrp) {
elemGrp.setElementGroup((JRElementGroup)null);
int idx = this.children.indexOf(elemGrp);
if (idx >= 0) {
this.children.remove(idx);
getEventSupport().fireCollectionElementRemovedEvent("children", elemGrp, idx);
}
return elemGrp;
}
public JRPropertyChangeSupport getEventSupport() {
synchronized (this) {
if (this.eventSupport == null)
this.eventSupport = new JRPropertyChangeSupport(this);
}
return this.eventSupport;
}
}