Graphics.UI.WXCore.Print

Contents

Description

 

Synopsis

Printing

pageSetupDialog :: Frame a -> Int -> IO (PageSetupDialog ())

Create a (hidden) page setup dialog that remembers printer settings. It is a parameter to the functions printDialog and printPreview. The creation function takes a parent frame and the initial page margins (in millimeters) as an argument.

pageSetupShowModal :: PageSetupDialog a -> IO ()

Show the page setup dialog

printDialog :: PageSetupDialog a -> String -> PageFunction -> PrintFunction -> IO ()

Show a print dialog.

printPreview :: PageSetupDialog a -> String -> PageFunction -> PrintFunction -> IO ()

Show a preview window

Callbacks

type PageFunction = PageInfo -> PrintInfo -> Size -> (Int, Int)

Return a page range given page info, print info, and the printable size. The printable size is the number of pixels available for printing without the page margins.

type PrintFunction = PageInfo -> PrintInfo -> Size -> DC () -> Int -> IO ()

Print a page given page info, print info, the printable size, the printer device context and the current page. The printable size is the number of pixels available for printing without the page margins

Page and printer info

data PageInfo

Information from the page setup dialog. All measurements are in millimeters.

Constructors

PageInfo 

Fields

pageSize :: Size

The page size (in millimeters)

pageArea :: Rect

The available page area (=margins) (in millimeters)

Instances

Show PageInfo 

data PrintInfo

Printer information.

Constructors

PrintInfo 

Fields

screenPPI :: Size

screen pixels per inch

printerPPI :: Size

printer pixels per inch

printPageSize :: Size

printable area (in pixels) = PageInfo pageSize minus printer margins

Instances

Show PrintInfo 

Internal

printOutGetPrintInfo :: Printout a -> IO PrintInfo

Extract print info

pageSetupDialogGetFrame :: PageSetupDialog a -> IO (Frame ())

Get the parent frame of a PageSetupDialog.