LCOV - code coverage report
Current view: directory - objdir/dist/include - nsIDOMCanvasRenderingContext2D.h (source / functions) Found Hit Coverage
Test: app.info Lines: 4 0 0.0 %
Date: 2012-06-02 Functions: 4 0 0.0 %

       1                 : /*
       2                 :  * DO NOT EDIT.  THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/dom/interfaces/canvas/nsIDOMCanvasRenderingContext2D.idl
       3                 :  */
       4                 : 
       5                 : #ifndef __gen_nsIDOMCanvasRenderingContext2D_h__
       6                 : #define __gen_nsIDOMCanvasRenderingContext2D_h__
       7                 : 
       8                 : 
       9                 : #ifndef __gen_nsISupports_h__
      10                 : #include "nsISupports.h"
      11                 : #endif
      12                 : 
      13                 : #ifndef __gen_nsIVariant_h__
      14                 : #include "nsIVariant.h"
      15                 : #endif
      16                 : 
      17                 : #include "jspubtd.h"
      18                 : 
      19                 : /* For IDL files that don't want to include root IDL files. */
      20                 : #ifndef NS_NO_VTABLE
      21                 : #define NS_NO_VTABLE
      22                 : #endif
      23                 : class nsIDOMWindow; /* forward declaration */
      24                 : 
      25                 : class nsIDOMElement; /* forward declaration */
      26                 : 
      27                 : class nsIDOMHTMLElement; /* forward declaration */
      28                 : 
      29                 : class nsIDOMHTMLImageElement; /* forward declaration */
      30                 : 
      31                 : class nsIDOMHTMLCanvasElement; /* forward declaration */
      32                 : 
      33                 : class nsIDOMXULElement; /* forward declaration */
      34                 : 
      35                 : 
      36                 : /* starting interface:    nsIDOMCanvasGradient */
      37                 : #define NS_IDOMCANVASGRADIENT_IID_STR "bbb20a59-524e-4662-981e-5e142814b20c"
      38                 : 
      39                 : #define NS_IDOMCANVASGRADIENT_IID \
      40                 :   {0xbbb20a59, 0x524e, 0x4662, \
      41                 :     { 0x98, 0x1e, 0x5e, 0x14, 0x28, 0x14, 0xb2, 0x0c }}
      42                 : 
      43               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIDOMCanvasGradient : public nsISupports {
      44                 :  public: 
      45                 : 
      46                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMCANVASGRADIENT_IID)
      47                 : 
      48                 :   /* void addColorStop (in float offset, in DOMString color); */
      49                 :   NS_SCRIPTABLE NS_IMETHOD AddColorStop(float offset, const nsAString & color) = 0;
      50                 : 
      51                 : };
      52                 : 
      53                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMCanvasGradient, NS_IDOMCANVASGRADIENT_IID)
      54                 : 
      55                 : /* Use this macro when declaring classes that implement this interface. */
      56                 : #define NS_DECL_NSIDOMCANVASGRADIENT \
      57                 :   NS_SCRIPTABLE NS_IMETHOD AddColorStop(float offset, const nsAString & color); 
      58                 : 
      59                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
      60                 : #define NS_FORWARD_NSIDOMCANVASGRADIENT(_to) \
      61                 :   NS_SCRIPTABLE NS_IMETHOD AddColorStop(float offset, const nsAString & color) { return _to AddColorStop(offset, color); } 
      62                 : 
      63                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
      64                 : #define NS_FORWARD_SAFE_NSIDOMCANVASGRADIENT(_to) \
      65                 :   NS_SCRIPTABLE NS_IMETHOD AddColorStop(float offset, const nsAString & color) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddColorStop(offset, color); } 
      66                 : 
      67                 : #if 0
      68                 : /* Use the code below as a template for the implementation class for this interface. */
      69                 : 
      70                 : /* Header file */
      71                 : class nsDOMCanvasGradient : public nsIDOMCanvasGradient
      72                 : {
      73                 : public:
      74                 :   NS_DECL_ISUPPORTS
      75                 :   NS_DECL_NSIDOMCANVASGRADIENT
      76                 : 
      77                 :   nsDOMCanvasGradient();
      78                 : 
      79                 : private:
      80                 :   ~nsDOMCanvasGradient();
      81                 : 
      82                 : protected:
      83                 :   /* additional members */
      84                 : };
      85                 : 
      86                 : /* Implementation file */
      87                 : NS_IMPL_ISUPPORTS1(nsDOMCanvasGradient, nsIDOMCanvasGradient)
      88                 : 
      89                 : nsDOMCanvasGradient::nsDOMCanvasGradient()
      90                 : {
      91                 :   /* member initializers and constructor code */
      92                 : }
      93                 : 
      94                 : nsDOMCanvasGradient::~nsDOMCanvasGradient()
      95                 : {
      96                 :   /* destructor code */
      97                 : }
      98                 : 
      99                 : /* void addColorStop (in float offset, in DOMString color); */
     100                 : NS_IMETHODIMP nsDOMCanvasGradient::AddColorStop(float offset, const nsAString & color)
     101                 : {
     102                 :     return NS_ERROR_NOT_IMPLEMENTED;
     103                 : }
     104                 : 
     105                 : /* End of implementation class template. */
     106                 : #endif
     107                 : 
     108                 : 
     109                 : /* starting interface:    nsIDOMCanvasPattern */
     110                 : #define NS_IDOMCANVASPATTERN_IID_STR "21dea65c-5c08-4eb1-ac82-81fe95be77b8"
     111                 : 
     112                 : #define NS_IDOMCANVASPATTERN_IID \
     113                 :   {0x21dea65c, 0x5c08, 0x4eb1, \
     114                 :     { 0xac, 0x82, 0x81, 0xfe, 0x95, 0xbe, 0x77, 0xb8 }}
     115                 : 
     116               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIDOMCanvasPattern : public nsISupports {
     117                 :  public: 
     118                 : 
     119                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMCANVASPATTERN_IID)
     120                 : 
     121                 : };
     122                 : 
     123                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMCanvasPattern, NS_IDOMCANVASPATTERN_IID)
     124                 : 
     125                 : /* Use this macro when declaring classes that implement this interface. */
     126                 : #define NS_DECL_NSIDOMCANVASPATTERN \
     127                 :   /* no methods! */
     128                 : 
     129                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     130                 : #define NS_FORWARD_NSIDOMCANVASPATTERN(_to) \
     131                 :   /* no methods! */
     132                 : 
     133                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     134                 : #define NS_FORWARD_SAFE_NSIDOMCANVASPATTERN(_to) \
     135                 :   /* no methods! */
     136                 : 
     137                 : #if 0
     138                 : /* Use the code below as a template for the implementation class for this interface. */
     139                 : 
     140                 : /* Header file */
     141                 : class nsDOMCanvasPattern : public nsIDOMCanvasPattern
     142                 : {
     143                 : public:
     144                 :   NS_DECL_ISUPPORTS
     145                 :   NS_DECL_NSIDOMCANVASPATTERN
     146                 : 
     147                 :   nsDOMCanvasPattern();
     148                 : 
     149                 : private:
     150                 :   ~nsDOMCanvasPattern();
     151                 : 
     152                 : protected:
     153                 :   /* additional members */
     154                 : };
     155                 : 
     156                 : /* Implementation file */
     157                 : NS_IMPL_ISUPPORTS1(nsDOMCanvasPattern, nsIDOMCanvasPattern)
     158                 : 
     159                 : nsDOMCanvasPattern::nsDOMCanvasPattern()
     160                 : {
     161                 :   /* member initializers and constructor code */
     162                 : }
     163                 : 
     164                 : nsDOMCanvasPattern::~nsDOMCanvasPattern()
     165                 : {
     166                 :   /* destructor code */
     167                 : }
     168                 : 
     169                 : /* End of implementation class template. */
     170                 : #endif
     171                 : 
     172                 : 
     173                 : /* starting interface:    nsIDOMTextMetrics */
     174                 : #define NS_IDOMTEXTMETRICS_IID_STR "2d01715c-ec7d-424a-ab85-e0fd70c8665c"
     175                 : 
     176                 : #define NS_IDOMTEXTMETRICS_IID \
     177                 :   {0x2d01715c, 0xec7d, 0x424a, \
     178                 :     { 0xab, 0x85, 0xe0, 0xfd, 0x70, 0xc8, 0x66, 0x5c }}
     179                 : 
     180               0 : class NS_NO_VTABLE NS_SCRIPTABLE nsIDOMTextMetrics : public nsISupports {
     181                 :  public: 
     182                 : 
     183                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMTEXTMETRICS_IID)
     184                 : 
     185                 :   /* readonly attribute float width; */
     186                 :   NS_SCRIPTABLE NS_IMETHOD GetWidth(float *aWidth) = 0;
     187                 : 
     188                 : };
     189                 : 
     190                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMTextMetrics, NS_IDOMTEXTMETRICS_IID)
     191                 : 
     192                 : /* Use this macro when declaring classes that implement this interface. */
     193                 : #define NS_DECL_NSIDOMTEXTMETRICS \
     194                 :   NS_SCRIPTABLE NS_IMETHOD GetWidth(float *aWidth); 
     195                 : 
     196                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     197                 : #define NS_FORWARD_NSIDOMTEXTMETRICS(_to) \
     198                 :   NS_SCRIPTABLE NS_IMETHOD GetWidth(float *aWidth) { return _to GetWidth(aWidth); } 
     199                 : 
     200                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     201                 : #define NS_FORWARD_SAFE_NSIDOMTEXTMETRICS(_to) \
     202                 :   NS_SCRIPTABLE NS_IMETHOD GetWidth(float *aWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWidth(aWidth); } 
     203                 : 
     204                 : #if 0
     205                 : /* Use the code below as a template for the implementation class for this interface. */
     206                 : 
     207                 : /* Header file */
     208                 : class nsDOMTextMetrics : public nsIDOMTextMetrics
     209                 : {
     210                 : public:
     211                 :   NS_DECL_ISUPPORTS
     212                 :   NS_DECL_NSIDOMTEXTMETRICS
     213                 : 
     214                 :   nsDOMTextMetrics();
     215                 : 
     216                 : private:
     217                 :   ~nsDOMTextMetrics();
     218                 : 
     219                 : protected:
     220                 :   /* additional members */
     221                 : };
     222                 : 
     223                 : /* Implementation file */
     224                 : NS_IMPL_ISUPPORTS1(nsDOMTextMetrics, nsIDOMTextMetrics)
     225                 : 
     226                 : nsDOMTextMetrics::nsDOMTextMetrics()
     227                 : {
     228                 :   /* member initializers and constructor code */
     229                 : }
     230                 : 
     231                 : nsDOMTextMetrics::~nsDOMTextMetrics()
     232                 : {
     233                 :   /* destructor code */
     234                 : }
     235                 : 
     236                 : /* readonly attribute float width; */
     237                 : NS_IMETHODIMP nsDOMTextMetrics::GetWidth(float *aWidth)
     238                 : {
     239                 :     return NS_ERROR_NOT_IMPLEMENTED;
     240                 : }
     241                 : 
     242                 : /* End of implementation class template. */
     243                 : #endif
     244                 : 
     245                 : 
     246                 : /* starting interface:    nsIDOMCanvasRenderingContext2D */
     247                 : #define NS_IDOMCANVASRENDERINGCONTEXT2D_IID_STR "274213a8-df51-4b52-bfad-d306a1d5f642"
     248                 : 
     249                 : #define NS_IDOMCANVASRENDERINGCONTEXT2D_IID \
     250                 :   {0x274213a8, 0xdf51, 0x4b52, \
     251                 :     { 0xbf, 0xad, 0xd3, 0x06, 0xa1, 0xd5, 0xf6, 0x42 }}
     252                 : 
     253               0 : class NS_SCRIPTABLE nsIDOMCanvasRenderingContext2D : public nsISupports {
     254                 :  public: 
     255                 : 
     256                 :   NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMCANVASRENDERINGCONTEXT2D_IID)
     257                 : 
     258                 :   /* readonly attribute nsIDOMHTMLCanvasElement canvas; */
     259                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) = 0;
     260                 : 
     261                 :   /* void save (); */
     262                 :   NS_SCRIPTABLE NS_IMETHOD Save(void) = 0;
     263                 : 
     264                 :   /* void restore (); */
     265                 :   NS_SCRIPTABLE NS_IMETHOD Restore(void) = 0;
     266                 : 
     267                 :   /* void scale (in float x, in float y); */
     268                 :   NS_SCRIPTABLE NS_IMETHOD Scale(float x, float y) = 0;
     269                 : 
     270                 :   /* void rotate (in float angle); */
     271                 :   NS_SCRIPTABLE NS_IMETHOD Rotate(float angle) = 0;
     272                 : 
     273                 :   /* void translate (in float x, in float y); */
     274                 :   NS_SCRIPTABLE NS_IMETHOD Translate(float x, float y) = 0;
     275                 : 
     276                 :   /* void transform (in float m11, in float m12, in float m21, in float m22, in float dx, in float dy); */
     277                 :   NS_SCRIPTABLE NS_IMETHOD Transform(float m11, float m12, float m21, float m22, float dx, float dy) = 0;
     278                 : 
     279                 :   /* void setTransform (in float m11, in float m12, in float m21, in float m22, in float dx, in float dy); */
     280                 :   NS_SCRIPTABLE NS_IMETHOD SetTransform(float m11, float m12, float m21, float m22, float dx, float dy) = 0;
     281                 : 
     282                 :   /* [implicit_jscontext] attribute jsval mozCurrentTransform; */
     283                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransform(JSContext* cx, JS::Value *aMozCurrentTransform) = 0;
     284                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransform(JSContext* cx, const JS::Value & aMozCurrentTransform) = 0;
     285                 : 
     286                 :   /* [implicit_jscontext] attribute jsval mozCurrentTransformInverse; */
     287                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransformInverse(JSContext* cx, JS::Value *aMozCurrentTransformInverse) = 0;
     288                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransformInverse(JSContext* cx, const JS::Value & aMozCurrentTransformInverse) = 0;
     289                 : 
     290                 :   /* attribute float globalAlpha; */
     291                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalAlpha(float *aGlobalAlpha) = 0;
     292                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalAlpha(float aGlobalAlpha) = 0;
     293                 : 
     294                 :   /* attribute DOMString globalCompositeOperation; */
     295                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalCompositeOperation(nsAString & aGlobalCompositeOperation) = 0;
     296                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalCompositeOperation(const nsAString & aGlobalCompositeOperation) = 0;
     297                 : 
     298                 :   /* attribute nsIVariant strokeStyle; */
     299                 :   NS_SCRIPTABLE NS_IMETHOD GetStrokeStyle(nsIVariant * *aStrokeStyle) = 0;
     300                 :   NS_SCRIPTABLE NS_IMETHOD SetStrokeStyle(nsIVariant *aStrokeStyle) = 0;
     301                 : 
     302                 :   /* attribute nsIVariant fillStyle; */
     303                 :   NS_SCRIPTABLE NS_IMETHOD GetFillStyle(nsIVariant * *aFillStyle) = 0;
     304                 :   NS_SCRIPTABLE NS_IMETHOD SetFillStyle(nsIVariant *aFillStyle) = 0;
     305                 : 
     306                 :  enum CanvasMultiGetterType {
     307                 :       CMG_STYLE_STRING = 0,
     308                 :       CMG_STYLE_PATTERN = 1,
     309                 :       CMG_STYLE_GRADIENT = 2
     310                 : };
     311                 :   /* [noscript] void setStrokeStyle_multi (in DOMString str, in nsISupports iface); */
     312                 :   NS_IMETHOD SetStrokeStyle_multi(const nsAString & str, nsISupports *iface) = 0;
     313                 : 
     314                 :   /* [noscript] void getStrokeStyle_multi (out DOMString str, out nsISupports iface, out long type); */
     315                 :   NS_IMETHOD GetStrokeStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) = 0;
     316                 : 
     317                 :   /* [noscript] void setFillStyle_multi (in DOMString str, in nsISupports iface); */
     318                 :   NS_IMETHOD SetFillStyle_multi(const nsAString & str, nsISupports *iface) = 0;
     319                 : 
     320                 :   /* [noscript] void getFillStyle_multi (out DOMString str, out nsISupports iface, out long type); */
     321                 :   NS_IMETHOD GetFillStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) = 0;
     322                 : 
     323                 :   /* attribute DOMString mozFillRule; */
     324                 :   NS_SCRIPTABLE NS_IMETHOD GetMozFillRule(nsAString & aMozFillRule) = 0;
     325                 :   NS_SCRIPTABLE NS_IMETHOD SetMozFillRule(const nsAString & aMozFillRule) = 0;
     326                 : 
     327                 :   /* nsIDOMCanvasGradient createLinearGradient (in float x0, in float y0, in float x1, in float y1); */
     328                 :   NS_SCRIPTABLE NS_IMETHOD CreateLinearGradient(float x0, float y0, float x1, float y1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) = 0;
     329                 : 
     330                 :   /* nsIDOMCanvasGradient createRadialGradient (in float x0, in float y0, in float r0, in float x1, in float y1, in float r1); */
     331                 :   NS_SCRIPTABLE NS_IMETHOD CreateRadialGradient(float x0, float y0, float r0, float x1, float y1, float r1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) = 0;
     332                 : 
     333                 :   /* nsIDOMCanvasPattern createPattern (in nsIDOMHTMLElement image, in DOMString repetition); */
     334                 :   NS_SCRIPTABLE NS_IMETHOD CreatePattern(nsIDOMHTMLElement *image, const nsAString & repetition, nsIDOMCanvasPattern * *_retval NS_OUTPARAM) = 0;
     335                 : 
     336                 :   /* attribute float lineWidth; */
     337                 :   NS_SCRIPTABLE NS_IMETHOD GetLineWidth(float *aLineWidth) = 0;
     338                 :   NS_SCRIPTABLE NS_IMETHOD SetLineWidth(float aLineWidth) = 0;
     339                 : 
     340                 :   /* attribute DOMString lineCap; */
     341                 :   NS_SCRIPTABLE NS_IMETHOD GetLineCap(nsAString & aLineCap) = 0;
     342                 :   NS_SCRIPTABLE NS_IMETHOD SetLineCap(const nsAString & aLineCap) = 0;
     343                 : 
     344                 :   /* attribute DOMString lineJoin; */
     345                 :   NS_SCRIPTABLE NS_IMETHOD GetLineJoin(nsAString & aLineJoin) = 0;
     346                 :   NS_SCRIPTABLE NS_IMETHOD SetLineJoin(const nsAString & aLineJoin) = 0;
     347                 : 
     348                 :   /* attribute float miterLimit; */
     349                 :   NS_SCRIPTABLE NS_IMETHOD GetMiterLimit(float *aMiterLimit) = 0;
     350                 :   NS_SCRIPTABLE NS_IMETHOD SetMiterLimit(float aMiterLimit) = 0;
     351                 : 
     352                 :   /* [implicit_jscontext] attribute jsval mozDash; */
     353                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDash(JSContext* cx, JS::Value *aMozDash) = 0;
     354                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDash(JSContext* cx, const JS::Value & aMozDash) = 0;
     355                 : 
     356                 :   /* attribute float mozDashOffset; */
     357                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDashOffset(float *aMozDashOffset) = 0;
     358                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDashOffset(float aMozDashOffset) = 0;
     359                 : 
     360                 :   /* attribute float shadowOffsetX; */
     361                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetX(float *aShadowOffsetX) = 0;
     362                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetX(float aShadowOffsetX) = 0;
     363                 : 
     364                 :   /* attribute float shadowOffsetY; */
     365                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetY(float *aShadowOffsetY) = 0;
     366                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetY(float aShadowOffsetY) = 0;
     367                 : 
     368                 :   /* attribute float shadowBlur; */
     369                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowBlur(float *aShadowBlur) = 0;
     370                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowBlur(float aShadowBlur) = 0;
     371                 : 
     372                 :   /* attribute DOMString shadowColor; */
     373                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowColor(nsAString & aShadowColor) = 0;
     374                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowColor(const nsAString & aShadowColor) = 0;
     375                 : 
     376                 :   /* void clearRect (in float x, in float y, in float w, in float h); */
     377                 :   NS_SCRIPTABLE NS_IMETHOD ClearRect(float x, float y, float w, float h) = 0;
     378                 : 
     379                 :   /* void fillRect (in float x, in float y, in float w, in float h); */
     380                 :   NS_SCRIPTABLE NS_IMETHOD FillRect(float x, float y, float w, float h) = 0;
     381                 : 
     382                 :   /* void strokeRect (in float x, in float y, in float w, in float h); */
     383                 :   NS_SCRIPTABLE NS_IMETHOD StrokeRect(float x, float y, float w, float h) = 0;
     384                 : 
     385                 :   /* void beginPath (); */
     386                 :   NS_SCRIPTABLE NS_IMETHOD BeginPath(void) = 0;
     387                 : 
     388                 :   /* void closePath (); */
     389                 :   NS_SCRIPTABLE NS_IMETHOD ClosePath(void) = 0;
     390                 : 
     391                 :   /* void moveTo (in float x, in float y); */
     392                 :   NS_SCRIPTABLE NS_IMETHOD MoveTo(float x, float y) = 0;
     393                 : 
     394                 :   /* void lineTo (in float x, in float y); */
     395                 :   NS_SCRIPTABLE NS_IMETHOD LineTo(float x, float y) = 0;
     396                 : 
     397                 :   /* void quadraticCurveTo (in float cpx, in float cpy, in float x, in float y); */
     398                 :   NS_SCRIPTABLE NS_IMETHOD QuadraticCurveTo(float cpx, float cpy, float x, float y) = 0;
     399                 : 
     400                 :   /* void bezierCurveTo (in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y); */
     401                 :   NS_SCRIPTABLE NS_IMETHOD BezierCurveTo(float cp1x, float cp1y, float cp2x, float cp2y, float x, float y) = 0;
     402                 : 
     403                 :   /* void arcTo (in float x1, in float y1, in float x2, in float y2, in float radius); */
     404                 :   NS_SCRIPTABLE NS_IMETHOD ArcTo(float x1, float y1, float x2, float y2, float radius) = 0;
     405                 : 
     406                 :   /* void arc (in float x, in float y, in float r, in float startAngle, in float endAngle, [optional] in boolean anticlockwise); */
     407                 :   NS_SCRIPTABLE NS_IMETHOD Arc(float x, float y, float r, float startAngle, float endAngle, bool anticlockwise) = 0;
     408                 : 
     409                 :   /* void rect (in float x, in float y, in float w, in float h); */
     410                 :   NS_SCRIPTABLE NS_IMETHOD Rect(float x, float y, float w, float h) = 0;
     411                 : 
     412                 :   /* void fill (); */
     413                 :   NS_SCRIPTABLE NS_IMETHOD Fill(void) = 0;
     414                 : 
     415                 :   /* void stroke (); */
     416                 :   NS_SCRIPTABLE NS_IMETHOD Stroke(void) = 0;
     417                 : 
     418                 :   /* void clip (); */
     419                 :   NS_SCRIPTABLE NS_IMETHOD Clip(void) = 0;
     420                 : 
     421                 :   /* attribute DOMString font; */
     422                 :   NS_SCRIPTABLE NS_IMETHOD GetFont(nsAString & aFont) = 0;
     423                 :   NS_SCRIPTABLE NS_IMETHOD SetFont(const nsAString & aFont) = 0;
     424                 : 
     425                 :   /* attribute DOMString textAlign; */
     426                 :   NS_SCRIPTABLE NS_IMETHOD GetTextAlign(nsAString & aTextAlign) = 0;
     427                 :   NS_SCRIPTABLE NS_IMETHOD SetTextAlign(const nsAString & aTextAlign) = 0;
     428                 : 
     429                 :   /* attribute DOMString textBaseline; */
     430                 :   NS_SCRIPTABLE NS_IMETHOD GetTextBaseline(nsAString & aTextBaseline) = 0;
     431                 :   NS_SCRIPTABLE NS_IMETHOD SetTextBaseline(const nsAString & aTextBaseline) = 0;
     432                 : 
     433                 :   /* void fillText (in DOMString text, in float x, in float y, [optional] in float maxWidth); */
     434                 :   NS_SCRIPTABLE NS_IMETHOD FillText(const nsAString & text, float x, float y, float maxWidth) = 0;
     435                 : 
     436                 :   /* void strokeText (in DOMString text, in float x, in float y, [optional] in float maxWidth); */
     437                 :   NS_SCRIPTABLE NS_IMETHOD StrokeText(const nsAString & text, float x, float y, float maxWidth) = 0;
     438                 : 
     439                 :   /* nsIDOMTextMetrics measureText (in DOMString text); */
     440                 :   NS_SCRIPTABLE NS_IMETHOD MeasureText(const nsAString & text, nsIDOMTextMetrics * *_retval NS_OUTPARAM) = 0;
     441                 : 
     442                 :   /* attribute DOMString mozTextStyle; */
     443                 :   NS_SCRIPTABLE NS_IMETHOD GetMozTextStyle(nsAString & aMozTextStyle) = 0;
     444                 :   NS_SCRIPTABLE NS_IMETHOD SetMozTextStyle(const nsAString & aMozTextStyle) = 0;
     445                 : 
     446                 :   /* [optional_argc] void drawImage (in nsIDOMElement image, in float a1, in float a2, [optional] in float a3, [optional] in float a4, [optional] in float a5, [optional] in float a6, [optional] in float a7, [optional] in float a8); */
     447                 :   NS_SCRIPTABLE NS_IMETHOD DrawImage(nsIDOMElement *image, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, PRUint8 _argc) = 0;
     448                 : 
     449                 :   /* boolean isPointInPath (in float x, in float y); */
     450                 :   NS_SCRIPTABLE NS_IMETHOD IsPointInPath(float x, float y, bool *_retval NS_OUTPARAM) = 0;
     451                 : 
     452                 :   /* void getImageData (); */
     453                 :   NS_SCRIPTABLE NS_IMETHOD GetImageData(void) = 0;
     454                 : 
     455                 :   /* void putImageData (); */
     456                 :   NS_SCRIPTABLE NS_IMETHOD PutImageData(void) = 0;
     457                 : 
     458                 :   /* [noscript] void getImageData_explicit (in long x, in long y, in unsigned long width, in unsigned long height, [array, size_is (dataLen)] in octet dataPtr, in unsigned long dataLen); */
     459                 :   NS_IMETHOD GetImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen) = 0;
     460                 : 
     461                 :   /* [noscript] void putImageData_explicit (in long x, in long y, in unsigned long width, in unsigned long height, [array, size_is (dataLen)] in octet dataPtr, in unsigned long dataLen, in boolean hasDirtyRect, in long dirtyX, in long dirtyY, in long dirtyWidth, in long dirtyHeight); */
     462                 :   NS_IMETHOD PutImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen, bool hasDirtyRect, PRInt32 dirtyX, PRInt32 dirtyY, PRInt32 dirtyWidth, PRInt32 dirtyHeight) = 0;
     463                 : 
     464                 :   /* void createImageData (); */
     465                 :   NS_SCRIPTABLE NS_IMETHOD CreateImageData(void) = 0;
     466                 : 
     467                 :   /* attribute boolean mozImageSmoothingEnabled; */
     468                 :   NS_SCRIPTABLE NS_IMETHOD GetMozImageSmoothingEnabled(bool *aMozImageSmoothingEnabled) = 0;
     469                 :   NS_SCRIPTABLE NS_IMETHOD SetMozImageSmoothingEnabled(bool aMozImageSmoothingEnabled) = 0;
     470                 : 
     471                 :   enum {
     472                 :     DRAWWINDOW_DRAW_CARET = 1U,
     473                 :     DRAWWINDOW_DO_NOT_FLUSH = 2U,
     474                 :     DRAWWINDOW_DRAW_VIEW = 4U,
     475                 :     DRAWWINDOW_USE_WIDGET_LAYERS = 8U,
     476                 :     DRAWWINDOW_ASYNC_DECODE_IMAGES = 16U
     477                 :   };
     478                 : 
     479                 :   /* void drawWindow (in nsIDOMWindow window, in float x, in float y, in float w, in float h, in DOMString bgColor, [optional] in unsigned long flags); */
     480                 :   NS_SCRIPTABLE NS_IMETHOD DrawWindow(nsIDOMWindow *window, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) = 0;
     481                 : 
     482                 :   /* void asyncDrawXULElement (in nsIDOMXULElement elem, in float x, in float y, in float w, in float h, in DOMString bgColor, [optional] in unsigned long flags); */
     483                 :   NS_SCRIPTABLE NS_IMETHOD AsyncDrawXULElement(nsIDOMXULElement *elem, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) = 0;
     484                 : 
     485                 : };
     486                 : 
     487                 :   NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMCanvasRenderingContext2D, NS_IDOMCANVASRENDERINGCONTEXT2D_IID)
     488                 : 
     489                 : /* Use this macro when declaring classes that implement this interface. */
     490                 : #define NS_DECL_NSIDOMCANVASRENDERINGCONTEXT2D \
     491                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas); \
     492                 :   NS_SCRIPTABLE NS_IMETHOD Save(void); \
     493                 :   NS_SCRIPTABLE NS_IMETHOD Restore(void); \
     494                 :   NS_SCRIPTABLE NS_IMETHOD Scale(float x, float y); \
     495                 :   NS_SCRIPTABLE NS_IMETHOD Rotate(float angle); \
     496                 :   NS_SCRIPTABLE NS_IMETHOD Translate(float x, float y); \
     497                 :   NS_SCRIPTABLE NS_IMETHOD Transform(float m11, float m12, float m21, float m22, float dx, float dy); \
     498                 :   NS_SCRIPTABLE NS_IMETHOD SetTransform(float m11, float m12, float m21, float m22, float dx, float dy); \
     499                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransform(JSContext* cx, JS::Value *aMozCurrentTransform); \
     500                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransform(JSContext* cx, const JS::Value & aMozCurrentTransform); \
     501                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransformInverse(JSContext* cx, JS::Value *aMozCurrentTransformInverse); \
     502                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransformInverse(JSContext* cx, const JS::Value & aMozCurrentTransformInverse); \
     503                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalAlpha(float *aGlobalAlpha); \
     504                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalAlpha(float aGlobalAlpha); \
     505                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalCompositeOperation(nsAString & aGlobalCompositeOperation); \
     506                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalCompositeOperation(const nsAString & aGlobalCompositeOperation); \
     507                 :   NS_SCRIPTABLE NS_IMETHOD GetStrokeStyle(nsIVariant * *aStrokeStyle); \
     508                 :   NS_SCRIPTABLE NS_IMETHOD SetStrokeStyle(nsIVariant *aStrokeStyle); \
     509                 :   NS_SCRIPTABLE NS_IMETHOD GetFillStyle(nsIVariant * *aFillStyle); \
     510                 :   NS_SCRIPTABLE NS_IMETHOD SetFillStyle(nsIVariant *aFillStyle); \
     511                 :   NS_IMETHOD SetStrokeStyle_multi(const nsAString & str, nsISupports *iface); \
     512                 :   NS_IMETHOD GetStrokeStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM); \
     513                 :   NS_IMETHOD SetFillStyle_multi(const nsAString & str, nsISupports *iface); \
     514                 :   NS_IMETHOD GetFillStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM); \
     515                 :   NS_SCRIPTABLE NS_IMETHOD GetMozFillRule(nsAString & aMozFillRule); \
     516                 :   NS_SCRIPTABLE NS_IMETHOD SetMozFillRule(const nsAString & aMozFillRule); \
     517                 :   NS_SCRIPTABLE NS_IMETHOD CreateLinearGradient(float x0, float y0, float x1, float y1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM); \
     518                 :   NS_SCRIPTABLE NS_IMETHOD CreateRadialGradient(float x0, float y0, float r0, float x1, float y1, float r1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM); \
     519                 :   NS_SCRIPTABLE NS_IMETHOD CreatePattern(nsIDOMHTMLElement *image, const nsAString & repetition, nsIDOMCanvasPattern * *_retval NS_OUTPARAM); \
     520                 :   NS_SCRIPTABLE NS_IMETHOD GetLineWidth(float *aLineWidth); \
     521                 :   NS_SCRIPTABLE NS_IMETHOD SetLineWidth(float aLineWidth); \
     522                 :   NS_SCRIPTABLE NS_IMETHOD GetLineCap(nsAString & aLineCap); \
     523                 :   NS_SCRIPTABLE NS_IMETHOD SetLineCap(const nsAString & aLineCap); \
     524                 :   NS_SCRIPTABLE NS_IMETHOD GetLineJoin(nsAString & aLineJoin); \
     525                 :   NS_SCRIPTABLE NS_IMETHOD SetLineJoin(const nsAString & aLineJoin); \
     526                 :   NS_SCRIPTABLE NS_IMETHOD GetMiterLimit(float *aMiterLimit); \
     527                 :   NS_SCRIPTABLE NS_IMETHOD SetMiterLimit(float aMiterLimit); \
     528                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDash(JSContext* cx, JS::Value *aMozDash); \
     529                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDash(JSContext* cx, const JS::Value & aMozDash); \
     530                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDashOffset(float *aMozDashOffset); \
     531                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDashOffset(float aMozDashOffset); \
     532                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetX(float *aShadowOffsetX); \
     533                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetX(float aShadowOffsetX); \
     534                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetY(float *aShadowOffsetY); \
     535                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetY(float aShadowOffsetY); \
     536                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowBlur(float *aShadowBlur); \
     537                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowBlur(float aShadowBlur); \
     538                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowColor(nsAString & aShadowColor); \
     539                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowColor(const nsAString & aShadowColor); \
     540                 :   NS_SCRIPTABLE NS_IMETHOD ClearRect(float x, float y, float w, float h); \
     541                 :   NS_SCRIPTABLE NS_IMETHOD FillRect(float x, float y, float w, float h); \
     542                 :   NS_SCRIPTABLE NS_IMETHOD StrokeRect(float x, float y, float w, float h); \
     543                 :   NS_SCRIPTABLE NS_IMETHOD BeginPath(void); \
     544                 :   NS_SCRIPTABLE NS_IMETHOD ClosePath(void); \
     545                 :   NS_SCRIPTABLE NS_IMETHOD MoveTo(float x, float y); \
     546                 :   NS_SCRIPTABLE NS_IMETHOD LineTo(float x, float y); \
     547                 :   NS_SCRIPTABLE NS_IMETHOD QuadraticCurveTo(float cpx, float cpy, float x, float y); \
     548                 :   NS_SCRIPTABLE NS_IMETHOD BezierCurveTo(float cp1x, float cp1y, float cp2x, float cp2y, float x, float y); \
     549                 :   NS_SCRIPTABLE NS_IMETHOD ArcTo(float x1, float y1, float x2, float y2, float radius); \
     550                 :   NS_SCRIPTABLE NS_IMETHOD Arc(float x, float y, float r, float startAngle, float endAngle, bool anticlockwise); \
     551                 :   NS_SCRIPTABLE NS_IMETHOD Rect(float x, float y, float w, float h); \
     552                 :   NS_SCRIPTABLE NS_IMETHOD Fill(void); \
     553                 :   NS_SCRIPTABLE NS_IMETHOD Stroke(void); \
     554                 :   NS_SCRIPTABLE NS_IMETHOD Clip(void); \
     555                 :   NS_SCRIPTABLE NS_IMETHOD GetFont(nsAString & aFont); \
     556                 :   NS_SCRIPTABLE NS_IMETHOD SetFont(const nsAString & aFont); \
     557                 :   NS_SCRIPTABLE NS_IMETHOD GetTextAlign(nsAString & aTextAlign); \
     558                 :   NS_SCRIPTABLE NS_IMETHOD SetTextAlign(const nsAString & aTextAlign); \
     559                 :   NS_SCRIPTABLE NS_IMETHOD GetTextBaseline(nsAString & aTextBaseline); \
     560                 :   NS_SCRIPTABLE NS_IMETHOD SetTextBaseline(const nsAString & aTextBaseline); \
     561                 :   NS_SCRIPTABLE NS_IMETHOD FillText(const nsAString & text, float x, float y, float maxWidth); \
     562                 :   NS_SCRIPTABLE NS_IMETHOD StrokeText(const nsAString & text, float x, float y, float maxWidth); \
     563                 :   NS_SCRIPTABLE NS_IMETHOD MeasureText(const nsAString & text, nsIDOMTextMetrics * *_retval NS_OUTPARAM); \
     564                 :   NS_SCRIPTABLE NS_IMETHOD GetMozTextStyle(nsAString & aMozTextStyle); \
     565                 :   NS_SCRIPTABLE NS_IMETHOD SetMozTextStyle(const nsAString & aMozTextStyle); \
     566                 :   NS_SCRIPTABLE NS_IMETHOD DrawImage(nsIDOMElement *image, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, PRUint8 _argc); \
     567                 :   NS_SCRIPTABLE NS_IMETHOD IsPointInPath(float x, float y, bool *_retval NS_OUTPARAM); \
     568                 :   NS_SCRIPTABLE NS_IMETHOD GetImageData(void); \
     569                 :   NS_SCRIPTABLE NS_IMETHOD PutImageData(void); \
     570                 :   NS_IMETHOD GetImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen); \
     571                 :   NS_IMETHOD PutImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen, bool hasDirtyRect, PRInt32 dirtyX, PRInt32 dirtyY, PRInt32 dirtyWidth, PRInt32 dirtyHeight); \
     572                 :   NS_SCRIPTABLE NS_IMETHOD CreateImageData(void); \
     573                 :   NS_SCRIPTABLE NS_IMETHOD GetMozImageSmoothingEnabled(bool *aMozImageSmoothingEnabled); \
     574                 :   NS_SCRIPTABLE NS_IMETHOD SetMozImageSmoothingEnabled(bool aMozImageSmoothingEnabled); \
     575                 :   NS_SCRIPTABLE NS_IMETHOD DrawWindow(nsIDOMWindow *window, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags); \
     576                 :   NS_SCRIPTABLE NS_IMETHOD AsyncDrawXULElement(nsIDOMXULElement *elem, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags); 
     577                 : 
     578                 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
     579                 : #define NS_FORWARD_NSIDOMCANVASRENDERINGCONTEXT2D(_to) \
     580                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) { return _to GetCanvas(aCanvas); } \
     581                 :   NS_SCRIPTABLE NS_IMETHOD Save(void) { return _to Save(); } \
     582                 :   NS_SCRIPTABLE NS_IMETHOD Restore(void) { return _to Restore(); } \
     583                 :   NS_SCRIPTABLE NS_IMETHOD Scale(float x, float y) { return _to Scale(x, y); } \
     584                 :   NS_SCRIPTABLE NS_IMETHOD Rotate(float angle) { return _to Rotate(angle); } \
     585                 :   NS_SCRIPTABLE NS_IMETHOD Translate(float x, float y) { return _to Translate(x, y); } \
     586                 :   NS_SCRIPTABLE NS_IMETHOD Transform(float m11, float m12, float m21, float m22, float dx, float dy) { return _to Transform(m11, m12, m21, m22, dx, dy); } \
     587                 :   NS_SCRIPTABLE NS_IMETHOD SetTransform(float m11, float m12, float m21, float m22, float dx, float dy) { return _to SetTransform(m11, m12, m21, m22, dx, dy); } \
     588                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransform(JSContext* cx, JS::Value *aMozCurrentTransform) { return _to GetMozCurrentTransform(cx, aMozCurrentTransform); } \
     589                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransform(JSContext* cx, const JS::Value & aMozCurrentTransform) { return _to SetMozCurrentTransform(cx, aMozCurrentTransform); } \
     590                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransformInverse(JSContext* cx, JS::Value *aMozCurrentTransformInverse) { return _to GetMozCurrentTransformInverse(cx, aMozCurrentTransformInverse); } \
     591                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransformInverse(JSContext* cx, const JS::Value & aMozCurrentTransformInverse) { return _to SetMozCurrentTransformInverse(cx, aMozCurrentTransformInverse); } \
     592                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalAlpha(float *aGlobalAlpha) { return _to GetGlobalAlpha(aGlobalAlpha); } \
     593                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalAlpha(float aGlobalAlpha) { return _to SetGlobalAlpha(aGlobalAlpha); } \
     594                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalCompositeOperation(nsAString & aGlobalCompositeOperation) { return _to GetGlobalCompositeOperation(aGlobalCompositeOperation); } \
     595                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalCompositeOperation(const nsAString & aGlobalCompositeOperation) { return _to SetGlobalCompositeOperation(aGlobalCompositeOperation); } \
     596                 :   NS_SCRIPTABLE NS_IMETHOD GetStrokeStyle(nsIVariant * *aStrokeStyle) { return _to GetStrokeStyle(aStrokeStyle); } \
     597                 :   NS_SCRIPTABLE NS_IMETHOD SetStrokeStyle(nsIVariant *aStrokeStyle) { return _to SetStrokeStyle(aStrokeStyle); } \
     598                 :   NS_SCRIPTABLE NS_IMETHOD GetFillStyle(nsIVariant * *aFillStyle) { return _to GetFillStyle(aFillStyle); } \
     599                 :   NS_SCRIPTABLE NS_IMETHOD SetFillStyle(nsIVariant *aFillStyle) { return _to SetFillStyle(aFillStyle); } \
     600                 :   NS_IMETHOD SetStrokeStyle_multi(const nsAString & str, nsISupports *iface) { return _to SetStrokeStyle_multi(str, iface); } \
     601                 :   NS_IMETHOD GetStrokeStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) { return _to GetStrokeStyle_multi(str, iface, type); } \
     602                 :   NS_IMETHOD SetFillStyle_multi(const nsAString & str, nsISupports *iface) { return _to SetFillStyle_multi(str, iface); } \
     603                 :   NS_IMETHOD GetFillStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) { return _to GetFillStyle_multi(str, iface, type); } \
     604                 :   NS_SCRIPTABLE NS_IMETHOD GetMozFillRule(nsAString & aMozFillRule) { return _to GetMozFillRule(aMozFillRule); } \
     605                 :   NS_SCRIPTABLE NS_IMETHOD SetMozFillRule(const nsAString & aMozFillRule) { return _to SetMozFillRule(aMozFillRule); } \
     606                 :   NS_SCRIPTABLE NS_IMETHOD CreateLinearGradient(float x0, float y0, float x1, float y1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) { return _to CreateLinearGradient(x0, y0, x1, y1, _retval); } \
     607                 :   NS_SCRIPTABLE NS_IMETHOD CreateRadialGradient(float x0, float y0, float r0, float x1, float y1, float r1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) { return _to CreateRadialGradient(x0, y0, r0, x1, y1, r1, _retval); } \
     608                 :   NS_SCRIPTABLE NS_IMETHOD CreatePattern(nsIDOMHTMLElement *image, const nsAString & repetition, nsIDOMCanvasPattern * *_retval NS_OUTPARAM) { return _to CreatePattern(image, repetition, _retval); } \
     609                 :   NS_SCRIPTABLE NS_IMETHOD GetLineWidth(float *aLineWidth) { return _to GetLineWidth(aLineWidth); } \
     610                 :   NS_SCRIPTABLE NS_IMETHOD SetLineWidth(float aLineWidth) { return _to SetLineWidth(aLineWidth); } \
     611                 :   NS_SCRIPTABLE NS_IMETHOD GetLineCap(nsAString & aLineCap) { return _to GetLineCap(aLineCap); } \
     612                 :   NS_SCRIPTABLE NS_IMETHOD SetLineCap(const nsAString & aLineCap) { return _to SetLineCap(aLineCap); } \
     613                 :   NS_SCRIPTABLE NS_IMETHOD GetLineJoin(nsAString & aLineJoin) { return _to GetLineJoin(aLineJoin); } \
     614                 :   NS_SCRIPTABLE NS_IMETHOD SetLineJoin(const nsAString & aLineJoin) { return _to SetLineJoin(aLineJoin); } \
     615                 :   NS_SCRIPTABLE NS_IMETHOD GetMiterLimit(float *aMiterLimit) { return _to GetMiterLimit(aMiterLimit); } \
     616                 :   NS_SCRIPTABLE NS_IMETHOD SetMiterLimit(float aMiterLimit) { return _to SetMiterLimit(aMiterLimit); } \
     617                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDash(JSContext* cx, JS::Value *aMozDash) { return _to GetMozDash(cx, aMozDash); } \
     618                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDash(JSContext* cx, const JS::Value & aMozDash) { return _to SetMozDash(cx, aMozDash); } \
     619                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDashOffset(float *aMozDashOffset) { return _to GetMozDashOffset(aMozDashOffset); } \
     620                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDashOffset(float aMozDashOffset) { return _to SetMozDashOffset(aMozDashOffset); } \
     621                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetX(float *aShadowOffsetX) { return _to GetShadowOffsetX(aShadowOffsetX); } \
     622                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetX(float aShadowOffsetX) { return _to SetShadowOffsetX(aShadowOffsetX); } \
     623                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetY(float *aShadowOffsetY) { return _to GetShadowOffsetY(aShadowOffsetY); } \
     624                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetY(float aShadowOffsetY) { return _to SetShadowOffsetY(aShadowOffsetY); } \
     625                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowBlur(float *aShadowBlur) { return _to GetShadowBlur(aShadowBlur); } \
     626                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowBlur(float aShadowBlur) { return _to SetShadowBlur(aShadowBlur); } \
     627                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowColor(nsAString & aShadowColor) { return _to GetShadowColor(aShadowColor); } \
     628                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowColor(const nsAString & aShadowColor) { return _to SetShadowColor(aShadowColor); } \
     629                 :   NS_SCRIPTABLE NS_IMETHOD ClearRect(float x, float y, float w, float h) { return _to ClearRect(x, y, w, h); } \
     630                 :   NS_SCRIPTABLE NS_IMETHOD FillRect(float x, float y, float w, float h) { return _to FillRect(x, y, w, h); } \
     631                 :   NS_SCRIPTABLE NS_IMETHOD StrokeRect(float x, float y, float w, float h) { return _to StrokeRect(x, y, w, h); } \
     632                 :   NS_SCRIPTABLE NS_IMETHOD BeginPath(void) { return _to BeginPath(); } \
     633                 :   NS_SCRIPTABLE NS_IMETHOD ClosePath(void) { return _to ClosePath(); } \
     634                 :   NS_SCRIPTABLE NS_IMETHOD MoveTo(float x, float y) { return _to MoveTo(x, y); } \
     635                 :   NS_SCRIPTABLE NS_IMETHOD LineTo(float x, float y) { return _to LineTo(x, y); } \
     636                 :   NS_SCRIPTABLE NS_IMETHOD QuadraticCurveTo(float cpx, float cpy, float x, float y) { return _to QuadraticCurveTo(cpx, cpy, x, y); } \
     637                 :   NS_SCRIPTABLE NS_IMETHOD BezierCurveTo(float cp1x, float cp1y, float cp2x, float cp2y, float x, float y) { return _to BezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y); } \
     638                 :   NS_SCRIPTABLE NS_IMETHOD ArcTo(float x1, float y1, float x2, float y2, float radius) { return _to ArcTo(x1, y1, x2, y2, radius); } \
     639                 :   NS_SCRIPTABLE NS_IMETHOD Arc(float x, float y, float r, float startAngle, float endAngle, bool anticlockwise) { return _to Arc(x, y, r, startAngle, endAngle, anticlockwise); } \
     640                 :   NS_SCRIPTABLE NS_IMETHOD Rect(float x, float y, float w, float h) { return _to Rect(x, y, w, h); } \
     641                 :   NS_SCRIPTABLE NS_IMETHOD Fill(void) { return _to Fill(); } \
     642                 :   NS_SCRIPTABLE NS_IMETHOD Stroke(void) { return _to Stroke(); } \
     643                 :   NS_SCRIPTABLE NS_IMETHOD Clip(void) { return _to Clip(); } \
     644                 :   NS_SCRIPTABLE NS_IMETHOD GetFont(nsAString & aFont) { return _to GetFont(aFont); } \
     645                 :   NS_SCRIPTABLE NS_IMETHOD SetFont(const nsAString & aFont) { return _to SetFont(aFont); } \
     646                 :   NS_SCRIPTABLE NS_IMETHOD GetTextAlign(nsAString & aTextAlign) { return _to GetTextAlign(aTextAlign); } \
     647                 :   NS_SCRIPTABLE NS_IMETHOD SetTextAlign(const nsAString & aTextAlign) { return _to SetTextAlign(aTextAlign); } \
     648                 :   NS_SCRIPTABLE NS_IMETHOD GetTextBaseline(nsAString & aTextBaseline) { return _to GetTextBaseline(aTextBaseline); } \
     649                 :   NS_SCRIPTABLE NS_IMETHOD SetTextBaseline(const nsAString & aTextBaseline) { return _to SetTextBaseline(aTextBaseline); } \
     650                 :   NS_SCRIPTABLE NS_IMETHOD FillText(const nsAString & text, float x, float y, float maxWidth) { return _to FillText(text, x, y, maxWidth); } \
     651                 :   NS_SCRIPTABLE NS_IMETHOD StrokeText(const nsAString & text, float x, float y, float maxWidth) { return _to StrokeText(text, x, y, maxWidth); } \
     652                 :   NS_SCRIPTABLE NS_IMETHOD MeasureText(const nsAString & text, nsIDOMTextMetrics * *_retval NS_OUTPARAM) { return _to MeasureText(text, _retval); } \
     653                 :   NS_SCRIPTABLE NS_IMETHOD GetMozTextStyle(nsAString & aMozTextStyle) { return _to GetMozTextStyle(aMozTextStyle); } \
     654                 :   NS_SCRIPTABLE NS_IMETHOD SetMozTextStyle(const nsAString & aMozTextStyle) { return _to SetMozTextStyle(aMozTextStyle); } \
     655                 :   NS_SCRIPTABLE NS_IMETHOD DrawImage(nsIDOMElement *image, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, PRUint8 _argc) { return _to DrawImage(image, a1, a2, a3, a4, a5, a6, a7, a8, _argc); } \
     656                 :   NS_SCRIPTABLE NS_IMETHOD IsPointInPath(float x, float y, bool *_retval NS_OUTPARAM) { return _to IsPointInPath(x, y, _retval); } \
     657                 :   NS_SCRIPTABLE NS_IMETHOD GetImageData(void) { return _to GetImageData(); } \
     658                 :   NS_SCRIPTABLE NS_IMETHOD PutImageData(void) { return _to PutImageData(); } \
     659                 :   NS_IMETHOD GetImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen) { return _to GetImageData_explicit(x, y, width, height, dataPtr, dataLen); } \
     660                 :   NS_IMETHOD PutImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen, bool hasDirtyRect, PRInt32 dirtyX, PRInt32 dirtyY, PRInt32 dirtyWidth, PRInt32 dirtyHeight) { return _to PutImageData_explicit(x, y, width, height, dataPtr, dataLen, hasDirtyRect, dirtyX, dirtyY, dirtyWidth, dirtyHeight); } \
     661                 :   NS_SCRIPTABLE NS_IMETHOD CreateImageData(void) { return _to CreateImageData(); } \
     662                 :   NS_SCRIPTABLE NS_IMETHOD GetMozImageSmoothingEnabled(bool *aMozImageSmoothingEnabled) { return _to GetMozImageSmoothingEnabled(aMozImageSmoothingEnabled); } \
     663                 :   NS_SCRIPTABLE NS_IMETHOD SetMozImageSmoothingEnabled(bool aMozImageSmoothingEnabled) { return _to SetMozImageSmoothingEnabled(aMozImageSmoothingEnabled); } \
     664                 :   NS_SCRIPTABLE NS_IMETHOD DrawWindow(nsIDOMWindow *window, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) { return _to DrawWindow(window, x, y, w, h, bgColor, flags); } \
     665                 :   NS_SCRIPTABLE NS_IMETHOD AsyncDrawXULElement(nsIDOMXULElement *elem, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) { return _to AsyncDrawXULElement(elem, x, y, w, h, bgColor, flags); } 
     666                 : 
     667                 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
     668                 : #define NS_FORWARD_SAFE_NSIDOMCANVASRENDERINGCONTEXT2D(_to) \
     669                 :   NS_SCRIPTABLE NS_IMETHOD GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCanvas(aCanvas); } \
     670                 :   NS_SCRIPTABLE NS_IMETHOD Save(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Save(); } \
     671                 :   NS_SCRIPTABLE NS_IMETHOD Restore(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Restore(); } \
     672                 :   NS_SCRIPTABLE NS_IMETHOD Scale(float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->Scale(x, y); } \
     673                 :   NS_SCRIPTABLE NS_IMETHOD Rotate(float angle) { return !_to ? NS_ERROR_NULL_POINTER : _to->Rotate(angle); } \
     674                 :   NS_SCRIPTABLE NS_IMETHOD Translate(float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->Translate(x, y); } \
     675                 :   NS_SCRIPTABLE NS_IMETHOD Transform(float m11, float m12, float m21, float m22, float dx, float dy) { return !_to ? NS_ERROR_NULL_POINTER : _to->Transform(m11, m12, m21, m22, dx, dy); } \
     676                 :   NS_SCRIPTABLE NS_IMETHOD SetTransform(float m11, float m12, float m21, float m22, float dx, float dy) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTransform(m11, m12, m21, m22, dx, dy); } \
     677                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransform(JSContext* cx, JS::Value *aMozCurrentTransform) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozCurrentTransform(cx, aMozCurrentTransform); } \
     678                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransform(JSContext* cx, const JS::Value & aMozCurrentTransform) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozCurrentTransform(cx, aMozCurrentTransform); } \
     679                 :   NS_SCRIPTABLE NS_IMETHOD GetMozCurrentTransformInverse(JSContext* cx, JS::Value *aMozCurrentTransformInverse) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozCurrentTransformInverse(cx, aMozCurrentTransformInverse); } \
     680                 :   NS_SCRIPTABLE NS_IMETHOD SetMozCurrentTransformInverse(JSContext* cx, const JS::Value & aMozCurrentTransformInverse) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozCurrentTransformInverse(cx, aMozCurrentTransformInverse); } \
     681                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalAlpha(float *aGlobalAlpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGlobalAlpha(aGlobalAlpha); } \
     682                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalAlpha(float aGlobalAlpha) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGlobalAlpha(aGlobalAlpha); } \
     683                 :   NS_SCRIPTABLE NS_IMETHOD GetGlobalCompositeOperation(nsAString & aGlobalCompositeOperation) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetGlobalCompositeOperation(aGlobalCompositeOperation); } \
     684                 :   NS_SCRIPTABLE NS_IMETHOD SetGlobalCompositeOperation(const nsAString & aGlobalCompositeOperation) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetGlobalCompositeOperation(aGlobalCompositeOperation); } \
     685                 :   NS_SCRIPTABLE NS_IMETHOD GetStrokeStyle(nsIVariant * *aStrokeStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrokeStyle(aStrokeStyle); } \
     686                 :   NS_SCRIPTABLE NS_IMETHOD SetStrokeStyle(nsIVariant *aStrokeStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStrokeStyle(aStrokeStyle); } \
     687                 :   NS_SCRIPTABLE NS_IMETHOD GetFillStyle(nsIVariant * *aFillStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFillStyle(aFillStyle); } \
     688                 :   NS_SCRIPTABLE NS_IMETHOD SetFillStyle(nsIVariant *aFillStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFillStyle(aFillStyle); } \
     689                 :   NS_IMETHOD SetStrokeStyle_multi(const nsAString & str, nsISupports *iface) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetStrokeStyle_multi(str, iface); } \
     690                 :   NS_IMETHOD GetStrokeStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStrokeStyle_multi(str, iface, type); } \
     691                 :   NS_IMETHOD SetFillStyle_multi(const nsAString & str, nsISupports *iface) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFillStyle_multi(str, iface); } \
     692                 :   NS_IMETHOD GetFillStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFillStyle_multi(str, iface, type); } \
     693                 :   NS_SCRIPTABLE NS_IMETHOD GetMozFillRule(nsAString & aMozFillRule) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozFillRule(aMozFillRule); } \
     694                 :   NS_SCRIPTABLE NS_IMETHOD SetMozFillRule(const nsAString & aMozFillRule) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozFillRule(aMozFillRule); } \
     695                 :   NS_SCRIPTABLE NS_IMETHOD CreateLinearGradient(float x0, float y0, float x1, float y1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateLinearGradient(x0, y0, x1, y1, _retval); } \
     696                 :   NS_SCRIPTABLE NS_IMETHOD CreateRadialGradient(float x0, float y0, float r0, float x1, float y1, float r1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateRadialGradient(x0, y0, r0, x1, y1, r1, _retval); } \
     697                 :   NS_SCRIPTABLE NS_IMETHOD CreatePattern(nsIDOMHTMLElement *image, const nsAString & repetition, nsIDOMCanvasPattern * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreatePattern(image, repetition, _retval); } \
     698                 :   NS_SCRIPTABLE NS_IMETHOD GetLineWidth(float *aLineWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLineWidth(aLineWidth); } \
     699                 :   NS_SCRIPTABLE NS_IMETHOD SetLineWidth(float aLineWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLineWidth(aLineWidth); } \
     700                 :   NS_SCRIPTABLE NS_IMETHOD GetLineCap(nsAString & aLineCap) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLineCap(aLineCap); } \
     701                 :   NS_SCRIPTABLE NS_IMETHOD SetLineCap(const nsAString & aLineCap) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLineCap(aLineCap); } \
     702                 :   NS_SCRIPTABLE NS_IMETHOD GetLineJoin(nsAString & aLineJoin) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLineJoin(aLineJoin); } \
     703                 :   NS_SCRIPTABLE NS_IMETHOD SetLineJoin(const nsAString & aLineJoin) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetLineJoin(aLineJoin); } \
     704                 :   NS_SCRIPTABLE NS_IMETHOD GetMiterLimit(float *aMiterLimit) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMiterLimit(aMiterLimit); } \
     705                 :   NS_SCRIPTABLE NS_IMETHOD SetMiterLimit(float aMiterLimit) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMiterLimit(aMiterLimit); } \
     706                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDash(JSContext* cx, JS::Value *aMozDash) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozDash(cx, aMozDash); } \
     707                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDash(JSContext* cx, const JS::Value & aMozDash) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozDash(cx, aMozDash); } \
     708                 :   NS_SCRIPTABLE NS_IMETHOD GetMozDashOffset(float *aMozDashOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozDashOffset(aMozDashOffset); } \
     709                 :   NS_SCRIPTABLE NS_IMETHOD SetMozDashOffset(float aMozDashOffset) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozDashOffset(aMozDashOffset); } \
     710                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetX(float *aShadowOffsetX) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShadowOffsetX(aShadowOffsetX); } \
     711                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetX(float aShadowOffsetX) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetShadowOffsetX(aShadowOffsetX); } \
     712                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowOffsetY(float *aShadowOffsetY) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShadowOffsetY(aShadowOffsetY); } \
     713                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowOffsetY(float aShadowOffsetY) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetShadowOffsetY(aShadowOffsetY); } \
     714                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowBlur(float *aShadowBlur) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShadowBlur(aShadowBlur); } \
     715                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowBlur(float aShadowBlur) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetShadowBlur(aShadowBlur); } \
     716                 :   NS_SCRIPTABLE NS_IMETHOD GetShadowColor(nsAString & aShadowColor) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetShadowColor(aShadowColor); } \
     717                 :   NS_SCRIPTABLE NS_IMETHOD SetShadowColor(const nsAString & aShadowColor) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetShadowColor(aShadowColor); } \
     718                 :   NS_SCRIPTABLE NS_IMETHOD ClearRect(float x, float y, float w, float h) { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearRect(x, y, w, h); } \
     719                 :   NS_SCRIPTABLE NS_IMETHOD FillRect(float x, float y, float w, float h) { return !_to ? NS_ERROR_NULL_POINTER : _to->FillRect(x, y, w, h); } \
     720                 :   NS_SCRIPTABLE NS_IMETHOD StrokeRect(float x, float y, float w, float h) { return !_to ? NS_ERROR_NULL_POINTER : _to->StrokeRect(x, y, w, h); } \
     721                 :   NS_SCRIPTABLE NS_IMETHOD BeginPath(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->BeginPath(); } \
     722                 :   NS_SCRIPTABLE NS_IMETHOD ClosePath(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->ClosePath(); } \
     723                 :   NS_SCRIPTABLE NS_IMETHOD MoveTo(float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->MoveTo(x, y); } \
     724                 :   NS_SCRIPTABLE NS_IMETHOD LineTo(float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->LineTo(x, y); } \
     725                 :   NS_SCRIPTABLE NS_IMETHOD QuadraticCurveTo(float cpx, float cpy, float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->QuadraticCurveTo(cpx, cpy, x, y); } \
     726                 :   NS_SCRIPTABLE NS_IMETHOD BezierCurveTo(float cp1x, float cp1y, float cp2x, float cp2y, float x, float y) { return !_to ? NS_ERROR_NULL_POINTER : _to->BezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y); } \
     727                 :   NS_SCRIPTABLE NS_IMETHOD ArcTo(float x1, float y1, float x2, float y2, float radius) { return !_to ? NS_ERROR_NULL_POINTER : _to->ArcTo(x1, y1, x2, y2, radius); } \
     728                 :   NS_SCRIPTABLE NS_IMETHOD Arc(float x, float y, float r, float startAngle, float endAngle, bool anticlockwise) { return !_to ? NS_ERROR_NULL_POINTER : _to->Arc(x, y, r, startAngle, endAngle, anticlockwise); } \
     729                 :   NS_SCRIPTABLE NS_IMETHOD Rect(float x, float y, float w, float h) { return !_to ? NS_ERROR_NULL_POINTER : _to->Rect(x, y, w, h); } \
     730                 :   NS_SCRIPTABLE NS_IMETHOD Fill(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Fill(); } \
     731                 :   NS_SCRIPTABLE NS_IMETHOD Stroke(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Stroke(); } \
     732                 :   NS_SCRIPTABLE NS_IMETHOD Clip(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->Clip(); } \
     733                 :   NS_SCRIPTABLE NS_IMETHOD GetFont(nsAString & aFont) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFont(aFont); } \
     734                 :   NS_SCRIPTABLE NS_IMETHOD SetFont(const nsAString & aFont) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFont(aFont); } \
     735                 :   NS_SCRIPTABLE NS_IMETHOD GetTextAlign(nsAString & aTextAlign) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTextAlign(aTextAlign); } \
     736                 :   NS_SCRIPTABLE NS_IMETHOD SetTextAlign(const nsAString & aTextAlign) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTextAlign(aTextAlign); } \
     737                 :   NS_SCRIPTABLE NS_IMETHOD GetTextBaseline(nsAString & aTextBaseline) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTextBaseline(aTextBaseline); } \
     738                 :   NS_SCRIPTABLE NS_IMETHOD SetTextBaseline(const nsAString & aTextBaseline) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTextBaseline(aTextBaseline); } \
     739                 :   NS_SCRIPTABLE NS_IMETHOD FillText(const nsAString & text, float x, float y, float maxWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->FillText(text, x, y, maxWidth); } \
     740                 :   NS_SCRIPTABLE NS_IMETHOD StrokeText(const nsAString & text, float x, float y, float maxWidth) { return !_to ? NS_ERROR_NULL_POINTER : _to->StrokeText(text, x, y, maxWidth); } \
     741                 :   NS_SCRIPTABLE NS_IMETHOD MeasureText(const nsAString & text, nsIDOMTextMetrics * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->MeasureText(text, _retval); } \
     742                 :   NS_SCRIPTABLE NS_IMETHOD GetMozTextStyle(nsAString & aMozTextStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozTextStyle(aMozTextStyle); } \
     743                 :   NS_SCRIPTABLE NS_IMETHOD SetMozTextStyle(const nsAString & aMozTextStyle) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozTextStyle(aMozTextStyle); } \
     744                 :   NS_SCRIPTABLE NS_IMETHOD DrawImage(nsIDOMElement *image, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, PRUint8 _argc) { return !_to ? NS_ERROR_NULL_POINTER : _to->DrawImage(image, a1, a2, a3, a4, a5, a6, a7, a8, _argc); } \
     745                 :   NS_SCRIPTABLE NS_IMETHOD IsPointInPath(float x, float y, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsPointInPath(x, y, _retval); } \
     746                 :   NS_SCRIPTABLE NS_IMETHOD GetImageData(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetImageData(); } \
     747                 :   NS_SCRIPTABLE NS_IMETHOD PutImageData(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->PutImageData(); } \
     748                 :   NS_IMETHOD GetImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetImageData_explicit(x, y, width, height, dataPtr, dataLen); } \
     749                 :   NS_IMETHOD PutImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen, bool hasDirtyRect, PRInt32 dirtyX, PRInt32 dirtyY, PRInt32 dirtyWidth, PRInt32 dirtyHeight) { return !_to ? NS_ERROR_NULL_POINTER : _to->PutImageData_explicit(x, y, width, height, dataPtr, dataLen, hasDirtyRect, dirtyX, dirtyY, dirtyWidth, dirtyHeight); } \
     750                 :   NS_SCRIPTABLE NS_IMETHOD CreateImageData(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->CreateImageData(); } \
     751                 :   NS_SCRIPTABLE NS_IMETHOD GetMozImageSmoothingEnabled(bool *aMozImageSmoothingEnabled) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMozImageSmoothingEnabled(aMozImageSmoothingEnabled); } \
     752                 :   NS_SCRIPTABLE NS_IMETHOD SetMozImageSmoothingEnabled(bool aMozImageSmoothingEnabled) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetMozImageSmoothingEnabled(aMozImageSmoothingEnabled); } \
     753                 :   NS_SCRIPTABLE NS_IMETHOD DrawWindow(nsIDOMWindow *window, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->DrawWindow(window, x, y, w, h, bgColor, flags); } \
     754                 :   NS_SCRIPTABLE NS_IMETHOD AsyncDrawXULElement(nsIDOMXULElement *elem, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags) { return !_to ? NS_ERROR_NULL_POINTER : _to->AsyncDrawXULElement(elem, x, y, w, h, bgColor, flags); } 
     755                 : 
     756                 : #if 0
     757                 : /* Use the code below as a template for the implementation class for this interface. */
     758                 : 
     759                 : /* Header file */
     760                 : class nsDOMCanvasRenderingContext2D : public nsIDOMCanvasRenderingContext2D
     761                 : {
     762                 : public:
     763                 :   NS_DECL_ISUPPORTS
     764                 :   NS_DECL_NSIDOMCANVASRENDERINGCONTEXT2D
     765                 : 
     766                 :   nsDOMCanvasRenderingContext2D();
     767                 : 
     768                 : private:
     769                 :   ~nsDOMCanvasRenderingContext2D();
     770                 : 
     771                 : protected:
     772                 :   /* additional members */
     773                 : };
     774                 : 
     775                 : /* Implementation file */
     776                 : NS_IMPL_ISUPPORTS1(nsDOMCanvasRenderingContext2D, nsIDOMCanvasRenderingContext2D)
     777                 : 
     778                 : nsDOMCanvasRenderingContext2D::nsDOMCanvasRenderingContext2D()
     779                 : {
     780                 :   /* member initializers and constructor code */
     781                 : }
     782                 : 
     783                 : nsDOMCanvasRenderingContext2D::~nsDOMCanvasRenderingContext2D()
     784                 : {
     785                 :   /* destructor code */
     786                 : }
     787                 : 
     788                 : /* readonly attribute nsIDOMHTMLCanvasElement canvas; */
     789                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetCanvas(nsIDOMHTMLCanvasElement * *aCanvas)
     790                 : {
     791                 :     return NS_ERROR_NOT_IMPLEMENTED;
     792                 : }
     793                 : 
     794                 : /* void save (); */
     795                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Save()
     796                 : {
     797                 :     return NS_ERROR_NOT_IMPLEMENTED;
     798                 : }
     799                 : 
     800                 : /* void restore (); */
     801                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Restore()
     802                 : {
     803                 :     return NS_ERROR_NOT_IMPLEMENTED;
     804                 : }
     805                 : 
     806                 : /* void scale (in float x, in float y); */
     807                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Scale(float x, float y)
     808                 : {
     809                 :     return NS_ERROR_NOT_IMPLEMENTED;
     810                 : }
     811                 : 
     812                 : /* void rotate (in float angle); */
     813                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Rotate(float angle)
     814                 : {
     815                 :     return NS_ERROR_NOT_IMPLEMENTED;
     816                 : }
     817                 : 
     818                 : /* void translate (in float x, in float y); */
     819                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Translate(float x, float y)
     820                 : {
     821                 :     return NS_ERROR_NOT_IMPLEMENTED;
     822                 : }
     823                 : 
     824                 : /* void transform (in float m11, in float m12, in float m21, in float m22, in float dx, in float dy); */
     825                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Transform(float m11, float m12, float m21, float m22, float dx, float dy)
     826                 : {
     827                 :     return NS_ERROR_NOT_IMPLEMENTED;
     828                 : }
     829                 : 
     830                 : /* void setTransform (in float m11, in float m12, in float m21, in float m22, in float dx, in float dy); */
     831                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetTransform(float m11, float m12, float m21, float m22, float dx, float dy)
     832                 : {
     833                 :     return NS_ERROR_NOT_IMPLEMENTED;
     834                 : }
     835                 : 
     836                 : /* [implicit_jscontext] attribute jsval mozCurrentTransform; */
     837                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozCurrentTransform(JSContext* cx, JS::Value *aMozCurrentTransform)
     838                 : {
     839                 :     return NS_ERROR_NOT_IMPLEMENTED;
     840                 : }
     841                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozCurrentTransform(JSContext* cx, const JS::Value & aMozCurrentTransform)
     842                 : {
     843                 :     return NS_ERROR_NOT_IMPLEMENTED;
     844                 : }
     845                 : 
     846                 : /* [implicit_jscontext] attribute jsval mozCurrentTransformInverse; */
     847                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozCurrentTransformInverse(JSContext* cx, JS::Value *aMozCurrentTransformInverse)
     848                 : {
     849                 :     return NS_ERROR_NOT_IMPLEMENTED;
     850                 : }
     851                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozCurrentTransformInverse(JSContext* cx, const JS::Value & aMozCurrentTransformInverse)
     852                 : {
     853                 :     return NS_ERROR_NOT_IMPLEMENTED;
     854                 : }
     855                 : 
     856                 : /* attribute float globalAlpha; */
     857                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetGlobalAlpha(float *aGlobalAlpha)
     858                 : {
     859                 :     return NS_ERROR_NOT_IMPLEMENTED;
     860                 : }
     861                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetGlobalAlpha(float aGlobalAlpha)
     862                 : {
     863                 :     return NS_ERROR_NOT_IMPLEMENTED;
     864                 : }
     865                 : 
     866                 : /* attribute DOMString globalCompositeOperation; */
     867                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetGlobalCompositeOperation(nsAString & aGlobalCompositeOperation)
     868                 : {
     869                 :     return NS_ERROR_NOT_IMPLEMENTED;
     870                 : }
     871                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetGlobalCompositeOperation(const nsAString & aGlobalCompositeOperation)
     872                 : {
     873                 :     return NS_ERROR_NOT_IMPLEMENTED;
     874                 : }
     875                 : 
     876                 : /* attribute nsIVariant strokeStyle; */
     877                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetStrokeStyle(nsIVariant * *aStrokeStyle)
     878                 : {
     879                 :     return NS_ERROR_NOT_IMPLEMENTED;
     880                 : }
     881                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetStrokeStyle(nsIVariant *aStrokeStyle)
     882                 : {
     883                 :     return NS_ERROR_NOT_IMPLEMENTED;
     884                 : }
     885                 : 
     886                 : /* attribute nsIVariant fillStyle; */
     887                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetFillStyle(nsIVariant * *aFillStyle)
     888                 : {
     889                 :     return NS_ERROR_NOT_IMPLEMENTED;
     890                 : }
     891                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetFillStyle(nsIVariant *aFillStyle)
     892                 : {
     893                 :     return NS_ERROR_NOT_IMPLEMENTED;
     894                 : }
     895                 : 
     896                 : /* [noscript] void setStrokeStyle_multi (in DOMString str, in nsISupports iface); */
     897                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetStrokeStyle_multi(const nsAString & str, nsISupports *iface)
     898                 : {
     899                 :     return NS_ERROR_NOT_IMPLEMENTED;
     900                 : }
     901                 : 
     902                 : /* [noscript] void getStrokeStyle_multi (out DOMString str, out nsISupports iface, out long type); */
     903                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetStrokeStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM)
     904                 : {
     905                 :     return NS_ERROR_NOT_IMPLEMENTED;
     906                 : }
     907                 : 
     908                 : /* [noscript] void setFillStyle_multi (in DOMString str, in nsISupports iface); */
     909                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetFillStyle_multi(const nsAString & str, nsISupports *iface)
     910                 : {
     911                 :     return NS_ERROR_NOT_IMPLEMENTED;
     912                 : }
     913                 : 
     914                 : /* [noscript] void getFillStyle_multi (out DOMString str, out nsISupports iface, out long type); */
     915                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetFillStyle_multi(nsAString & str NS_OUTPARAM, nsISupports * *iface NS_OUTPARAM, PRInt32 *type NS_OUTPARAM)
     916                 : {
     917                 :     return NS_ERROR_NOT_IMPLEMENTED;
     918                 : }
     919                 : 
     920                 : /* attribute DOMString mozFillRule; */
     921                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozFillRule(nsAString & aMozFillRule)
     922                 : {
     923                 :     return NS_ERROR_NOT_IMPLEMENTED;
     924                 : }
     925                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozFillRule(const nsAString & aMozFillRule)
     926                 : {
     927                 :     return NS_ERROR_NOT_IMPLEMENTED;
     928                 : }
     929                 : 
     930                 : /* nsIDOMCanvasGradient createLinearGradient (in float x0, in float y0, in float x1, in float y1); */
     931                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::CreateLinearGradient(float x0, float y0, float x1, float y1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM)
     932                 : {
     933                 :     return NS_ERROR_NOT_IMPLEMENTED;
     934                 : }
     935                 : 
     936                 : /* nsIDOMCanvasGradient createRadialGradient (in float x0, in float y0, in float r0, in float x1, in float y1, in float r1); */
     937                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::CreateRadialGradient(float x0, float y0, float r0, float x1, float y1, float r1, nsIDOMCanvasGradient * *_retval NS_OUTPARAM)
     938                 : {
     939                 :     return NS_ERROR_NOT_IMPLEMENTED;
     940                 : }
     941                 : 
     942                 : /* nsIDOMCanvasPattern createPattern (in nsIDOMHTMLElement image, in DOMString repetition); */
     943                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::CreatePattern(nsIDOMHTMLElement *image, const nsAString & repetition, nsIDOMCanvasPattern * *_retval NS_OUTPARAM)
     944                 : {
     945                 :     return NS_ERROR_NOT_IMPLEMENTED;
     946                 : }
     947                 : 
     948                 : /* attribute float lineWidth; */
     949                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetLineWidth(float *aLineWidth)
     950                 : {
     951                 :     return NS_ERROR_NOT_IMPLEMENTED;
     952                 : }
     953                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetLineWidth(float aLineWidth)
     954                 : {
     955                 :     return NS_ERROR_NOT_IMPLEMENTED;
     956                 : }
     957                 : 
     958                 : /* attribute DOMString lineCap; */
     959                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetLineCap(nsAString & aLineCap)
     960                 : {
     961                 :     return NS_ERROR_NOT_IMPLEMENTED;
     962                 : }
     963                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetLineCap(const nsAString & aLineCap)
     964                 : {
     965                 :     return NS_ERROR_NOT_IMPLEMENTED;
     966                 : }
     967                 : 
     968                 : /* attribute DOMString lineJoin; */
     969                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetLineJoin(nsAString & aLineJoin)
     970                 : {
     971                 :     return NS_ERROR_NOT_IMPLEMENTED;
     972                 : }
     973                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetLineJoin(const nsAString & aLineJoin)
     974                 : {
     975                 :     return NS_ERROR_NOT_IMPLEMENTED;
     976                 : }
     977                 : 
     978                 : /* attribute float miterLimit; */
     979                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMiterLimit(float *aMiterLimit)
     980                 : {
     981                 :     return NS_ERROR_NOT_IMPLEMENTED;
     982                 : }
     983                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMiterLimit(float aMiterLimit)
     984                 : {
     985                 :     return NS_ERROR_NOT_IMPLEMENTED;
     986                 : }
     987                 : 
     988                 : /* [implicit_jscontext] attribute jsval mozDash; */
     989                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozDash(JSContext* cx, JS::Value *aMozDash)
     990                 : {
     991                 :     return NS_ERROR_NOT_IMPLEMENTED;
     992                 : }
     993                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozDash(JSContext* cx, const JS::Value & aMozDash)
     994                 : {
     995                 :     return NS_ERROR_NOT_IMPLEMENTED;
     996                 : }
     997                 : 
     998                 : /* attribute float mozDashOffset; */
     999                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozDashOffset(float *aMozDashOffset)
    1000                 : {
    1001                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1002                 : }
    1003                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozDashOffset(float aMozDashOffset)
    1004                 : {
    1005                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1006                 : }
    1007                 : 
    1008                 : /* attribute float shadowOffsetX; */
    1009                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetShadowOffsetX(float *aShadowOffsetX)
    1010                 : {
    1011                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1012                 : }
    1013                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetShadowOffsetX(float aShadowOffsetX)
    1014                 : {
    1015                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1016                 : }
    1017                 : 
    1018                 : /* attribute float shadowOffsetY; */
    1019                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetShadowOffsetY(float *aShadowOffsetY)
    1020                 : {
    1021                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1022                 : }
    1023                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetShadowOffsetY(float aShadowOffsetY)
    1024                 : {
    1025                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1026                 : }
    1027                 : 
    1028                 : /* attribute float shadowBlur; */
    1029                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetShadowBlur(float *aShadowBlur)
    1030                 : {
    1031                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1032                 : }
    1033                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetShadowBlur(float aShadowBlur)
    1034                 : {
    1035                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1036                 : }
    1037                 : 
    1038                 : /* attribute DOMString shadowColor; */
    1039                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetShadowColor(nsAString & aShadowColor)
    1040                 : {
    1041                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1042                 : }
    1043                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetShadowColor(const nsAString & aShadowColor)
    1044                 : {
    1045                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1046                 : }
    1047                 : 
    1048                 : /* void clearRect (in float x, in float y, in float w, in float h); */
    1049                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::ClearRect(float x, float y, float w, float h)
    1050                 : {
    1051                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1052                 : }
    1053                 : 
    1054                 : /* void fillRect (in float x, in float y, in float w, in float h); */
    1055                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::FillRect(float x, float y, float w, float h)
    1056                 : {
    1057                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1058                 : }
    1059                 : 
    1060                 : /* void strokeRect (in float x, in float y, in float w, in float h); */
    1061                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::StrokeRect(float x, float y, float w, float h)
    1062                 : {
    1063                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1064                 : }
    1065                 : 
    1066                 : /* void beginPath (); */
    1067                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::BeginPath()
    1068                 : {
    1069                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1070                 : }
    1071                 : 
    1072                 : /* void closePath (); */
    1073                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::ClosePath()
    1074                 : {
    1075                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1076                 : }
    1077                 : 
    1078                 : /* void moveTo (in float x, in float y); */
    1079                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::MoveTo(float x, float y)
    1080                 : {
    1081                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1082                 : }
    1083                 : 
    1084                 : /* void lineTo (in float x, in float y); */
    1085                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::LineTo(float x, float y)
    1086                 : {
    1087                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1088                 : }
    1089                 : 
    1090                 : /* void quadraticCurveTo (in float cpx, in float cpy, in float x, in float y); */
    1091                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::QuadraticCurveTo(float cpx, float cpy, float x, float y)
    1092                 : {
    1093                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1094                 : }
    1095                 : 
    1096                 : /* void bezierCurveTo (in float cp1x, in float cp1y, in float cp2x, in float cp2y, in float x, in float y); */
    1097                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::BezierCurveTo(float cp1x, float cp1y, float cp2x, float cp2y, float x, float y)
    1098                 : {
    1099                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1100                 : }
    1101                 : 
    1102                 : /* void arcTo (in float x1, in float y1, in float x2, in float y2, in float radius); */
    1103                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::ArcTo(float x1, float y1, float x2, float y2, float radius)
    1104                 : {
    1105                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1106                 : }
    1107                 : 
    1108                 : /* void arc (in float x, in float y, in float r, in float startAngle, in float endAngle, [optional] in boolean anticlockwise); */
    1109                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Arc(float x, float y, float r, float startAngle, float endAngle, bool anticlockwise)
    1110                 : {
    1111                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1112                 : }
    1113                 : 
    1114                 : /* void rect (in float x, in float y, in float w, in float h); */
    1115                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Rect(float x, float y, float w, float h)
    1116                 : {
    1117                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1118                 : }
    1119                 : 
    1120                 : /* void fill (); */
    1121                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Fill()
    1122                 : {
    1123                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1124                 : }
    1125                 : 
    1126                 : /* void stroke (); */
    1127                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Stroke()
    1128                 : {
    1129                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1130                 : }
    1131                 : 
    1132                 : /* void clip (); */
    1133                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::Clip()
    1134                 : {
    1135                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1136                 : }
    1137                 : 
    1138                 : /* attribute DOMString font; */
    1139                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetFont(nsAString & aFont)
    1140                 : {
    1141                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1142                 : }
    1143                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetFont(const nsAString & aFont)
    1144                 : {
    1145                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1146                 : }
    1147                 : 
    1148                 : /* attribute DOMString textAlign; */
    1149                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetTextAlign(nsAString & aTextAlign)
    1150                 : {
    1151                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1152                 : }
    1153                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetTextAlign(const nsAString & aTextAlign)
    1154                 : {
    1155                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1156                 : }
    1157                 : 
    1158                 : /* attribute DOMString textBaseline; */
    1159                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetTextBaseline(nsAString & aTextBaseline)
    1160                 : {
    1161                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1162                 : }
    1163                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetTextBaseline(const nsAString & aTextBaseline)
    1164                 : {
    1165                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1166                 : }
    1167                 : 
    1168                 : /* void fillText (in DOMString text, in float x, in float y, [optional] in float maxWidth); */
    1169                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::FillText(const nsAString & text, float x, float y, float maxWidth)
    1170                 : {
    1171                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1172                 : }
    1173                 : 
    1174                 : /* void strokeText (in DOMString text, in float x, in float y, [optional] in float maxWidth); */
    1175                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::StrokeText(const nsAString & text, float x, float y, float maxWidth)
    1176                 : {
    1177                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1178                 : }
    1179                 : 
    1180                 : /* nsIDOMTextMetrics measureText (in DOMString text); */
    1181                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::MeasureText(const nsAString & text, nsIDOMTextMetrics * *_retval NS_OUTPARAM)
    1182                 : {
    1183                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1184                 : }
    1185                 : 
    1186                 : /* attribute DOMString mozTextStyle; */
    1187                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozTextStyle(nsAString & aMozTextStyle)
    1188                 : {
    1189                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1190                 : }
    1191                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozTextStyle(const nsAString & aMozTextStyle)
    1192                 : {
    1193                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1194                 : }
    1195                 : 
    1196                 : /* [optional_argc] void drawImage (in nsIDOMElement image, in float a1, in float a2, [optional] in float a3, [optional] in float a4, [optional] in float a5, [optional] in float a6, [optional] in float a7, [optional] in float a8); */
    1197                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::DrawImage(nsIDOMElement *image, float a1, float a2, float a3, float a4, float a5, float a6, float a7, float a8, PRUint8 _argc)
    1198                 : {
    1199                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1200                 : }
    1201                 : 
    1202                 : /* boolean isPointInPath (in float x, in float y); */
    1203                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::IsPointInPath(float x, float y, bool *_retval NS_OUTPARAM)
    1204                 : {
    1205                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1206                 : }
    1207                 : 
    1208                 : /* void getImageData (); */
    1209                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetImageData()
    1210                 : {
    1211                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1212                 : }
    1213                 : 
    1214                 : /* void putImageData (); */
    1215                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::PutImageData()
    1216                 : {
    1217                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1218                 : }
    1219                 : 
    1220                 : /* [noscript] void getImageData_explicit (in long x, in long y, in unsigned long width, in unsigned long height, [array, size_is (dataLen)] in octet dataPtr, in unsigned long dataLen); */
    1221                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen)
    1222                 : {
    1223                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1224                 : }
    1225                 : 
    1226                 : /* [noscript] void putImageData_explicit (in long x, in long y, in unsigned long width, in unsigned long height, [array, size_is (dataLen)] in octet dataPtr, in unsigned long dataLen, in boolean hasDirtyRect, in long dirtyX, in long dirtyY, in long dirtyWidth, in long dirtyHeight); */
    1227                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::PutImageData_explicit(PRInt32 x, PRInt32 y, PRUint32 width, PRUint32 height, PRUint8 *dataPtr, PRUint32 dataLen, bool hasDirtyRect, PRInt32 dirtyX, PRInt32 dirtyY, PRInt32 dirtyWidth, PRInt32 dirtyHeight)
    1228                 : {
    1229                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1230                 : }
    1231                 : 
    1232                 : /* void createImageData (); */
    1233                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::CreateImageData()
    1234                 : {
    1235                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1236                 : }
    1237                 : 
    1238                 : /* attribute boolean mozImageSmoothingEnabled; */
    1239                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::GetMozImageSmoothingEnabled(bool *aMozImageSmoothingEnabled)
    1240                 : {
    1241                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1242                 : }
    1243                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::SetMozImageSmoothingEnabled(bool aMozImageSmoothingEnabled)
    1244                 : {
    1245                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1246                 : }
    1247                 : 
    1248                 : /* void drawWindow (in nsIDOMWindow window, in float x, in float y, in float w, in float h, in DOMString bgColor, [optional] in unsigned long flags); */
    1249                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::DrawWindow(nsIDOMWindow *window, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags)
    1250                 : {
    1251                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1252                 : }
    1253                 : 
    1254                 : /* void asyncDrawXULElement (in nsIDOMXULElement elem, in float x, in float y, in float w, in float h, in DOMString bgColor, [optional] in unsigned long flags); */
    1255                 : NS_IMETHODIMP nsDOMCanvasRenderingContext2D::AsyncDrawXULElement(nsIDOMXULElement *elem, float x, float y, float w, float h, const nsAString & bgColor, PRUint32 flags)
    1256                 : {
    1257                 :     return NS_ERROR_NOT_IMPLEMENTED;
    1258                 : }
    1259                 : 
    1260                 : /* End of implementation class template. */
    1261                 : #endif
    1262                 : 
    1263                 : 
    1264                 : #endif /* __gen_nsIDOMCanvasRenderingContext2D_h__ */

Generated by: LCOV version 1.7