Class TabManagerTransform

  • All Implemented Interfaces:
    AppTransform, LayoutTransform, Transform
    Direct Known Subclasses:
    AccordionTabManagerTransform, DerivedElementFormatEditorTransform, FormatEditorTabManagerTransform, HelpOnCBTabManagerTransform, ObjectBrowserManagerTransform, SubtotalsEditorTabManagerTransform, ThresholdsFormatEditorTransform, TreeTabManagerTransform

    public class TabManagerTransform
    extends AbstractEditorTransform
    implements LayoutTransform
    This transform can be used as base for the transforms that will take care of rendering TabManagerBean instances. It considers the final output to be divided in these sections:

        TabManagerFrame / TabManagerFrameBody
         -------------------------------------
         |  Title / TitleBody                |
         -------------------------------------
         |  ControlBar / ControlBarBody      |
         |-----------------------------------|
         |  Contents / ContentsBody          |
         |                                   |
         |                                   |
         |                                   |
         |                                   |
         -------------------------------------
     
    Therefore, there will exist the following methods for defining each one of the HTML contents of the sections:
     renderTabManagerFrame
      - renderTabManagerFrameBody
        + renderTabManagerTitle
          = renderTabManagerTitleBody
        + renderTabManagerContents
          = renderTabManagerContentsBody
            > renderTabManagerControlBar
              * renderTabManagerControlBarBody
            > renderTabManagerTabContainer
              * renderTabManagerTabContainerBody
     
    The methods like renderTabManagerFrame, renderContents, etc take care of generating the HTML that will serve as a container or frame of the body of these different sections (for keeping formatting on the contents to display) then, they call their respective Body methods for obtaining the HTML that will be the most visible to the user.
    These methods can be customized in children transforms or with formal parameters for achieving the desired results.
    Since:
    MicroStrategy Web 8.0.0
    • Field Detail

      • tabHeight

        public FormalParameter tabHeight
        Indicates the height of the tabs on the editor.
      • autoSubmitJS

        public FormalParameter autoSubmitJS
        Indicates the script to invoke when editor need to submit changes automatically.
        Since:
        MicroStrategy Web 9.0.0
      • primaryBone

        public FormalParameter primaryBone
        Inidicates wehther the eidtor is going to be primary bone or not
        Since:
        MicroStrategy Web 9.0.0
      • ignoreSingleTab

        public FormalParameter ignoreSingleTab
        Indicates whether to render a single tab or not
        Since:
        MicroStrategy Web 9.0.0
      • hideUnavailable

        public FormalParameter hideUnavailable
        Determine whether not available tabs should be hidden. Default to false.
        Since:
        MicroStrategy Web 9.0.0
      • FP_TAB_HEIGHT

        public static final java.lang.String FP_TAB_HEIGHT
        Constant specifying the name of the formal parameter for specifying the height of the tabs on the editor
        See Also:
        Constant Field Values
      • FP_AUTO_SUBMIT_JS

        public static final java.lang.String FP_AUTO_SUBMIT_JS
        Constant specifying the script to invoke when editor need to submit changes automatically.
        Since:
        MicroStrategy Web 9.0.0
        See Also:
        Constant Field Values
      • FP_PRIMARY_BONE

        public static final java.lang.String FP_PRIMARY_BONE
        Constant specifying the name of the primpary bone property.
        Since:
        MicroStrategy Web 9.0.0
        See Also:
        Constant Field Values
      • FP_IGNORE_SINGLE_TAB

        public static final java.lang.String FP_IGNORE_SINGLE_TAB
        constant specifying the name of the render single tab property.
        Since:
        MicroStrategy Web 9.0.0
        See Also:
        Constant Field Values
      • FP_HIDE_UNAVAILABLE

        public static final java.lang.String FP_HIDE_UNAVAILABLE
        Used by formal parameter hideUnavailable.
        Since:
        MicroStrategy Web 9.0.0
        See Also:
        Constant Field Values
    • Constructor Detail

      • TabManagerTransform

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

      • renderJavascript

        protected void renderJavascript​(MarkupOutput out)
        Generate the JavaScript code required by this editor manager for the proper behavior on the client. Extends the parent method by adding extra property values as well as the required library for it to work properly.
        Overrides:
        renderJavascript in class AbstractEditorTransform
        Parameters:
        out - MarkupOutput instance where the HTML output will be saved.
      • renderControlBar

        public void renderControlBar​(MarkupOutput out)
        Renders the tab control HTML for being able to switch from one TabBean child tab to another. Generates an HTML table for holding the different TabBean titles of the tabs that are available for this TabManagerBean instance. Calls renderTabManagerControlBarBody
        Parameters:
        out - MarkupOutput instance where the HTML to render will be saved
      • renderTabManagerControlBarBody

        public void renderTabManagerControlBarBody​(MarkupOutput out)
        Generates a table row with individual cells corresponding to each one of the TabBean child tab titles that are available to the user.
        Parameters:
        out - MarkupOutput instance where the HTML to render will be saved
      • renderTabContainerBody

        public void renderTabContainerBody​(MarkupOutput out)
        Generates the HTML that represents the body of the TabManagerBean instance being rendered, consisting on all the current available TabBean instances. HTML contents of the individual TabBean instances will then be hidden with css styles and JavaScript, for only showing one at the time (the currently selected by the user).
        Parameters:
        out - MarkupOutput instance where the HTML to render will be saved
      • renderChildrenTabBody

        public void renderChildrenTabBody​(MarkupOutput out)
        Renders each of the TabBeans that are part of the TabManagerBean. Loops through the list of child TabBeans and renders their output.
        Parameters:
        out - MarkupOutput
      • renderCurrentTabBody

        public void renderCurrentTabBody​(MarkupOutput out)
        Since:
        MicroStrategy Web 9.0.0
      • getDescription

        public java.lang.String getDescription()
        Returns the textual description of the transform
        Specified by:
        getDescription in interface Transform
        Returns:
        the description of the transform
      • getTitleForChildTab

        protected java.lang.String getTitleForChildTab​(TabBean bean)
        Obtain the title to use for the given child TabBean, based on its titleId or titleDescription properties
        Parameters:
        bean - TabBean instance from where its title will be obtained
        Returns:
        String value with the title to use on the tab control for the given TabBean instance.
      • getCurrentTabName

        protected java.lang.String getCurrentTabName()
        Obtains the Id/Name of the tab currently selected
        Returns:
        null if not found...
      • setTabSetStyle

        protected void setTabSetStyle​(Tag tabSetContainer)
        Since:
        MicroStrategy Web 9.0.0
      • setAttributesTabSetContainer

        protected void setAttributesTabSetContainer​(Tag tabSetContainer)
        Since:
        MicroStrategy Web 9.0.0