2007-03-22 10:30:00 -07:00
|
|
|
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
2012-05-21 04:12:37 -07:00
|
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
2007-03-22 10:30:00 -07:00
|
|
|
|
|
|
|
#include "nsIDOMHTMLElement.idl"
|
|
|
|
|
2010-11-16 20:33:03 -08:00
|
|
|
%{C++
|
|
|
|
// for jsval
|
|
|
|
#include "jsapi.h"
|
|
|
|
%}
|
|
|
|
|
2007-03-22 10:30:00 -07:00
|
|
|
/**
|
|
|
|
* The nsIDOMHTMLCanvasElement interface is the interface to a HTML
|
|
|
|
* <canvas> element.
|
|
|
|
*
|
|
|
|
* For more information on this interface, please see
|
|
|
|
* http://www.whatwg.org/specs/web-apps/current-work/#graphics
|
|
|
|
*
|
|
|
|
* @status UNDER_DEVELOPMENT
|
|
|
|
*/
|
|
|
|
|
2012-10-15 14:15:25 -07:00
|
|
|
interface nsIDOMBlob;
|
2010-09-17 18:14:59 -07:00
|
|
|
interface nsIDOMFile;
|
2011-05-26 00:28:26 -07:00
|
|
|
interface nsIVariant;
|
2012-01-31 16:13:44 -08:00
|
|
|
interface nsIInputStreamCallback;
|
2010-09-17 18:14:59 -07:00
|
|
|
|
2012-08-31 10:45:45 -07:00
|
|
|
[scriptable, builtinclass, uuid(8d5fb8a0-7782-11e1-b0c4-0800200c9a67)]
|
|
|
|
interface nsIDOMMozCanvasPrintState : nsISupports
|
|
|
|
{
|
|
|
|
// A canvas rendering context.
|
|
|
|
readonly attribute nsISupports context;
|
|
|
|
|
|
|
|
// To be called when rendering to the context is done.
|
|
|
|
void done();
|
|
|
|
};
|
|
|
|
|
|
|
|
[scriptable, function, uuid(8d5fb8a0-7782-11e1-b0c4-0800200c9a66)]
|
|
|
|
interface nsIPrintCallback : nsISupports
|
|
|
|
{
|
|
|
|
void render(in nsIDOMMozCanvasPrintState ctx);
|
|
|
|
};
|
|
|
|
|
2012-10-15 14:15:25 -07:00
|
|
|
[scriptable, function, uuid(6e9ffb59-2067-4aef-a51c-65e65a3e0d81)]
|
|
|
|
interface nsIFileCallback : nsISupports {
|
|
|
|
void receive(in nsIDOMBlob file);
|
|
|
|
};
|
|
|
|
|
2013-04-13 00:04:53 -07:00
|
|
|
[scriptable, uuid(83d84fe5-cd02-41ff-ac86-668775627d82)]
|
2007-03-22 10:30:00 -07:00
|
|
|
interface nsIDOMHTMLCanvasElement : nsIDOMHTMLElement
|
|
|
|
{
|
2011-03-25 04:40:55 -07:00
|
|
|
attribute unsigned long width;
|
|
|
|
attribute unsigned long height;
|
2008-06-03 17:00:32 -07:00
|
|
|
attribute boolean mozOpaque;
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2010-11-16 20:33:03 -08:00
|
|
|
nsISupports getContext(in DOMString contextId,
|
|
|
|
[optional] in jsval contextOptions);
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2009-08-10 07:41:12 -07:00
|
|
|
|
2007-03-22 10:30:00 -07:00
|
|
|
// Valid calls are:
|
|
|
|
// toDataURL(); -- defaults to image/png
|
|
|
|
// toDataURL(type); -- uses given type
|
2011-05-26 00:28:26 -07:00
|
|
|
// toDataURL(type, params); -- uses given type, and any valid parameters
|
2013-04-13 00:04:53 -07:00
|
|
|
DOMString toDataURL([optional] in DOMString type,
|
|
|
|
[optional] in nsIVariant params);
|
2007-03-22 10:30:00 -07:00
|
|
|
|
2010-09-17 18:14:59 -07:00
|
|
|
// Valid calls are
|
|
|
|
// mozGetAsFile(name); -- defaults to image/png
|
|
|
|
// mozGetAsFile(name, type); -- uses given type
|
2013-04-13 00:04:53 -07:00
|
|
|
nsIDOMFile mozGetAsFile(in DOMString name, [optional] in DOMString type);
|
2010-09-17 18:14:59 -07:00
|
|
|
|
2013-04-13 00:04:53 -07:00
|
|
|
void toBlob(in nsIFileCallback callback,
|
|
|
|
[optional] in DOMString type);
|
2012-10-15 14:15:25 -07:00
|
|
|
|
2010-03-24 03:47:18 -07:00
|
|
|
// A Mozilla-only extension to get a canvas context backed by double-buffered
|
|
|
|
// shared memory. Only privileged callers can call this.
|
2010-06-08 10:27:24 -07:00
|
|
|
nsISupports MozGetIPCContext(in DOMString contextId);
|
2012-01-31 16:13:44 -08:00
|
|
|
|
|
|
|
// A Mozilla-only extension that returns the canvas' image data as a data
|
|
|
|
// stream in the desired image format.
|
|
|
|
void mozFetchAsStream(in nsIInputStreamCallback callback,
|
|
|
|
[optional] in DOMString type);
|
2012-08-31 10:45:45 -07:00
|
|
|
|
|
|
|
// A Mozilla-only callback that is called during the printing process.
|
|
|
|
attribute nsIPrintCallback mozPrintCallback;
|
2007-03-22 10:30:00 -07:00
|
|
|
};
|
|
|
|
|