ui.SelectionModel Extends goog.events.EventTarget
Single-selection model. Dispatches a goog.events.EventType.SELECT event when a selection is made.

Inheritance

Constructor

goog.ui.SelectionModel(opt_items)

Parameters

opt_items : Array.<Object>>
Array of items; defaults to empty.

Instance Methods

Public Protected Private
addItem(item)
Adds an item at the end of the list.
Arguments:
item : Object
Item to add.
code »
addItemAt(itemindex)
Adds an item at the given index.
Arguments:
item : Object
Item to add.
index : number
Index at which to add the new item.
code »
addItems(items)
Bulk-adds items to the selection model. This is more efficient than calling #addItem for each new item.
Arguments:
items : Array.<Object> | undefined
New items to add.
code »
clear()
Clears the selection model by removing all items from the selection.
code »
disposeInternal()
No description.
code »
getFirst() Object | undefined
No description.
Returns: Object | undefined  The first item, or undefined if there are no items in the model.
code »
getItemAt(index) Object
Returns the item at the given 0-based index.
Arguments:
index : number
Index of the item to return.
Returns: Object  Item at the given index (null if none).
code »
getItemCount() number
Returns the number of items controlled by the selection model.
Returns: number  Number of items.
code »
getItems() !Array.<Object>
No description.
Returns: !Array.<Object>  All items in the selection model.
code »
getLast() Object | undefined
No description.
Returns: Object | undefined  The last item, or undefined if there are no items in the model.
code »
getSelectedIndex() number
No description.
Returns: number  The 0-based index of the currently selected item, or -1 if none.
code »
getSelectedItem() Object
No description.
Returns: Object  The currently selected item, or null if none.
code »
getSelectionHandler() Function
Returns the selection handler function used by the selection model to change the internal selection state of items under its control.
Returns: Function  Selection handler function (null if none).
code »
indexOfItem(item) number
Returns the 0-based index of the given item within the selection model, or -1 if no such item is found.
Arguments:
item : Object | undefined
Item to look for.
Returns: number  Index of the given item (-1 if none).
code »
removeItem(item)
Removes the given item (if it exists). Dispatches a SELECT event if the removed item was the currently selected item.
Arguments:
item : Object
Item to remove.
code »
removeItemAt(index)
Removes the item at the given index.
Arguments:
index : number
Index of the item to remove.
code »
selectItem_(itemselect)
Private helper; selects or deselects the given item based on the value of the select argument. If a selection handler has been registered (via #setSelectionHandler, calls it to update the internal selection state of the item. Otherwise, attempts to call setSelected(Boolean) on the item itself, provided the object supports that interface.
Arguments:
item : Object
Item to select or deselect.
select : boolean
If true, the object will be selected; if false, it will be deselected.
code »
setSelectedIndex(index)
Selects the item at the given index, deselecting any previously selected item, and dispatches a SELECT event.
Arguments:
index : number
Index to select (-1 to clear the selection).
code »
setSelectedItem(item)
Selects the given item, deselecting any previously selected item, and dispatches a SELECT event.
Arguments:
item : Object
Item to select (null to clear the selection).
code »
setSelectionHandler(handler)
Sets the selection handler function to be used by the selection model to change the internal selection state of items under its control. The function must take two arguments: an item and a Boolean to indicate whether the item is to be selected or deselected. Selection handler functions are only needed if the items in the selection model don't natively support the setSelected(Boolean) interface.
Arguments:
handler : Function
Selection handler function.
code »
addEventListener(typeopt_captureopt_handlerScope)
Use #listen instead, when possible. Otherwise, use goog.events.listen if you are passing Object (instead of Function) as handler. Adds an event listener to the event target. The same handler can only be added once per the type. Even if you add the same handler multiple times using the same type then it will only be called once when the event is dispatched.
Arguments:
type : string
The type of the event to listen for.
: ?function():? | ?{handleEvent:function():?
No description.
opt_capture : boolean=
In DOM-compliant browsers, this determines whether the listener is fired during the capture or bubble phase of the event.
opt_handlerScope : Object=
Object in whose scope to call the listener.
code »
assertInitialized_()
Asserts that the event target instance is initialized properly.
code »
dispatchEvent()
No description.
code »
disposeInternal()
Removes listeners from this object. Classes that extend EventTarget may need to override this method in order to remove references to DOM Elements and additional listeners.
code »
fireListeners()
No description.
code »
getListener()
No description.
code »
getListeners()
No description.
code »
getParentEventTarget() goog.events.EventTarget
Returns the parent of this event target to use for bubbling.
Returns: goog.events.EventTarget  The parent EventTarget or null if there is no parent.
code »
hasListener()
No description.
code »
listen()
No description.
code »
listenOnce()
No description.
code »
removeAllListeners()
No description.
code »
removeEventListener(typeopt_captureopt_handlerScope)
Use #unlisten instead, when possible. Otherwise, use goog.events.unlisten if you are passing Object (instead of Function) as handler. Removes an event listener from the event target. The handler must be the same object as the one added. If the handler has not been added then nothing is done.
Arguments:
type : string
The type of the event to listen for.
: ?function():? | ?{handleEvent:function():?
No description.
opt_capture : boolean=
In DOM-compliant browsers, this determines whether the listener is fired during the capture or bubble phase of the event.
opt_handlerScope : Object=
Object in whose scope to call the listener.
code »
setParentEventTarget(parent)
Sets the parent of this event target to use for capture/bubble mechanism.
Arguments:
parent : goog.events.EventTarget
Parent listenable (null if none).
code »
setTargetForTesting(target)
Sets the target to be used for event.target when firing event. Mainly used for testing. For example, see goog.testing.events.mixinListenable.
Arguments:
target : !Object
The target.
code »
unlisten()
No description.
code »
unlistenByKey()
No description.
code »
addOnDisposeCallback(callbackopt_scope)
Invokes a callback function when this object is disposed. Callbacks are invoked in the order in which they were added.
Arguments:
callback : function(this:T):?
The callback function.
opt_scope : T=
An optional scope to call the callback in.
code »
dispose() void
Disposes of the object. If the object hasn't already been disposed of, calls #disposeInternal. Classes that extend goog.Disposable should override #disposeInternal in order to delete references to COM objects, DOM nodes, and other disposable objects. Reentrant.
Returns: void  Nothing.
code »
disposeInternal()
Deletes or nulls out any references to COM objects, DOM nodes, or other disposable objects. Classes that extend goog.Disposable should override this method. Not reentrant. To avoid calling it twice, it must only be called from the subclass' disposeInternal method. Everywhere else the public dispose method must be used. For example:
  mypackage.MyClass = function() {
    mypackage.MyClass.base(this, 'constructor');
    // Constructor logic specific to MyClass.
    ...
  };
  goog.inherits(mypackage.MyClass, goog.Disposable);

  mypackage.MyClass.prototype.disposeInternal = function() {
    // Dispose logic specific to MyClass.
    ...
    // Call superclass's disposeInternal at the end of the subclass's, like
    // in C++, to avoid hard-to-catch issues.
    mypackage.MyClass.base(this, 'disposeInternal');
  };
code »
getDisposed() boolean
Use #isDisposed instead. No description.
Returns: boolean  Whether the object has been disposed of.
code »
isDisposed() boolean
No description.
Returns: boolean  Whether the object has been disposed of.
code »
registerDisposable(disposable)
Associates a disposable object with this object so that they will be disposed together.
Arguments:
disposable : goog.disposable.IDisposable
that will be disposed when this object is disposed.
code »

Instance Properties

constructor :
No description.
Code »
items_ :
Array of items controlled by the selection model. If the items support the setSelected(Boolean) interface, they will be (de)selected as needed.
Code »
selectedItem_ :
The currently selected item (null if none).
Code »
selectionHandler_ :
Selection handler function. Called with two arguments (the item to be selected or deselected, and a Boolean indicating whether the item is to be selected or deselected).
Code »
actualEventTarget_ : goog.events.EventTarget
The object to use for event.target. Useful when mixing in an EventTarget to another object.
Code »
constructor :
No description.
Code »
eventTargetListeners_ : goog.events.ListenerMap
Maps of event type to an array of listeners.
Code »
parentEventTarget_ : goog.events.EventTarget
Parent event target, used during event bubbling. TODO(user): Change this to goog.events.Listenable. This currently breaks people who expect getParentEventTarget to return goog.events.EventTarget.
Code »
creationStack :
If monitoring the goog.Disposable instances is enabled, stores the creation stack trace of the Disposable instance.
Code »
disposed_ :
Whether the object has been disposed of.
Code »
onDisposeCallbacks_ :
Callbacks to invoke when this object is disposed.
Code »

Static Properties

goog.ui.SelectionModel.superClass_ :
No description.
Code »

Package ui

Package Reference