{
throw new IllegalStateException();
}
boolean isPrintableContent = true;
final ReportElement text = (ReportElement) getNode();
// Tests we have to perform:
// 1. Print when group changes. We can know whether a group changed by
// looking at the newly introduced iteration counter.
//
// Whether we use the next one or the one after that depends on whether
// this element is a child of a group-header or group-footer.
// 2. Print repeated values. This never applies to static text or static
// elements.
if ((text.isPrintWhenGroupChanges() && !isGroupChanged()) || (!text.isPrintRepeatedValues() && !isValueChanged()))
{
// if this is set to true, then we print the element only if this is the
// first occurrence in this group.
// or
// If this is set to true, we evaluate the formula of the element and
// try to derive whether there was a change.
isPrintableContent = false;
}
// 3. Evaluate the Display Condition
final Expression dc = text.getDisplayCondition();
if (dc != null)
{
final Object o = LayoutControllerUtil.evaluateExpression(getFlowController(), text, dc);
if (Boolean.FALSE.equals(o))
{