boolean somethingSticks = false;
final ReportState state = event.getState();
if (state.isInItemGroup())
{
final DetailsFooter detailsFooter = report.getDetailsFooter();
if (detailsFooter.isRepeat())
{
print(getRuntime(), detailsFooter);
somethingSticks = detailsFooter.isSticky();
}
}
/**
* Repeating group header are only printed while ItemElements are
* processed.
*/
final int groupsPrinted = state.getCurrentGroupIndex();
for (int gidx = groupsPrinted; gidx >= 0; gidx -= 1)
{
final Group g = report.getGroup(gidx);
final GroupFooter footer = g.getFooter();
if (footer.isRepeat())
{
print(getRuntime(), footer);
somethingSticks |= footer.isSticky();
}
}
final LayouterLevel[] levels = DefaultOutputFunction.collectSubReportStates(event.getState(), getRuntime().getProcessingContext());
final int levelCount = levels.length;
for (int i = 0; i < levelCount; i++)
{
final LayouterLevel level = levels[i];
final ReportDefinition def = level.getReportDefinition();
if (level.isInItemGroup())
{
final DetailsFooter subDetailsFooter = report.getDetailsFooter();
if (subDetailsFooter.isSticky())
{
if (subDetailsFooter.isRepeat())
{
print(level.getRuntime(), subDetailsFooter);
}
else
{