Bug 1858509 add thread-safety annotations around MediaSourceDemuxer::mMonitor r=alwu
[gecko.git] / layout / forms / nsISelectControlFrame.h
blobb849f04d52d3a4ef460fc68a2fc8d02ef1028a5c
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #ifndef nsISelectControlFrame_h___
8 #define nsISelectControlFrame_h___
10 #include "nsQueryFrame.h"
12 /**
13 * nsISelectControlFrame is the interface for combo boxes and listboxes
15 class nsISelectControlFrame : public nsQueryFrame {
16 public:
17 NS_DECL_QUERYFRAME_TARGET(nsISelectControlFrame)
19 /**
20 * Adds an option to the list at index
23 NS_IMETHOD AddOption(int32_t index) = 0;
25 /**
26 * Removes the option at index. The caller must have a live script
27 * blocker while calling this method.
29 NS_IMETHOD RemoveOption(int32_t index) = 0;
31 /**
32 * Sets whether the parser is done adding children
33 * @param aIsDone whether the parser is done adding children
35 NS_IMETHOD DoneAddingChildren(bool aIsDone) = 0;
37 /**
38 * Notify the frame when an option is selected
40 NS_IMETHOD OnOptionSelected(int32_t aIndex, bool aSelected) = 0;
42 /**
43 * Notify the frame when selectedIndex was changed. This might
44 * destroy the frame.
46 NS_IMETHOD_(void)
47 OnSetSelectedIndex(int32_t aOldIndex, int32_t aNewIndex) = 0;
50 #endif