瀏覽代碼

* Patch from Silvio Clecio to add THTMLImageElement

michael 6 年之前
父節點
當前提交
b69e9bbc36
共有 1 個文件被更改,包括 34 次插入3 次删除
  1. 34 3
      packages/rtl/web.pas

+ 34 - 3
packages/rtl/web.pas

@@ -1,6 +1,6 @@
 {
 {
     This file is part of the Pas2JS run time library.
     This file is part of the Pas2JS run time library.
-    Copyright (c) 2017 by Mattias Gaertner
+    Copyright (c) 2017-2019 by the Pas2JS development team.
 
 
     See the file COPYING.FPC, included in this distribution,
     See the file COPYING.FPC, included in this distribution,
     for details about the copyright.
     for details about the copyright.
@@ -649,7 +649,7 @@ Type
     property Items[aIndex : NativeInt] : TJSDataTransferItem Read getitem; default;
     property Items[aIndex : NativeInt] : TJSDataTransferItem Read getitem; default;
   end;
   end;
 
 
-  { TDataTransfer }
+  { TJSDataTransfer }
 
 
   TJSDataTransfer = class external name 'DataTransfer'
   TJSDataTransfer = class external name 'DataTransfer'
   private
   private
@@ -731,7 +731,7 @@ Type
     Property error : TJSObject read FError;
     Property error : TJSObject read FError;
   end;
   end;
 
 
-  TJsPageTransitionEvent = class(TJSEvent)
+  TJSPageTransitionEvent = class(TJSEvent)
   end;
   end;
 
 
   TJSHashChangeEvent = class external name 'HashChangeEvent' (TJSEvent)
   TJSHashChangeEvent = class external name 'HashChangeEvent' (TJSEvent)
@@ -2075,6 +2075,37 @@ Type
     property validity : TJSValidityState read FValidity;
     property validity : TJSValidityState read FValidity;
   end;
   end;
 
 
+  { TJSHTMLImageElement }
+
+  TJSHTMLImageElement = class external name 'HTMLImageElement' (TJSHTMLElement)
+  Private
+    FComplete: boolean; external name 'complete';
+    FCurrentSrc: String; external name 'currentSrc';
+    FNaturalHeight: NativeUInt; external name 'naturalHeight';
+    FNaturalWidth: NativeUInt; external name 'naturalWidth';
+    FX: NativeInt; external name 'x';
+    FY: NativeInt; external name 'y';
+  Public
+    alt: String;
+    crossOrigin: String;
+    decoding: String;
+    height: NativeUInt;
+    isMap: boolean;
+    referrerPolicy: String;
+    src: String;
+    sizes: String;
+    srcset: String;
+    useMap: String;
+    width: NativeUInt;
+    function decode : TJSPromise;
+    property complete: boolean read FComplete;
+    property currentSrc: String read FCurrentSrc;
+    property naturalHeight: NativeUInt read FNaturalHeight;
+    property naturalWidth: NativeUInt read FNaturalWidth;
+    property x: NativeInt read FX;
+    property y: NativeInt read FY;
+  end;
+
   { TJSHTMLMenuElement }
   { TJSHTMLMenuElement }
 
 
   TJSHTMLMenuElement = class external name 'HTMLMenuElement' (TJSHTMLElement) //  uhm... should it be declared? it is experimental at Mozilla docs...
   TJSHTMLMenuElement = class external name 'HTMLMenuElement' (TJSHTMLElement) //  uhm... should it be declared? it is experimental at Mozilla docs...