Source code

Revision control

Other Tools

1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2
/* This Source Code Form is subject to the terms of the Mozilla Public
3
* License, v. 2.0. If a copy of the MPL was not distributed with this
4
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6
#include "nsISupports.idl"
7
8
interface nsIController;
9
interface nsIDOMXULCommandDispatcher;
10
11
[scriptable, uuid(f36e3ec1-9197-4ad8-8d4c-d3b1927fd6df)]
12
interface nsIControllers : nsISupports
13
{
14
nsIController getControllerForCommand(in string command);
15
16
void insertControllerAt(in unsigned long index, in nsIController controller);
17
nsIController removeControllerAt(in unsigned long index);
18
nsIController getControllerAt(in unsigned long index);
19
20
void appendController(in nsIController controller);
21
void removeController(in nsIController controller);
22
23
/*
24
Return an ID for this controller which is unique to this
25
nsIControllers.
26
*/
27
unsigned long getControllerId(in nsIController controller);
28
/*
29
Get the controller specified by the given ID.
30
*/
31
nsIController getControllerById(in unsigned long controllerID);
32
33
unsigned long getControllerCount();
34
};