accessible/public/nsIAccessibleTypes.idl
author Kyle Machulis <kyle@nonpolynomial.com>
Fri, 29 Mar 2013 13:56:18 -0700
changeset 126734 03452b187c1406f07556cf5f0db7e99cc3a93aae
parent 94475 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 855465 - Add emacs python mode comments to moz.build files; r=gps

/* -*- Mode: C++; 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/. */

#include "nsISupports.idl"

/**
 * These constants control the scrolling of an object or substring into a
 * window. Note, keep them synchronized with IA2ScrollType.
 */
[scriptable, uuid(05cd38b1-94b3-4cdf-8371-3935a9611405)]
interface nsIAccessibleScrollType : nsISupports
{
  /**
   * Scroll the top left of the object or substring to the top left of the
   * window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_TOP_LEFT =0x00;

  /**
   * Scroll the bottom right of the object or substring to the bottom right of
   * the window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_BOTTOM_RIGHT = 0x01;

  /**
   * Scroll the top edge of the object or substring to the top edge of the
   * window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_TOP_EDGE = 0x02;

  /**
   * Scroll the bottom edge of the object or substring to the bottom edge of
   * the window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_BOTTOM_EDGE = 0x03;

  /**
   * Scroll the left edge of the object or substring to the left edge of the
   * window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_LEFT_EDGE =0x04;

  /**
   * Scroll the right edge of the object or substring to the right edge of the
   * window (or as close as possible).
   */
  const unsigned long SCROLL_TYPE_RIGHT_EDGE = 0x05;

  /**
   * Scroll an object the minimum amount necessary in order for the entire
   * frame to be visible (if possible).
   */
  const unsigned long SCROLL_TYPE_ANYWHERE = 0x06;
};


/**
 * These constants define which coordinate system a point is located in.
 */
[scriptable, uuid(c9fbdf10-619e-436f-bf4b-8566686f1577)]
interface nsIAccessibleCoordinateType : nsISupports
{
  /**
   * The coordinates are relative to the screen.
   */
  const unsigned long COORDTYPE_SCREEN_RELATIVE = 0x00;

  /**
   * The coordinates are relative to the window.
   */
  const unsigned long COORDTYPE_WINDOW_RELATIVE = 0x01;

  /**
   * The coordinates are relative to the upper left corner of the bounding box
   * of the immediate parent.
   */
  const unsigned long COORDTYPE_PARENT_RELATIVE = 0x02;
};