@Override public void encodeChildren(FacesContext context, UIComponent component) throws IOException { // Make sure this component is a 'when' component FacesUtil.AssertValidParams(context, component, UIChooseWhenComponent.class); // Make sure the parent of this component is a 'choose' component FacesUtil.AssertValidParams(context, component.getParent(), UIChooseComponent.class); // If this component is not rendered skip all the logic if (!component.isRendered()) { return; } UIChooseWhenComponent condComp = (UIChooseWhenComponent) component; UIChooseComponent chooseComp = (UIChooseComponent) component.getParent(); // Render children only if a true condition hasn't already been // evaluated (assure mutual exclusion). // if ( chooseComp.isFoundTrue() ) // { // return; // } // Render children only if the specified condition doesn't hold. if (condComp.getTest()) { super.encodeChildren(context, component); // chooseComp.setFoundTrue( true ); } }
private void onPaint(PaintEvent e) { Color back = e.gc.getBackground(); Color fore = e.gc.getForeground(); strategy.paint(e.gc); e.gc.setBackground(back); e.gc.setForeground(fore); if (toggleRenderer != null) { toggleRenderer.setExpanded(expanded); toggleRenderer.setFocus(isFocusControl()); toggleRenderer.setHover(overToggle); toggleRenderer.paint(e.gc, this); } if (toolItemRenderer != null && toolitems.size() > 0) { paintToolItems(e.gc); } }