org.openxava.annotations
Annotation Type RowStyle


@Retention(value=RUNTIME)
@Target(value={FIELD,METHOD})
public @interface RowStyle

For indicating the row style for Tabs and collections .

Example for Tab:

  @Tab(
    rowStyles=@RowStyle(style="highlight", property="type", value="steady")
  )
  public class Customer {
  ...
 
Example for Collection:
  @OneToMany(mappedBy="seller")
  @ListProperties("number, name, remarks, relationWithSeller, seller.level.description, type") 
  @RowStyle(style="highlight", property="type", value="steady") 
  private Collection customers;
 
In this case you are saying that the object which property type has the value steady will use the style highlight. The style has to be defined in the CSS stylesheet. The highlight style are already defined in OpenXava, but you can define more.
You can note as property 'type' is also listed in ListProperties, that is you must use properties displayed in User Interface.

Author:
Javier Paniza

Required Element Summary
 java.lang.String property
          Property to evaluate.
 java.lang.String style
          The name of the style to apply.
 java.lang.String value
          Value to compare with value property.
 
Optional Element Summary
 java.lang.String forViews
          List of comma separated view names where this annotation applies.
 java.lang.String notForViews
          List of comma separated view names where this annotation does not apply.
 

Element Detail

style

public abstract java.lang.String style
The name of the style to apply.

Must be a style defined in the CSS.


property

public abstract java.lang.String property
Property to evaluate.

If value of this 'property' is the one indicate in 'value', then the 'style' apply to this row.
This property must be present in User Interface.


value

public abstract java.lang.String value
Value to compare with value property.

If value of 'property' is the one indicate here, then the 'style' apply to this row.

forViews

public abstract java.lang.String forViews
List of comma separated view names where this annotation applies.

forViews has no effect when @RowStyle is used for Tabs. Exclusive with notForViews.
If both forViews and notForViews are omitted then this annotation apply to all views.
You can use the string "DEFAULT" for referencing to the default view (the view with no name).

Default:
""

notForViews

public abstract java.lang.String notForViews
List of comma separated view names where this annotation does not apply.

notforViews has no effect when @RowStyle is used for Tabs. Exclusive with forViews.
If both forViews and notForViews are omitted then this annotation apply to all views.
You can use the string "DEFAULT" for referencing to the default view (the view with no name).

Default:
""