001package Torello.JavaDoc;
002
003/**
004 * A class for encapsulating all four JavaDoc Upgrader {@code '.css'} Files, each of which has been
005 * saved, in entirety, as a simple Java {@code String}.
006 * 
007 * <EMBED CLASS='external-html' DATA-FILE-ID=CSS_FILES>
008 */
009public class CSSFiles implements java.io.Serializable
010{
011    /* <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */
012    protected static final long serialVersionUID = 1;
013
014
015    // ********************************************************************************************
016    // ********************************************************************************************
017    // Just the File-Name's of the CSS-Files
018    // ********************************************************************************************
019    // ********************************************************************************************
020
021
022    /**
023     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_COLORS_F>
024     * @see #colorsCSS
025     */
026    public static final String COLORS_CSS_FILENAME = "Colors.css";
027
028    /**
029     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_BASE64_ENCODED_F>
030     * @see #colorsCSS
031     */
032    public static final String BASE64_ENCODED_CSS_FILENAME = "Base64-Encoded.css";
033
034    /**
035     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_ORIGINAL_WIDGETS_F>
036     * @see #originalWidgetsCSS
037     */
038    public static final String JAVADOC_WIDGETS_CSS_FILENAME = "Original-Widgets.css";
039
040    /**
041     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_UPGRADER_WIDGETS_F>
042     * @see #upgraderWidgetsCSS
043     */
044    public static final String UPGRADER_WIDGETS_CSS_FILENAME = "Upgrader-Widgets.css";
045
046    /**
047     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_USER_ACCESSORIES_F>
048     * @see #userAccessoriesCSS
049     */
050    public static final String USER_WIDGETS_CSS_FILENAME = "User-Accessories.css";
051
052    /**
053     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_PYGMENTS_ORG_F>
054     * @see #pygmentsOrgCSS
055     */
056    public static final String PYGMENTS_ORG_CSS_FILENAME = "Pygments.org.css";
057
058    /**
059     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_LIST_FRAMES_F>
060     * @see #listFramesCSS
061     */
062    public static final String LIST_FRAMES_CSS_FILENAME = "List-Frames.css";
063
064    /**
065     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_CUSTOMIZED_F>
066     * @see #customizedCSS
067     */
068    public static final String CUSTOMIZED_CSS_FILENAME = "Customized.css";
069
070
071    // ********************************************************************************************
072    // ********************************************************************************************
073    // The Actual CSS-Contents of the Files (as a String)
074    // ********************************************************************************************
075    // ********************************************************************************************
076
077
078    /**
079     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_COLORS>
080     * @see #COLORS_CSS_FILENAME
081     */
082    public final String colorsCSS;
083
084    /**
085     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_BASE64_ENCODED>
086     * @see #COLORS_CSS_FILENAME
087     */
088    public final String base64EncodedCSS;
089
090    /**
091     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_ORIGINAL_WIDGETS>
092     * @see #JAVADOC_WIDGETS_CSS_FILENAME
093     */
094    public final String originalWidgetsCSS;
095
096    /**
097     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_UPGRADER_WIDGETS>
098     * @see #UPGRADER_WIDGETS_CSS_FILENAME
099     */
100    public final String upgraderWidgetsCSS;
101
102    /**
103     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_USER_ACCESSORIES>
104     * @see #USER_WIDGETS_CSS_FILENAME
105     */
106    public final String userAccessoriesCSS;
107
108    /**
109     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_PYGMENTS_ORG>
110     * @see #PYGMENTS_ORG_CSS_FILENAME
111     */
112    public final String pygmentsOrgCSS;
113
114    /**
115     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_LIST_FRAMES>
116     * @see #LIST_FRAMES_CSS_FILENAME
117     */
118    public final String listFramesCSS;
119
120    /**
121     * <EMBED CLASS='external-html' DATA-FILE-ID=CSSF_CUSTOMIZED>
122     * @see #CUSTOMIZED_CSS_FILENAME
123     */
124    public final String customizedCSS;
125
126
127    // ********************************************************************************************
128    // ********************************************************************************************
129    // Constructor
130    // ********************************************************************************************
131    // ********************************************************************************************
132
133
134    /**
135     * Constructs an instance of this class by assigning the input parameters to the fields of the
136     * exact same name.
137     * 
138     * @param colorsCSS {@code '.css'} File-Contents for the CSS-File that defines the color-scheme
139     * for any / all explicity named colors on this page hierarchy.
140     * 
141     * <BR /><TABLE CLASS=JDBriefTable>
142     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
143     * <TR> <TD>{@link #colorsCSS}</TD>
144     *      <TD>CSS File-as-a-{@code String} Field</TD>
145     *      </TR>
146     * <TR> <TD>{@link #COLORS_CSS_FILENAME}</TD>
147     *      <TD>CSS File-Name</TD>
148     *      </TR>
149     * <TR> <TD><CODE><A HREF='hilite-files/Colors.css.html'>Colors.css</A></CODE></TD>
150     *      <TD>Upgrader Default-File Contents</TD>
151     *      </TR>
152     * </TABLE>
153     * 
154     * @param base64EncodedCSS {@code '.css'} File-Contents for the CSS-File that defines the color-scheme
155     * for any / all explicity named colors on this page hierarchy.
156     * 
157     * <BR /><TABLE CLASS=JDBriefTable>
158     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
159     * <TR> <TD>{@link #base64EncodedCSS}</TD>
160     *      <TD>CSS File-as-a-{@code String} Field</TD>
161     *      </TR>
162     * <TR> <TD>{@link #BASE64_ENCODED_CSS_FILENAME}</TD>
163     *      <TD>CSS File-Name</TD>
164     *      </TR>
165     * <TR> <TD><CODE><A HREF='hilite-files/Base64-Encoded.css.html'>Base64-Encoded.css</A></CODE></TD>
166     *      <TD>Upgrader Default-File Contents</TD>
167     *      </TR>
168     * </TABLE>
169     * 
170     * @param originalWidgetsCSS {@code '.css'} File-Contents for CSS that's used on Original
171     * JavaDoc Components.
172     * 
173     * <BR /><TABLE CLASS=JDBriefTable>
174     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
175     * <TR> <TD>{@link #originalWidgetsCSS}</TD>
176     *      <TD>CSS File-as-a-{@code String} Field</TD>
177     *      </TR>
178     * <TR> <TD>{@link #JAVADOC_WIDGETS_CSS_FILENAME}</TD>
179     *      <TD>CSS File-Name</TD>
180     *      </TR>
181     * <TR> <TD><CODE><A HREF='hilite-files/Original-Widgets.css.html'>Original-Widgets.css
182     *          </A></CODE></TD>
183     *      <TD>Upgrader Default-File Contents</TD>
184     *      </TR>
185     * </TABLE>
186     * 
187     * @param upgraderWidgetsCSS {@code '.css'} File-Contents for CSS that's used on Upgrader-Added
188     * Components.
189     * 
190     * <BR /><TABLE CLASS=JDBriefTable>
191     * 
192     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
193     * 
194     * <TR> <TD>{@link #upgraderWidgetsCSS}</TD>
195     *      <TD>CSS File-as-a-{@code String} Field</TD>
196     *      </TR>
197     * <TR> <TD>{@link #UPGRADER_WIDGETS_CSS_FILENAME}</TD>
198     *      <TD>CSS File-Name</TD>
199     *      </TR>
200     * <TR> <TD><CODE><A HREF='hilite-files/Upgrader-Widgets.css.html'>Upgrader-Widgets.css
201     *          </A></CODE></TD>
202     *      <TD>Upgrader Default-File Contents</TD>
203     *      </TR>
204     * 
205     * </TABLE>
206     * 
207     * @param userAccessoriesCSS {@code '.css'} File-Contents for CSS that's used on Components which
208     * are only present on a Web-Page if those components were addded / inserted by the programmer.
209     * 
210     * <BR /><TABLE CLASS=JDBriefTable>
211     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
212     * <TR> <TD>{@link #userAccessoriesCSS}</TD>
213     *      <TD>CSS File-as-a-{@code String} Field</TD>
214     *      </TR>
215     * <TR> <TD>{@link #USER_WIDGETS_CSS_FILENAME}</TD>
216     *      <TD>CSS File-Name</TD>
217     *      </TR>
218     * <TR> <TD><CODE><A HREF='hilite-files/User-Accessories.css.html'>User-Accessories.css
219     *          </A></CODE></TD>
220     *      <TD>Upgrader Default-File Contents</TD>
221     *      </TR>
222     * </TABLE>
223     * 
224     * @param pygmentsOrgCSS {@code '.css'} File-Contents for CSS that mimics the
225     * {@code 'pygments.org'} Syntax HiLiter.
226     * 
227     * <BR /><TABLE CLASS=JDBriefTable>
228     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
229     * <TR> <TD>{@link #pygmentsOrgCSS}</TD>
230     *      <TD>CSS File-as-a-{@code String} Field</TD>
231     *      </TR>
232     * <TR> <TD>{@link #PYGMENTS_ORG_CSS_FILENAME}</TD>
233     *      <TD>CSS File-Name</TD>
234     *      </TR>
235     * <TR> <TD><CODE><A HREF='hilite-files/Pygments.org.css.html'>Pygments.org.css
236     *          </A></CODE></TD>
237     *      <TD>Upgrader Default-File Contents</TD>
238     *      </TR>
239     * </TABLE>
240     * 
241     * @param listFramesCSS {@code '.css'} File-Contents for the CSS that is used to format the
242     * the {@code 'overview-frame.html'} and {@code 'package-frame.html'} Files.
243     * 
244     * <BR /><TABLE CLASS=JDBriefTable>
245     * <TR><TH>Link</TH><TH>Link-Contents</TH></TR>
246     * <TR> <TD>{@link #listFramesCSS}</TD>
247     *      <TD>CSS File-as-a-{@code String} Field</TD>
248     *      </TR>
249     * <TR> <TD>{@link #LIST_FRAMES_CSS_FILENAME}</TD>
250     *      <TD>CSS File-Name</TD>
251     *      </TR>
252     * <TR> <TD><CODE><A HREF='hilite-files/List-Frames.css.html'>List-Frames.css
253     *          </A></CODE></TD>
254     *      <TD>Upgrader Default-File Contents</TD>
255     *      </TR>
256     * </TABLE>
257     * 
258     * @param customizedCSS Potential {@code '.css'} File-Contents provided by the user for HTML
259     * Elements that have been created and included by the programmer, not by the upgrader or by 
260     * javadoc.
261     * 
262     * <BR /><BR />This parameter may be either null, or a zero-length {@code String}.  If this
263     * parameter does not contain any CSS-Rules, then no such {@code '.css'} File will be placed in
264     * the root Java-Doc {@code 'stylesheets/'}, nor will links to this file be inserted into any
265     * of the Java-Doc Web-Pages.
266     * 
267     * <BR /><BR /><B STYLE='color: red;'>See Field Definitions for:</B>
268     * 
269     * {@link #customizedCSS} and {@link #CUSTOMIZED_CSS_FILENAME}
270     */
271    public CSSFiles(
272        final String colorsCSS,
273        final String base64EncodedCSS,
274        final String originalWidgetsCSS,
275        final String upgraderWidgetsCSS,
276        final String userAccessoriesCSS,
277        final String pygmentsOrgCSS,
278        final String listFramesCSS,
279        final String customizedCSS
280    )
281    {
282        this.colorsCSS          = colorsCSS;
283        this.base64EncodedCSS   = base64EncodedCSS;
284        this.originalWidgetsCSS = originalWidgetsCSS;
285        this.upgraderWidgetsCSS = upgraderWidgetsCSS;
286        this.userAccessoriesCSS = userAccessoriesCSS;
287        this.pygmentsOrgCSS     = pygmentsOrgCSS;
288        this.listFramesCSS      = listFramesCSS;
289        this.customizedCSS      = customizedCSS;
290    }
291}