editor/nsIHTMLObjectResizer.idl
author Tom Ritter <tom@mozilla.com>
Wed, 29 Aug 2018 16:11:37 +0000
changeset 433983 8897c80e6240025264a58cf1b3ff7cbdf97c6e76
parent 415996 f283a9ca271bf70ae1373a3382b22e2bc75fc754
child 435030 304c3c1874330aa318325bbcc4e64d743c00c5d9
permissions -rw-r--r--
Bug 1480178 Bump mingw version to pick up new API functions and provide libmincorer?froydnj r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D4565

/* -*- 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"
#include "domstubs.idl"

webidl Element;

[scriptable, builtinclass, uuid(8b396020-69d3-451f-80c1-1a96a7da25a9)]
interface nsIHTMLObjectResizer : nsISupports
{
%{C++
  typedef short EResizerLocation;
%}
  const short eTopLeft = 0;
  const short eTop = 1;
  const short eTopRight = 2;
  const short eLeft = 3;
  const short eRight = 4;
  const short eBottomLeft = 5;
  const short eBottom = 6;
  const short eBottomRight = 7;

  /**
   * the element currently displaying resizers
   */
  readonly attribute Element resizedObject;

  /**
   * a boolean indicating if object resizing is enabled in the editor
   */
  attribute boolean objectResizingEnabled;

  /**
   * Shows active resizers around an element's frame
   * @param aResizedElement [IN] a DOM Element
   */
  void showResizers(in Element aResizedElement);

  /**
   * Hide resizers if they are visible
   */
  void hideResizers();

  /**
   * Refresh visible resizers
   */
  void refreshResizers();
};