Class CssHtmlParameterPageWriter

All Implemented Interfaces:
Closeable, Flushable, Appendable, AutoCloseable

public class CssHtmlParameterPageWriter extends HtmlParameterPageWriter
Writer that writes ParameterPage in HTML format with Cascading Style Sheet Objects and Styles embedded. In all cases, an external css style sheet has to be present and will be used for setting the styles of the parameter page. To set the path to the external css style sheet to use, use the method setCssFile(String cssFile).

The styles of each sub-component of a parameter page can be defined using CSS styles. Each sub-component is referenced by a CSS class name as described below

 The following is an outline for the parameter page generated including CSS class names:
 
 <head>                    // generated through the writeHead() method
      <link>               // points to the location of the style sheet
 </head>
 <body>                    // generated through the writeBody() method
      <div class="paramTableTitle">
                           // generated through the writeTableTitle() method
      </div>
      <form>               // generated through the writeBodyBody() method in the superclass
           <table class="paramTable">
           
                <td class="paramTableCategory">
                           // display parameter titles, 
                </td>
                
                <td class="paramTableValues">
                     <div class="paramValue_X">
                          <select class="paramValue">
                           // display parameter values or inputbox, 
                           // X represents the index of the parameter
                          </select>
                     </div>
                </td>        
                
           // ... Repeat for each parameter
           </table>
           
           <input class="submitButton">
                           // button to submit the form
           <input class="resetButton">
                           // button to reset the form
      </form>
 </body>
 
 
