Class TabGraphAxesTransform

  • All Implemented Interfaces:
    AppTransform, LayoutTransform, Transform

    public class TabGraphAxesTransform
    extends AbstractTabTransform
    implements LayoutTransform

    This class transforms a TabBean allowing users to modify axis properties (like max/min values) of a graph. As with other tab transforms, this one assumes its TabManagerBean will take care of rendering the required HTML & Javascript allowing users to switch between different formatting TabBean instances.

    The axis list is specified through the axisList Formal Parameter. For each axis, the renderAxisInformation(com.microstrategy.web.beans.MarkupOutput, java.lang.Integer) method is called. This method receives an axisId which is an integer value. Valid values are those from the EnumDSSXMLGraphAttributeID enumeration.

    Before we start generating output for each axis, the method checks whether the axis is available for the current major graph type, if it is not, nothing is rendered for that axis.

    This Transform implements LayoutTransform, therefore its render methods can be invoked using a custom layout-xml. When this is the case, the layout-xml specified in the style-catalog controls which methods are called and in which order. Otherwise, the default output of this transform is divided as follows:
         Contents / ContentsBody
         -----------------------------------------------------
         |    AxisInformation (1)                            |
         -----------------------------------------------------
         |                                                   |
         |      Manual Axis Settings (if applicable)         |
         |                                                   |
         -----------------------------------------------------
         |    AxisInformation (2)                            |
         -----------------------------------------------------
         |                                                   |
         |      Manual Axis Settings (if applicable)         |
         |                                                   |
         - - - - - - - - - - - - - - - - - - - - - - - - - - -
         |  ...                                              |
         |                                                   |
         - - - - - - - - - - - - - - - - - - - - - - - - - - -
     
    Since:
    MicroStrategy Web 8.0.0
    • Field Detail

      • axisList

        public FormalParameter axisList
        Indicates which axes that will be rendered by this format tab as options, as long as the current graph major type supports them.
        Value is a series of attribute identifiers (from EnumDSSXMLGraphAttributeID) of their show property, separated by comma.
      • FP_AXIS_LIST

        public static final java.lang.String FP_AXIS_LIST
        Constant specifying the name of the formal parameter for defining the list of axes that will be rendered by this transform as possible format options. Value is axisList.
        See Also:
        Constant Field Values
    • Constructor Detail

      • TabGraphAxesTransform

        public TabGraphAxesTransform()
        Default no-argument constructor. Initializes formal parameters.
    • Method Detail

      • renderContentsBody

        public void renderContentsBody​(MarkupOutput out)

        This is the entry point for the Tranform, and generates the body of the Tab.

        If a layout-xml is specified, this method will delegate the output generation to the Layout parser, otherwise it calls renderAxisInformation() for each axis in returned by the getAxes list.

        Specified by:
        renderContentsBody in class AbstractTabTransform
        Parameters:
        out - MarkupOutput instance where the HTML contents to render will be saved.
      • renderAxisInformation

        public void renderAxisInformation​(MarkupOutput out,
                                          java.lang.Integer showAxisId)

        Method that renders the available settings for a given axis, rendering its show check box as well as manual formatting settings if applicable.

        Axis id valid values are those from the EnumDSSXMLGraphAttributeID enumeration.

        Parameters:
        out - MarkupOutput instance where the HTML contents to render will be saved.
        showAxisId - axis id.
      • renderJavascriptLinks

        public void renderJavascriptLinks​(MarkupOutput out)
        Render any JavaScript information required for this tab to work correctly on client side.
        Overrides:
        renderJavascriptLinks in class AbstractTabTransform
        Parameters:
        out - MarkupOutput instance where the HTML contents to render will be saved.
      • initializeCss

        public void initializeCss()
        Initializes the Css Classes to use. For each one of the css classes to use, the prefix indicated on the formal parameter is added to the name of the class to use.
        Overrides:
        initializeCss in class AbstractTabTransform
      • initializeJavaScriptAttributes

        public void initializeJavaScriptAttributes()
        For JavaScript, certain properties are required to be added to the HTML tags to generate for its integration with the code generated for the feature to work in DHTML environments. This method assigns values to these attributes, so they can be displayed together with the tags they represent. If a value is set to be null, it won't be included on the HTML tag definition. By default, it includes the definition of values for properties such as styFrame, tyFrame and scriptClassFrame.
        Overrides:
        initializeJavaScriptAttributes in class AbstractTabTransform
      • getAxes

        public java.util.List getAxes()
        The List of axes to generate settings for. This list is set through the axisList formal parameter. The axis are saved in the list as Integer.
        Returns:
        an Integer list with the axes to generate properties for.