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 nsIClipboardDragDropHooks; michael@0: interface nsISimpleEnumerator; michael@0: michael@0: michael@0: /** michael@0: * Please note that the following api is not intended for embedders; michael@0: * it is intended as an internal (to gecko). Embedders can indirectly michael@0: * call these by sending commands (see description in michael@0: * nsIClipboardDragDropHooks.idl). michael@0: * michael@0: * Internal gecko usage is accomplished by calling get_Interface on a michael@0: * docshell. michael@0: */ michael@0: michael@0: michael@0: // 876A2015-6B66-11D7-8F18-0003938A9D96 michael@0: [scriptable,uuid(876A2015-6B66-11D7-8F18-0003938A9D96)] michael@0: interface nsIClipboardDragDropHookList : nsISupports michael@0: { michael@0: /** michael@0: * Add a hook to list. michael@0: * @param aHooks implementation of hooks michael@0: */ michael@0: void addClipboardDragDropHooks(in nsIClipboardDragDropHooks aHooks); michael@0: michael@0: /** michael@0: * Remove a hook from list (note if this implementation is not present michael@0: * in the list then removal will be ignored). michael@0: * @param aHooks implementation of hooks michael@0: */ michael@0: void removeClipboardDragDropHooks(in nsIClipboardDragDropHooks aHooks); michael@0: michael@0: /** michael@0: * Gets an enumerator for all hooks which have been added. michael@0: * @return nsISimpleEnumerator for nsIClipboardDragDropHooks michael@0: */ michael@0: nsISimpleEnumerator getHookEnumerator(); michael@0: }; michael@0: