Commit 805a39bc authored by YAMAMOTO Mitsuharu's avatar YAMAMOTO Mitsuharu

Remove intern calls and XXX comments from Fx_export_frames

* src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
Qsvg instead of intern calls.  Use "postscript" instead of "ps"
for consistency with image types.  Remove XXX comments.
(syms_of_xfns) <Qpdf>: DEFSYM it.
parent 9463abf4
...@@ -6559,11 +6559,12 @@ present and mapped to the usual X keysyms. */) ...@@ -6559,11 +6559,12 @@ present and mapped to the usual X keysyms. */)
#ifdef USE_CAIRO #ifdef USE_CAIRO
DEFUN ("x-export-frames", Fx_export_frames, Sx_export_frames, 0, 2, 0, DEFUN ("x-export-frames", Fx_export_frames, Sx_export_frames, 0, 2, 0,
doc: /* XXX Experimental. Return image data of FRAMES in TYPE format. doc: /* Return image data of FRAMES in TYPE format.
FRAMES should be nil (the selected frame), a frame, or a list of FRAMES should be nil (the selected frame), a frame, or a list of
frames (each of which corresponds to one page). Optional arg TYPE frames (each of which corresponds to one page). Optional arg TYPE
should be either `pdf' (default), `png', `ps', or `svg'. Supported should be either `pdf' (default), `png', `postscript', or `svg'.
types are determined by the compile-time configuration of cairo. */) Supported types are determined by the compile-time configuration of
cairo. */)
(Lisp_Object frames, Lisp_Object type) (Lisp_Object frames, Lisp_Object type)
{ {
Lisp_Object result, rest, tmp; Lisp_Object result, rest, tmp;
...@@ -6590,12 +6591,12 @@ types are determined by the compile-time configuration of cairo. */) ...@@ -6590,12 +6591,12 @@ types are determined by the compile-time configuration of cairo. */)
frames = Fnreverse (tmp); frames = Fnreverse (tmp);
#ifdef CAIRO_HAS_PDF_SURFACE #ifdef CAIRO_HAS_PDF_SURFACE
if (NILP (type) || EQ (type, intern ("pdf"))) /* XXX: Qpdf */ if (NILP (type) || EQ (type, Qpdf))
surface_type = CAIRO_SURFACE_TYPE_PDF; surface_type = CAIRO_SURFACE_TYPE_PDF;
else else
#endif #endif
#ifdef CAIRO_HAS_PNG_FUNCTIONS #ifdef CAIRO_HAS_PNG_FUNCTIONS
if (EQ (type, intern ("png"))) if (EQ (type, Qpng))
{ {
if (!NILP (XCDR (frames))) if (!NILP (XCDR (frames)))
error ("PNG export cannot handle multiple frames."); error ("PNG export cannot handle multiple frames.");
...@@ -6604,12 +6605,12 @@ types are determined by the compile-time configuration of cairo. */) ...@@ -6604,12 +6605,12 @@ types are determined by the compile-time configuration of cairo. */)
else else
#endif #endif
#ifdef CAIRO_HAS_PS_SURFACE #ifdef CAIRO_HAS_PS_SURFACE
if (EQ (type, intern ("ps"))) if (EQ (type, Qpostscript))
surface_type = CAIRO_SURFACE_TYPE_PS; surface_type = CAIRO_SURFACE_TYPE_PS;
else else
#endif #endif
#ifdef CAIRO_HAS_SVG_SURFACE #ifdef CAIRO_HAS_SVG_SURFACE
if (EQ (type, intern ("svg"))) if (EQ (type, Qsvg))
{ {
/* For now, we stick to SVG 1.1. */ /* For now, we stick to SVG 1.1. */
if (!NILP (XCDR (frames))) if (!NILP (XCDR (frames)))
...@@ -6763,6 +6764,8 @@ syms_of_xfns (void) ...@@ -6763,6 +6764,8 @@ syms_of_xfns (void)
DEFSYM (Qmono, "mono"); DEFSYM (Qmono, "mono");
#ifdef USE_CAIRO #ifdef USE_CAIRO
DEFSYM (Qpdf, "pdf");
DEFSYM (Qorientation, "orientation"); DEFSYM (Qorientation, "orientation");
DEFSYM (Qtop_margin, "top-margin"); DEFSYM (Qtop_margin, "top-margin");
DEFSYM (Qbottom_margin, "bottom-margin"); DEFSYM (Qbottom_margin, "bottom-margin");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment