/* * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package com.sun.javafx.print; import java.util.Set; import javafx.geometry.Rectangle2D; import javafx.print.JobSettings; import javafx.print.Printer; import javafx.print.Collation; import javafx.print.PageRange; import javafx.print.Paper; import javafx.print.PaperSource; import javafx.print.PrintColor; import javafx.print.PageOrientation; import javafx.print.PrintQuality; import javafx.print.PrintResolution; import javafx.print.PrintSides; /* * This is called 'PrinterImpl' not because it is a class implementing * features of a super class, but because its defines the interfaces * required of the delegate implementation class for a Printer. * The actual implementation class needs to be discovered at runtime. */ public interface PrinterImpl { public void setPrinter(Printer printer); public String getName(); public JobSettings getDefaultJobSettings(); public Rectangle2D printableArea(Paper paper); public int defaultCopies(); public int maxCopies(); public Collation defaultCollation(); public Set supportedCollations(); public PrintSides defaultSides(); public Set supportedSides(); public PageRange defaultPageRange(); public boolean supportsPageRanges(); public PrintResolution defaultPrintResolution(); public Set supportedPrintResolution(); public PrintColor defaultPrintColor(); public Set supportedPrintColor(); public PrintQuality defaultPrintQuality(); public Set supportedPrintQuality(); public PageOrientation defaultOrientation(); public Set supportedOrientation(); public Paper defaultPaper(); public Set supportedPapers(); public PaperSource defaultPaperSource(); public Set supportedPaperSources(); }