## Explicitly enumerate the symbols here that are in the registration
## information rather than use .registration as there are symbols that
## conflict with functions on Windows, i.e. savePlot.

if(tools:::.OStype() == "windows") {
    useDynLib(grDevices, R_chull,
              PicTeX, PostScript, XFig, PDF,
              Cdevga=devga, CsavePlot=savePlot,
              Type1FontInUse, CIDFontInUse, R_GD_nullDevice)
} else {
    useDynLib(grDevices, R_chull,
              PicTeX, PostScript, XFig, PDF, CQuartz = Quartz,
              Type1FontInUse, CIDFontInUse, R_GD_nullDevice)
}

export(Hershey, as.graphicsAnnot, boxplot.stats, check.options, chull,
       CIDFont, col2rgb, colors, colours, cm, colorRamp,
       colorRampPalette, contourLines, convertColor, colorConverter,
       colorspaces, cm.colors, devAskNewPage, dev.control,
       dev.copy, dev.copy2eps, dev.copy2pdf, dev.cur, dev.interactive,
       dev.list, dev.new, dev.next, dev.off, dev.prev, dev.print,
       dev.set, dev.size, dev2bitmap, deviceIsInteractive, embedFonts,
       extendrange, getGraphicsEvent, graphics.off, gray, grey,
       gray.colors, grey.colors, heat.colors, hsv, hcl, make.rgb,
       n2mfrow, nclass.Sturges, nclass.FD, nclass.scott, palette, pdf,
       pdf.options, pdfFonts, pictex, postscript, postscriptFont,
       postscriptFonts, ps.options, rainbow, recordGraphics,
       recordPlot, replayPlot, rgb, rgb2hsv, savePlot, setEPS, setPS,
       terrain.colors, topo.colors, trans3d, Type1Font, xfig, xyTable,
       xy.coords, xyz.coords)

## devices common to all platforms
export(X11, x11, bitmap, bmp, jpeg, png, tiff)

S3method(print, recordedplot)
S3method(print, colorConverter)
S3method(print, RGBcolorConverter)

S3method("checkFont", "default")
S3method("checkFont", "Type1Font")
S3method("checkFont", "CIDFont")
S3method("matchEncoding", "Type1Font")
S3method("matchEncoding", "CIDFont")

if(tools:::.OStype() == "windows") {
    export(bringToTop, win.graph, win.metafile, win.print,
           windows, windows.options, windowsFont, windowsFonts)

    S3method("[", SavedPlots)
    S3method(print, SavedPlots)
} else {
    export(cairo_pdf, cairo_ps, X11.options, X11Font, X11Fonts,
           quartz, quartz.options, quartzFont, quartzFonts, svg)
}
