示例#1
0
 /**
  * @param a
  * @param valueButton
  * @param valueListener if a null or empty -> the listener is not created
  * @param isValueBinding a true if valueButton and / or valueListener are valueBinding
  * @param methodForButton
  * @param methodForListener if a null or empty -> the listener is not created
  * @param styleClassForLi
  * @return HtmlTag : LI including (or not) a command Button with his Listener.
  */
 @SuppressWarnings("unchecked")
 private HtmlTag makeLiGroup(
     final Application a,
     final String valueButton,
     final String valueListener,
     final boolean isValueBinding,
     final String methodForButton,
     final String methodForListener,
     final String styleClassForLi) {
   HtmlTag li = (HtmlTag) a.createComponent(HtmlTag.COMPONENT_TYPE);
   li.setValue(HTML.LI_ELEM);
   if (StringUtils.hasText(styleClassForLi)) {
     li.setStyleClass(styleClassForLi);
   }
   HtmlCommandButton command =
       (HtmlCommandButton) a.createComponent(HtmlCommandButton.COMPONENT_TYPE);
   command.setImmediate(true);
   command.setParent(li);
   MethodBinding m =
       a.createMethodBinding(
           TagUtils.makeELExpression(getPaginatorELExpression() + "." + methodForButton), null);
   command.setAction(m);
   if (isValueBinding) {
     command.setValueBinding(
         JSFAttr.VALUE_ATTR, a.createValueBinding(TagUtils.makeELExpression(valueButton)));
   } else {
     command.setValue(valueButton);
   }
   if (StringUtils.hasText(methodForListener) && StringUtils.hasText(valueListener)) {
     UpdateActionListener listener = new UpdateActionListener();
     if (isValueBinding) {
       listener.setValueBinding(
           a.createValueBinding(
               TagUtils.makeELExpression(getPaginatorELExpression() + "." + valueListener)));
     } else {
       listener.setValue(valueListener);
     }
     listener.setPropertyBinding(
         a.createValueBinding(
             TagUtils.makeELExpression(getPaginatorELExpression() + "." + methodForListener)));
     command.addActionListener(listener);
   }
   li.getChildren().add(command);
   return li;
 }
示例#2
0
  /**
   * @param a
   * @return HtmlTag : LI tag containing the text separator (3 small points).
   */
  @SuppressWarnings("unchecked")
  private HtmlTag makeLiText(final Application a) {
    HtmlTag liText = (HtmlTag) a.createComponent(HtmlTag.COMPONENT_TYPE);
    liText.setValue(HTML.LI_ELEM);
    liText.setStyle("border:none;background-color:transparent;");

    HtmlOutputText text = (HtmlOutputText) a.createComponent(HtmlOutputText.COMPONENT_TYPE);
    text.setValueBinding(
        JSFAttr.VALUE_ATTR,
        a.createValueBinding(
            TagUtils.makeELExpression(getStringsVar() + "['" + TEXT_SEPARATOR_I18N_KEY + "']")));
    text.setParent(liText);
    text.setStyleClass(TagsConfigurator.getInstance().getTextStyleClass());

    liText.getChildren().add(text);

    return liText;
  }