Package ej.mwt.style

Class EditableStyle

  • All Implemented Interfaces:
    Style

    public class EditableStyle
    extends java.lang.Object
    implements Style
    An editable style is a simple implementation of a style. It allows to set all the attributes of a style.
    • Field Detail

      • MAX_EXTRA_FIELDS

        public static final int MAX_EXTRA_FIELDS
        The maximum number of extra fields.
        See Also:
        Constant Field Values
    • Constructor Detail

      • EditableStyle

        public EditableStyle()
        Creates an editable style from the default style.
      • EditableStyle

        public EditableStyle​(EditableStyle style)
        Creates an editable style from an other one.
        Parameters:
        style - the editable style to copy.
    • Method Detail

      • getDimension

        public Dimension getDimension()
        Description copied from interface: Style
        Gets the dimension.
        Specified by:
        getDimension in interface Style
        Returns:
        the dimension.
      • getHorizontalAlignment

        public int getHorizontalAlignment()
        Description copied from interface: Style
        Gets the horizontal alignment.
        Specified by:
        getHorizontalAlignment in interface Style
        Returns:
        the horizontal alignment.
        See Also:
        Alignment
      • getVerticalAlignment

        public int getVerticalAlignment()
        Description copied from interface: Style
        Gets the vertical alignment.
        Specified by:
        getVerticalAlignment in interface Style
        Returns:
        the vertical alignment.
        See Also:
        Alignment
      • getMargin

        public Outline getMargin()
        Description copied from interface: Style
        Gets the margin.
        Specified by:
        getMargin in interface Style
        Returns:
        the margin.
      • getBorder

        public Outline getBorder()
        Description copied from interface: Style
        Gets the border.
        Specified by:
        getBorder in interface Style
        Returns:
        the border.
      • getPadding

        public Outline getPadding()
        Description copied from interface: Style
        Gets the padding.
        Specified by:
        getPadding in interface Style
        Returns:
        the padding.
      • getBackground

        public Background getBackground()
        Description copied from interface: Style
        Gets the background.
        Specified by:
        getBackground in interface Style
        Returns:
        the background.
      • getColor

        public int getColor()
        Description copied from interface: Style
        Gets the color.
        Specified by:
        getColor in interface Style
        Returns:
        the color.
      • getFont

        public ej.microui.display.Font getFont()
        Description copied from interface: Style
        Gets the font.
        Specified by:
        getFont in interface Style
        Returns:
        the font.
      • getExtraObject

        public <T> T getExtraObject​(int fieldId,
                                    java.lang.Class<T> clazz,
                                    T defaultValue)
        Description copied from interface: Style
        Gets an extra field as an object of the given type.
        Specified by:
        getExtraObject in interface Style
        Type Parameters:
        T - the type of the extra field.
        Parameters:
        fieldId - the ID of the extra field.
        clazz - the type of the extra field.
        defaultValue - the value to return if the extra field is not set or if it does not match the given type.
        Returns:
        the value of the extra field.
      • getExtraInt

        public int getExtraInt​(int fieldId,
                               int defaultValue)
        Description copied from interface: Style
        Gets an extra field as an int.
        Specified by:
        getExtraInt in interface Style
        Parameters:
        fieldId - the ID of the extra field.
        defaultValue - the value to return if the extra field is not set or if it is not an integer.
        Returns:
        the value of the extra field.
      • getExtraFloat

        public float getExtraFloat​(int fieldId,
                                   float defaultValue)
        Description copied from interface: Style
        Gets an extra field as a float.
        Specified by:
        getExtraFloat in interface Style
        Parameters:
        fieldId - the ID of the extra field.
        defaultValue - the value to return if the extra field is not set or if it is not a float.
        Returns:
        the value of the extra field.
      • setDimension

        public void setDimension​(Dimension dimension)
        Sets the dimension.
        Parameters:
        dimension - the dimension.
      • setHorizontalAlignment

        public void setHorizontalAlignment​(int horizontalAlignment)
        Sets the horizontal alignment. The horizontal alignment must be equal to one of the horizontal constants (Alignment.LEFT, Alignment.HCENTER or Alignment.RIGHT).
        Parameters:
        horizontalAlignment - the horizontal alignment.
        Throws:
        java.lang.IllegalArgumentException - if the horizontal alignment is not valid.
        See Also:
        Alignment.validateHorizontalAlignment(int)
      • setVerticalAlignment

        public void setVerticalAlignment​(int verticalAlignment)
        Sets the vertical alignment. The vertical alignment must be equal to one of the vertical constants (Alignment.TOP, Alignment.VCENTER or Alignment.BOTTOM).
        Parameters:
        verticalAlignment - the vertical alignment.
        Throws:
        java.lang.IllegalArgumentException - if the vertical alignment is not valid.
        See Also:
        Alignment.validateVerticalAlignment(int)
      • setMargin

        public void setMargin​(Outline margin)
        Sets the margin.
        Parameters:
        margin - the margin.
      • setBorder

        public void setBorder​(Outline border)
        Sets the border.
        Parameters:
        border - the border.
      • setPadding

        public void setPadding​(Outline padding)
        Sets the padding.
        Parameters:
        padding - the padding.
      • setBackground

        public void setBackground​(Background background)
        Sets the background.
        Parameters:
        background - the background.
      • setColor

        public void setColor​(int color)
        Sets the color.
        Parameters:
        color - the color.
      • setFont

        public void setFont​(ej.microui.display.Font font)
        Sets the font.
        Parameters:
        font - the font.
      • setExtraObject

        public void setExtraObject​(int fieldId,
                                   java.lang.Object fieldValue)
        Sets an extra field to the given object value.
        Parameters:
        fieldId - the ID of the extra field.
        fieldValue - the value of the extra field.
        Throws:
        java.lang.IllegalArgumentException - if the given ID is not within the [0, 6] interval.
      • setExtraInt

        public void setExtraInt​(int fieldId,
                                int fieldValue)
        Sets an extra field to the given int value.
        Parameters:
        fieldId - the ID of the extra field.
        fieldValue - the value of the extra field.
        Throws:
        java.lang.IllegalArgumentException - if the given ID is not within the [0, 6] interval.
      • setExtraFloat

        public void setExtraFloat​(int fieldId,
                                  float fieldValue)
        Sets an extra field to the given float value.
        Parameters:
        fieldId - the ID of the extra field.
        fieldValue - the value of the extra field.
        Throws:
        java.lang.IllegalArgumentException - if the given ID is not within the [0, 6] interval.
      • validateExtraFieldId

        protected static void validateExtraFieldId​(int fieldId)
        Validates that the extra field ID is correct.
        Parameters:
        fieldId - the ID to validate.
        Throws:
        java.lang.IllegalArgumentException - if the given ID is not within the [0, 6] interval.
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object obj)
        Description copied from class: java.lang.Object
        Indicates whether some other object is "equal to" this one.

        The equals method implements an equivalence relation on non-null object references:

        • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
        • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
        • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
        • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
        • For any non-null reference value x, x.equals(null) should return false.

        The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

        Note that it is generally necessary to override the hashCode method whenever this method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.

        Specified by:
        equals in interface Style
        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - the reference object with which to compare.
        Returns:
        true if this object is the same as the obj argument; false otherwise.
        See Also:
        Object.hashCode(), HashMap
      • hashCode

        public int hashCode()
        Description copied from class: java.lang.Object
        Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by HashMap.

        The general contract of hashCode is:

        • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
        • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
        • It is not required that if two objects are unequal according to the Object.equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

        As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)

        Specified by:
        hashCode in interface Style
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        a hash code value for this object.
        See Also:
        Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)