private void paintTableActions ( final WTable table , final WebXmlRenderContext renderContext ) { XmlStringBuilder xml = renderContext . getWriter ( ) ; List < WButton > tableActions = table . getActions ( ) ; if ( ! tableActions . isEmpty ( ) ) { boolean hasActions = false ; for ( WButton button : tableActions ) { if ( ! button . isVisible ( ) ) { continue ; } if ( ! hasActions ) { hasActions = true ; xml . appendTag ( "ui:actions" ) ; } xml . appendTag ( "ui:action" ) ; List < WTable . ActionConstraint > constraints = table . getActionConstraints ( button ) ; if ( constraints != null ) { for ( WTable . ActionConstraint constraint : constraints ) { int minRows = constraint . getMinSelectedRowCount ( ) ; int maxRows = constraint . getMaxSelectedRowCount ( ) ; String message = constraint . getMessage ( ) ; String type = constraint . isError ( ) ? "error" : "warning" ; xml . appendTagOpen ( "ui:condition" ) ; xml . appendOptionalAttribute ( "minSelectedRows" , minRows > 0 , minRows ) ; xml . appendOptionalAttribute ( "maxSelectedRows" , maxRows > 0 , maxRows ) ; xml . appendAttribute ( "selectedOnOther" , this . selectedOnOther ) ; xml . appendAttribute ( "type" , type ) ; xml . appendAttribute ( "message" , I18nUtilities . format ( null , message ) ) ; xml . appendEnd ( ) ; } } button . paint ( renderContext ) ; xml . appendEndTag ( "ui:action" ) ; } if ( hasActions ) { xml . appendEndTag ( "ui:actions" ) ; } } }
Paints the table actions of the table .