com.vaadin.polymer.iron.IronSelectorElement Maven / Gradle / Ivy
/*
* This code was generated with Vaadin Web Component GWT API Generator,
* from iron-selector project by The Polymer Authors
* that is licensed with http://polymer.github.io/LICENSE.txt license.
*/
package com.vaadin.polymer.iron;
import com.vaadin.polymer.elemental.*;
import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.core.client.JsArray;
import jsinterop.annotations.JsOverlay;
import jsinterop.annotations.JsProperty;
import jsinterop.annotations.JsType;
/**
* iron-selector
is an element which can be used to manage a list of elements
that can be selected. Tapping on the item will make the item selected. The selected
indicates
which item is being selected. The default is to use the index of the item.
* Example:
* <iron-selector selected="0">
* <div>Item 1</div>
* <div>Item 2</div>
* <div>Item 3</div>
* </iron-selector>
*
*
*
If you want to use the attribute value of an element for selected
instead of the index,
set attrForSelected
to the name of the attribute. For example, if you want to select item by
name
, set attrForSelected
to name
.
* Example:
* <iron-selector attr-for-selected="name" selected="foo">
* <div name="foo">Foo</div>
* <div name="bar">Bar</div>
* <div name="zot">Zot</div>
* </iron-selector>
*
*
*
You can specify a default fallback with fallbackSelection
in case the selected
attribute does
not match the attrForSelected
attribute of any elements.
* Example:
* <iron-selector attr-for-selected="name" selected="non-existing"
* fallback-selection="default">
* <div name="foo">Foo</div>
* <div name="bar">Bar</div>
* <div name="default">Default</div>
* </iron-selector>
*
*
*
Note: When the selector is multi, the selection will set to fallbackSelection
iff
the number of matching elements is zero.
* iron-selector
is not styled. Use the iron-selected
CSS class to style the selected element.
* Example:
* <style>
* .iron-selected {
* background: #eee;
* }
* </style>
*
* ...
*
* <iron-selector selected="0">
* <div>Item 1</div>
* <div>Item 2</div>
* <div>Item 3</div>
* </iron-selector>
*
*
*
*/
@JsType(isNative=true)
public interface IronSelectorElement extends HTMLElement {
@JsOverlay public static final String TAG = "iron-selector";
@JsOverlay public static final String SRC = "iron-selector/iron-selector.html";
/**
* If true, multiple selections are allowed.
*
* JavaScript Info:
* @property multi
* @type Boolean
*
*/
@JsProperty boolean getMulti();
/**
* If true, multiple selections are allowed.
*
* JavaScript Info:
* @property multi
* @type Boolean
*
*/
@JsProperty void setMulti(boolean value);
/**
* Returns the currently selected item.
*
* JavaScript Info:
* @property selectedItem
* @type ?Object
* @behavior PaperTabs
*/
@JsProperty JavaScriptObject getSelectedItem();
/**
* Returns the currently selected item.
*
* JavaScript Info:
* @property selectedItem
* @type ?Object
* @behavior PaperTabs
*/
@JsProperty void setSelectedItem(JavaScriptObject value);
/**
* Gets or sets the selected element. The default is to use the index of the item.
*
* JavaScript Info:
* @property selected
* @type (string|number)
*
*/
@JsProperty Object getSelected();
/**
* Gets or sets the selected element. The default is to use the index of the item.
*
* JavaScript Info:
* @property selected
* @type (string|number)
*
*/
@JsProperty void setSelected(Object value);
/**
* The list of items from which a selection can be made.
*
* JavaScript Info:
* @property items
* @type Array
* @behavior PaperTabs
*/
@JsProperty JsArray getItems();
/**
* The list of items from which a selection can be made.
*
* JavaScript Info:
* @property items
* @type Array
* @behavior PaperTabs
*/
@JsProperty void setItems(JsArray value);
/**
* Gets or sets the selected elements. This is used instead of selected
when multi
is true.
*
* JavaScript Info:
* @property selectedValues
* @type Array
* @behavior PaperTabs
*/
@JsProperty JsArray getSelectedValues();
/**
* Gets or sets the selected elements. This is used instead of selected
when multi
is true.
*
* JavaScript Info:
* @property selectedValues
* @type Array
* @behavior PaperTabs
*/
@JsProperty void setSelectedValues(JsArray value);
/**
* Returns an array of currently selected items.
*
* JavaScript Info:
* @property selectedItems
* @type Array
*
*/
@JsProperty JsArray getSelectedItems();
/**
* Returns an array of currently selected items.
*
* JavaScript Info:
* @property selectedItems
* @type Array
*
*/
@JsProperty void setSelectedItems(JsArray value);
/**
* The event that fires from items when they are selected. Selectable
will listen for this event from items and update the selection state.
Set to empty string to listen to no events.
*
* JavaScript Info:
* @property activateEvent
* @type String
* @behavior PaperTabs
*/
@JsProperty String getActivateEvent();
/**
* The event that fires from items when they are selected. Selectable
will listen for this event from items and update the selection state.
Set to empty string to listen to no events.
*
* JavaScript Info:
* @property activateEvent
* @type String
* @behavior PaperTabs
*/
@JsProperty void setActivateEvent(String value);
/**
* The class to set on elements when selected.
*
* JavaScript Info:
* @property selectedClass
* @type String
* @behavior PaperTabs
*/
@JsProperty String getSelectedClass();
/**
* The class to set on elements when selected.
*
* JavaScript Info:
* @property selectedClass
* @type String
* @behavior PaperTabs
*/
@JsProperty void setSelectedClass(String value);
/**
* If you want to use an attribute value or property of an element for
selected
instead of the index, set this to the name of the attribute
or property. Hyphenated values are converted to camel case when used to
look up the property of a selectable element. Camel cased values are
not converted to hyphenated values for attribute lookup. It’s
recommended that you provide the hyphenated form of the name so that
selection works in both cases. (Use attr-or-property-name
instead of
attrOrPropertyName
.)
*
* JavaScript Info:
* @property attrForSelected
* @type String
* @behavior PaperTabs
*/
@JsProperty String getAttrForSelected();
/**
* If you want to use an attribute value or property of an element for
selected
instead of the index, set this to the name of the attribute
or property. Hyphenated values are converted to camel case when used to
look up the property of a selectable element. Camel cased values are
not converted to hyphenated values for attribute lookup. It’s
recommended that you provide the hyphenated form of the name so that
selection works in both cases. (Use attr-or-property-name
instead of
attrOrPropertyName
.)
*
* JavaScript Info:
* @property attrForSelected
* @type String
* @behavior PaperTabs
*/
@JsProperty void setAttrForSelected(String value);
/**
* Default fallback if the selection based on selected with attrForSelected
is not found.
*
* JavaScript Info:
* @property fallbackSelection
* @type String
* @behavior PaperTabs
*/
@JsProperty String getFallbackSelection();
/**
* Default fallback if the selection based on selected with attrForSelected
is not found.
*
* JavaScript Info:
* @property fallbackSelection
* @type String
* @behavior PaperTabs
*/
@JsProperty void setFallbackSelection(String value);
/**
* The attribute to set on elements when selected.
*
* JavaScript Info:
* @property selectedAttribute
* @type String
* @behavior PaperTabs
*/
@JsProperty String getSelectedAttribute();
/**
* The attribute to set on elements when selected.
*
* JavaScript Info:
* @property selectedAttribute
* @type String
* @behavior PaperTabs
*/
@JsProperty void setSelectedAttribute(String value);
/**
* This is a CSS selector string. If this is set, only items that match the CSS selector
are selectable.
*
* JavaScript Info:
* @property selectable
* @type string
* @behavior PaperTabs
*/
@JsProperty String getSelectable();
/**
* This is a CSS selector string. If this is set, only items that match the CSS selector
are selectable.
*
* JavaScript Info:
* @property selectable
* @type string
* @behavior PaperTabs
*/
@JsProperty void setSelectable(String value);
/**
* Selects the given value. If the multi
property is true, then the selected state of the
value
will be toggled; otherwise the value
will be selected.
*
* JavaScript Info:
* @method select
* @param {(string|number)} value
* @behavior PaperTabs
*
*/
void select(Object value);
/**
*
*
* JavaScript Info:
* @method multiChanged
* @param {} multi
*
*
*/
void multiChanged(Object multi);
/**
* Selects the item at the given index.
*
* JavaScript Info:
* @method selectIndex
* @param {} index
* @behavior PaperTabs
*
*/
void selectIndex(Object index);
/**
* Selects the next item.
*
* JavaScript Info:
* @method selectNext
* @behavior PaperTabs
*
*/
void selectNext();
/**
* Force a synchronous update of the items
property.
* NOTE: Consider listening for the iron-items-changed
event to respond to
updates to the set of selectable items after updates to the DOM list and
selection state have been made.
* WARNING: If you are using this method, you should probably consider an
alternate approach. Synchronously querying for items is potentially
slow for many use cases. The items
property will update asynchronously
on its own to reflect selectable items in the DOM.
*
* JavaScript Info:
* @method forceSynchronousItemUpdate
* @behavior PaperTabs
*
*/
void forceSynchronousItemUpdate();
/**
* Selects the previous item.
*
* JavaScript Info:
* @method selectPrevious
* @behavior PaperTabs
*
*/
void selectPrevious();
/**
* Returns the index of the given item.
*
* JavaScript Info:
* @method indexOf
* @param {Object} item
*
*
*/
void indexOf(JavaScriptObject item);
}