Java tutorial
/******************************************************************************* * Copyright (c) 2000, 2008 IBM Corporation and others. * * This program and the accompanying materials * are made available under the terms of the Eclipse Public License 2.0 * which accompanies this distribution, and is available at * https://www.eclipse.org/legal/epl-2.0/ * * SPDX-License-Identifier: EPL-2.0 * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.swt.custom; /** * Use StyledTextPrintOptions to specify printing options for the * StyledText.print(Printer, StyledTextPrintOptions) API. * <p> * The following example prints a right aligned page number in the footer, * sets the job name to "Example" and prints line background colors but no other * formatting: * </p> * <pre> * StyledTextPrintOptions options = new StyledTextPrintOptions(); * options.footer = "\t\t<page>"; * options.jobName = "Example"; * options.printLineBackground = true; * * Runnable runnable = styledText.print(new Printer(), options); * runnable.run(); * </pre> * * @see <a href="http://www.eclipse.org/swt/">Sample code and further information</a> * * @since 2.1 */ public class StyledTextPrintOptions { /** * Page number placeholder constant for use in <code>header</code> * and <code>footer</code>. Value is <code><page></code> */ public static final String PAGE_TAG = "<page>"; /** * Separator constant for use in <code>header</code> and * <code>footer</code>. Value is <code>\t</code> */ public static final String SEPARATOR = "\t"; /** * Formatted text to print in the header of each page. * <p>"left '\t' center '\t' right"</p> * <p>left, center, right = <page> | #CDATA</p> * <p>Header and footer are defined as three separate regions for arbitrary * text or the page number placeholder <page> * (<code>StyledTextPrintOptions.PAGE_TAG</code>). The three regions are * left aligned, centered and right aligned. They are separated by a tab * character (<code>StyledTextPrintOptions.SEPARATOR</code>). */ public String header = null; /** * Formatted text to print in the footer of each page. * <p>"left '\t' center '\t' right"</p> * <p>left, center, right = <page> | #CDATA</p> * <p>Header and footer are defined as three separate regions for arbitrary * text or the page number placeholder <page> * (<code>StyledTextPrintOptions.PAGE_TAG</code>). The three regions are * left aligned, centered and right aligned. They are separated by a tab * character (<code>StyledTextPrintOptions.SEPARATOR</code>). */ public String footer = null; /** * Name of the print job. */ public String jobName = null; /** * Print the text foreground color. Default value is <code>false</code>. */ public boolean printTextForeground = false; /** * Print the text background color. Default value is <code>false</code>. */ public boolean printTextBackground = false; /** * Print the font styles. Default value is <code>false</code>. */ public boolean printTextFontStyle = false; /** * Print the line background color. Default value is <code>false</code>. */ public boolean printLineBackground = false; /** * Print line numbers. Default value is <code>false</code>. * * @since 3.3 */ public boolean printLineNumbers = false; /** * Labels used for printing line numbers. * * @since 3.4 */ public String[] lineLabels = null; }