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/. */
6 #include
"nsISupports.idl"
8 interface nsIController
;
9 interface nsIDOMXULCommandDispatcher
;
11 [scriptable
, uuid(f36e3ec1
-9197-4ad8
-8d4c
-d3b1927fd6df
)]
12 interface nsIControllers
: nsISupports
14 nsIController getControllerForCommand
(in string command
);
16 void insertControllerAt
(in unsigned long index
, in nsIController controller
);
17 nsIController removeControllerAt
(in unsigned long index
);
18 nsIController getControllerAt
(in unsigned long index
);
20 void appendController
(in nsIController controller
);
21 void removeController
(in nsIController controller
);
24 Return an ID for this controller which is unique to this
27 unsigned long getControllerId
(in nsIController controller
);
29 Get the controller specified by the given ID.
31 nsIController getControllerById
(in unsigned long controllerID
);
33 unsigned long getControllerCount
();