See Also:
  • Constructor Details

    • CssHtmlParameterPageWriter

      public CssHtmlParameterPageWriter(ParameterPage page, Writer out)
      Allocates a CssHtmlParameterPageWriter
      Parameters:
      page - the ParameterPage to write
      out - the output to write to
    • CssHtmlParameterPageWriter

      public CssHtmlParameterPageWriter(ParameterPage page, Writer out, boolean isEspressMobile)
  • Method Details

    • setCssFile

      public void setCssFile(String cssFile)
      Sets the path to the css file to use. Can be relative or absolute. This method must be called to set the correct external css file to use for this page. There is no internal style defined for any CSS classes
      Parameters:
      cssFile - the path to the external css style sheet
    • getCssFile

      public String getCssFile()
      Gets the path to the css file in use. Can be relative or absolute.
    • writeHead

      public void writeHead()
      Writes only the content between the <head> and </head> tags of the parameter page. This will include the link tag which points to the css file.
      Overrides:
      writeHead in class HtmlParameterPageWriter
    • writeBody

      public void writeBody()
      Writes the content between the <body> and </body> tags (writes tags as well) of the html parameter page and centers it on the page. This includes the table title, form, parameter table and form buttons

      CSS Tags used include:
      <table class="paramTable"invalid input: '&gt'
      <td class="paramTableCategory">
      <td class="paramTableValues">
      <div class="paramValue_X"> // X represents the index of the parameter
      <select class="paramValue_X_input"> // X represents the index of the parameter
      <input class="submitButton">
      <input class="resetButton">

      Overrides:
      writeBody in class HtmlParameterPageWriter
    • writeTableTitle

      public void writeTableTitle()
      Writes the title of the parameter table
      Overrides:
      writeTableTitle in class HtmlParameterPageWriter
    • writeBodyHeader

      protected void writeBodyHeader()
      Description copied from class: HtmlParameterPageWriter
      Writes the preface/header component (the String header that is set using ParameterPage.setHeader()) of the contents inside the <body> and </body> tags of the HTML parameter page.
      Overrides:
      writeBodyHeader in class HtmlParameterPageWriter
    • writeBodyFooter

      protected void writeBodyFooter()
      Description copied from class: HtmlParameterPageWriter
      Writes the conclusion/footer component (the String footer that is set using ParameterPage.setFooter()) of the contents inside the <body> and </body> tags of the HTML parameter page.
      Overrides:
      writeBodyFooter in class HtmlParameterPageWriter
    • writeParamTableOpenTag

      protected void writeParamTableOpenTag()
      Description copied from class: HtmlParameterPageWriter
      Writes the <TABLE> tag for the parameter table.
      Overrides:
      writeParamTableOpenTag in class HtmlParameterPageWriter
    • writeParamTableCategory

      protected void writeParamTableCategory(String paramName, String tdAttributes)
      Description copied from class: HtmlParameterPageWriter
      Writes a parameter table category component inside the parameter table enclosed in <TD> and </TD> tags. A parameter table category is a generalized component for all parameter names.
      Overrides:
      writeParamTableCategory in class HtmlParameterPageWriter
      Parameters:
      paramName - the name of the parameter
      tdAttributes - the attributes for the <TD> tag
    • writeParamTableValues

      protected void writeParamTableValues(String name, String selectAttributes, Vector values, String paramValue, String tdAttributes)
      Description copied from class: HtmlParameterPageWriter
      Writes a parameter table values component inside the parameter table enclosed in <TD> and </TD> tags. A parameter table values component is a generalized component for all parameter values components.
      Overrides:
      writeParamTableValues in class HtmlParameterPageWriter
      Parameters:
      name - the name of the INPUT element
      selectAttributes - the attributes for the selection list
      values - the list of possible values that the parameter can take
      paramValue - the selected parameter value
      tdAttributes - the attributes for the <TD> tag
    • writeParamTableValue

      protected void writeParamTableValue(String name, String value, String tdAttributes)
      Description copied from class: HtmlParameterPageWriter
      Writes a parameter table value component inside the parameter table enclosed in <TD> and </TD> tags. A parameter table value component is a generalized component for all parameter value components.
      Overrides:
      writeParamTableValue in class HtmlParameterPageWriter
      Parameters:
      name - the name of the INPUT element
      value - the default value of the text box
      tdAttributes - the attributes for the <TD> tag
    • writeParamValue

      protected void writeParamValue(String name, String value)
      Description copied from class: HtmlParameterPageWriter
      Writes a parameter value component. A parameter value component is an input text box for inputting a parameter value for a parameter.
      Overrides:
      writeParamValue in class HtmlParameterPageWriter
      Parameters:
      name - the name of the INPUT element
      value - the default value of the text box
    • writeParamValueDate

      protected void writeParamValueDate(String name, String value, Param param)
      Description copied from class: HtmlParameterPageWriter
      Writes the parameter value component. If it is a date and date parameter selection is OFF and date parameter calendar is ON, prints the calendar javascript image and function call.
      Overrides:
      writeParamValueDate in class HtmlParameterPageWriter
      Parameters:
      name - the name of the INPUT element
      value - the default value of the text box
      param - the parameter that holds information about custom date format if applicable.
    • writeParamValues

      protected void writeParamValues(String name, String attributes, Vector values, String paramValue)
      Description copied from class: HtmlParameterPageWriter
      Writes a parameter values component. A parameter values component is a select list for choosing the parameter value for a parameter.
      Overrides:
      writeParamValues in class HtmlParameterPageWriter
      Parameters:
      name - the name of the SELECT element
      attributes - the String of attributes to be included in the SELECT element (ex. <SELECT attributes></SELECT>
      values - a vector of values to be included in the options of the select list
      paramValue - the value to be selected, if it exists in the VALUES argument
    • writeFormButtons

      protected void writeFormButtons()
      Description copied from class: HtmlParameterPageWriter
      Writes the form buttons (submit and reset).
      Overrides:
      writeFormButtons in class HtmlParameterPageWriter
    • writeSubmitButton

      protected void writeSubmitButton()
      Description copied from class: HtmlParameterPageWriter
      Writes the submit button.
      Overrides:
      writeSubmitButton in class HtmlParameterPageWriter
    • writeResetButton

      protected void writeResetButton()
      Description copied from class: HtmlParameterPageWriter
      Writes the reset button.
      Overrides:
      writeResetButton in class HtmlParameterPageWriter