/**
  * This methods generates the HTML code of the current b:buttonToolbar. <code>encodeBegin</code>
  * generates the start of the component. After the, the JSF framework calls <code>encodeChildren()
  * </code> to generate the HTML code between the beginning and the end of the component. For
  * instance, in the case of a panel component the content of the panel is generated by <code>
  * encodeChildren()</code>. After that, <code>encodeEnd()</code> is called to generate the rest of
  * the HTML code.
  *
  * @param context the FacesContext.
  * @param component the current b:buttonToolbar.
  * @throws IOException thrown if something goes wrong when writing the HTML code.
  */
 @Override
 public void encodeEnd(FacesContext context, UIComponent component) throws IOException {
   if (!component.isRendered()) {
     return;
   }
   ButtonToolbar buttonToolbar = (ButtonToolbar) component;
   ResponseWriter rw = context.getResponseWriter();
   String clientId = buttonToolbar.getClientId();
   rw.endElement("buttonToolbar");
   Tooltip.activateTooltips(fc, c.getAttributes(), c);
 }
示例#2
0
 protected List getRenderedChildColumnsList(UIComponent component) {
   List results = new ArrayList();
   Iterator kids = component.getChildren().iterator();
   while (kids.hasNext()) {
     UIComponent kid = (UIComponent) kids.next();
     if ((kid instanceof UIColumn) && kid.isRendered()) {
       results.add(kid);
     } else if (kid instanceof UIColumns) {
       results.add(kid);
     }
   }
   return results;
 }
示例#3
0
  protected void processColumn(
      FacesContext fc,
      OutputTypeHandler outputHandler,
      UIComponent uiColumn,
      int colIndex,
      int countOfRowsDisplayed) {
    StringBuffer stringOutput = new StringBuffer();

    Iterator childrenOfThisColumn = uiColumn.getChildren().iterator();
    while (childrenOfThisColumn.hasNext()) {

      UIComponent nextChild = (UIComponent) childrenOfThisColumn.next();
      if (nextChild.isRendered() && !(nextChild instanceof RowSelector)) {
        stringOutput.append(encodeParentAndChildrenAsString(fc, nextChild));
        // a blank to separate
        if (childrenOfThisColumn.hasNext()) {
          stringOutput.append(' ');
        }
      }
    }
    outputHandler.writeCell(stringOutput.toString(), colIndex, countOfRowsDisplayed);
  }
  /**
   * This methods generates the HTML code of the current b:buttonToolbar. <code>encodeBegin</code>
   * generates the start of the component. After the, the JSF framework calls <code>encodeChildren()
   * </code> to generate the HTML code between the beginning and the end of the component. For
   * instance, in the case of a panel component the content of the panel is generated by <code>
   * encodeChildren()</code>. After that, <code>encodeEnd()</code> is called to generate the rest of
   * the HTML code.
   *
   * @param context the FacesContext.
   * @param component the current b:buttonToolbar.
   * @throws IOException thrown if something goes wrong when writing the HTML code.
   */
  @Override
  public void encodeBegin(FacesContext context, UIComponent component) throws IOException {
    if (!component.isRendered()) {
      return;
    }
    ButtonToolbar buttonToolbar = (ButtonToolbar) component;
    ResponseWriter rw = context.getResponseWriter();
    String clientId = buttonToolbar.getClientId();

    // put custom code here
    // Simple demo widget that simply renders every attribute value
    rw.startElement("buttonToolbar", buttonToolbar);
    Tooltip.generateTooltip(context, buttonToolbar, rw);

    rw.writeAttribute("binding", buttonToolbar.getBinding(), "binding");
    rw.writeAttribute("id", buttonToolbar.getId(), "id");
    rw.writeAttribute("rendered", String.valueOf(buttonToolbar.isRendered()), "rendered");
    rw.writeAttribute("tooltip", buttonToolbar.getTooltip(), "tooltip");
    rw.writeAttribute("tooltipDelay", buttonToolbar.getTooltipDelay(), "tooltipDelay");
    rw.writeAttribute("tooltipDelayHide", buttonToolbar.getTooltipDelayHide(), "tooltipDelayHide");
    rw.writeAttribute("tooltipDelayShow", buttonToolbar.getTooltipDelayShow(), "tooltipDelayShow");
    rw.writeAttribute("tooltipPosition", buttonToolbar.getTooltipPosition(), "tooltipPosition");
    rw.writeText("Dummy content of b:buttonToolbar", null);
  }