tenfourfox/dom/webidl/ScrollBoxObject.webidl

71 lines
1.9 KiB
Plaintext

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*/
[NoInterfaceObject]
interface ScrollBoxObject : BoxObject {
/**
* Scroll to the given coordinates, in css pixels.
* (0,0) will put the top left corner of the scrolled element's padding-box
* at the top left corner of the scrollport (which is its inner-border-box).
* Values will be clamped to legal values.
*/
[Throws]
void scrollTo(long x, long y);
/**
* Scroll the given amount of device pixels to the right and down.
* Values will be clamped to make the resuling position legal.
*/
[Throws]
void scrollBy(long dx, long dy);
[Throws]
void scrollByLine(long dlines);
[Throws]
void scrollByIndex(long dindexes);
[Throws]
void scrollToLine(long line);
[Throws]
void scrollToElement(Element child);
[Throws]
void scrollToIndex(long index);
/**
* Get the current scroll position in css pixels.
* @see scrollTo for the definition of x and y.
*/
[Pure, Throws]
readonly attribute long positionX;
[Pure, Throws]
readonly attribute long positionY;
[Pure, Throws]
readonly attribute long scrolledWidth;
[Pure, Throws]
readonly attribute long scrolledHeight;
/**
* DEPRECATED: Please use positionX and positionY
*
* Get the current scroll position in css pixels.
* @see scrollTo for the definition of x and y.
*/
[Throws]
void getPosition(object x, object y);
/**
* DEPRECATED: Please use scrolledWidth and scrolledHeight
*/
[Throws]
void getScrolledSize(object width, object height);
[Throws]
void ensureElementIsVisible(Element child);
[Throws]
void ensureIndexIsVisible(long index);
[Throws]
void ensureLineIsVisible(long line);
};