michael@0: /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: #include "nsISupports.idl" michael@0: michael@0: interface nsIDOMDocument; michael@0: interface nsISelection; michael@0: michael@0: [scriptable, uuid(280cd784-23c2-468d-8624-354e0b3804bd)] michael@0: interface nsISelectionListener : nsISupports michael@0: { michael@0: const short NO_REASON=0; michael@0: const short DRAG_REASON=1; michael@0: const short MOUSEDOWN_REASON=2;/*bitflags*/ michael@0: const short MOUSEUP_REASON=4;/*bitflags*/ michael@0: const short KEYPRESS_REASON=8;/*bitflags*/ michael@0: const short SELECTALL_REASON=16; michael@0: const short COLLAPSETOSTART_REASON=32; michael@0: const short COLLAPSETOEND_REASON=64; michael@0: michael@0: void notifySelectionChanged(in nsIDOMDocument doc, in nsISelection sel, in short reason); michael@0: }; michael@0: michael@0: