// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. // WARNING: Do not edit - generated code. part of $LIBRARYNAME; $(ANNOTATIONS)$(CLASS_MODIFIERS)class $CLASSNAME$EXTENDS$IMPLEMENTS$NATIVESPEC { $!MEMBERS $if DART2JS @DomName('Document.body') BodyElement body; $else @DomName('Document.body') BodyElement get body => _body; @DomName('Document.body') void set body(BodyElement value) { _body = value; } $endif @DomName('Document.caretRangeFromPoint') Range caretRangeFromPoint(int x, int y) { return _caretRangeFromPoint(x, y); } @DomName('Document.elementFromPoint') Element elementFromPoint(int x, int y) { return _elementFromPoint(x, y); } /** * Checks if the getCssCanvasContext API is supported on the current platform. * * See also: * * * [getCssCanvasContext] */ $if DART2JS static bool get supportsCssCanvasContext => JS('bool', '!!(document.getCSSCanvasContext)'); $else static bool get supportsCssCanvasContext => true; $endif /** * Gets a CanvasRenderingContext which can be used as the CSS background of an * element. * * CSS: * * background: -webkit-canvas(backgroundCanvas) * * Generate the canvas: * * var context = document.getCssCanvasContext('2d', 'backgroundCanvas', * 100, 100); * context.fillStyle = 'red'; * context.fillRect(0, 0, 100, 100); * * See also: * * * [supportsCssCanvasContext] * * [CanvasElement.getContext] */ @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() @DomName('Document.getCSSCanvasContext') CanvasRenderingContext getCssCanvasContext(String contextId, String name, int width, int height) { return _getCssCanvasContext(contextId, name, width, height); } @DomName('Document.head') HeadElement get head => _head; @DomName('Document.lastModified') String get lastModified => _lastModified; @DomName('Document.preferredStylesheetSet') String get preferredStylesheetSet => _preferredStylesheetSet; @DomName('Document.referrer') String get referrer => _referrer; @DomName('Document.selectedStylesheetSet') String get selectedStylesheetSet => _selectedStylesheetSet; void set selectedStylesheetSet(String value) { _selectedStylesheetSet = value; } @DomName('Document.styleSheets') List get styleSheets => _styleSheets; @DomName('Document.title') String get title => _title; @DomName('Document.title') void set title(String value) { _title = value; } @DomName('Document.webkitCancelFullScreen') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() void cancelFullScreen() { _webkitCancelFullScreen(); } @DomName('Document.webkitExitFullscreen') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() void exitFullscreen() { _webkitExitFullscreen(); } @DomName('Document.webkitExitPointerLock') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() void exitPointerLock() { _webkitExitPointerLock(); } @DomName('Document.webkitFullscreenElement') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() Element get fullscreenElement => _webkitFullscreenElement; @DomName('Document.webkitFullscreenEnabled') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() bool get fullscreenEnabled => _webkitFullscreenEnabled; @DomName('Document.webkitHidden') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() bool get hidden => _webkitHidden; @DomName('Document.webkitIsFullScreen') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() bool get isFullScreen => _webkitIsFullScreen; @DomName('Document.webkitPointerLockElement') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.SAFARI) @Experimental() Element get pointerLockElement => _webkitPointerLockElement; @DomName('Document.visibilityState') @SupportedBrowser(SupportedBrowser.CHROME) @SupportedBrowser(SupportedBrowser.FIREFOX) @SupportedBrowser(SupportedBrowser.IE, '10') @Experimental() $if DART2JS String get visibilityState => JS('String', '(#.visibilityState || #.mozVisibilityState || #.msVisibilityState ||' '#.webkitVisibilityState)', this, this, this, this); $else String get visibilityState => _webkitVisibilityState; $endif @Experimental /** * Register a custom subclass of Element to be instantiatable by the DOM. * * This is necessary to allow the construction of any custom elements. * * The class being registered must either subclass HtmlElement or SvgElement. * If they subclass these directly then they can be used as: * * class FooElement extends HtmlElement{ * void created() { * print('FooElement created!'); * } * } * * main() { * document.register('x-foo', FooElement); * var myFoo = new Element.tag('x-foo'); * // prints 'FooElement created!' to the console. * } * * The custom element can also be instantiated via HTML using the syntax * `` * * Other elements can be subclassed as well: * * class BarElement extends InputElement{ * void created() { * print('BarElement created!'); * } * } * * main() { * document.register('x-bar', BarElement); * var myBar = new Element.tag('input', 'x-bar'); * // prints 'BarElement created!' to the console. * } * * This custom element can also be instantiated via HTML using the syntax * `` * * The [nativeTagName] parameter is needed by platforms without native support * when subclassing a native type other than: * * * HtmlElement * * SvgElement * * AnchorElement * * AudioElement * * ButtonElement * * CanvasElement * * DivElement * * ImageElement * * InputElement * * LIElement * * LabelElement * * MenuElement * * MeterElement * * OListElement * * OptionElement * * OutputElement * * ParagraphElement * * PreElement * * ProgressElement * * SelectElement * * SpanElement * * UListElement * * VideoElement */ $if DART2JS void register(String tag, Type customElementClass, {String nativeTagName}) { _registerCustomElement(JS('', 'window'), this, tag, customElementClass, nativeTagName); } $else void register(String tag, Type customElementClass, {String nativeTagName}) { _Utils.register(tag, customElementClass); } $endif $if DART2JS @Creates('Null') // Set from Dart code; does not instantiate a native type. $endif // Note: used to polyfill