blob: 5c59403c35605c4e7ce4ec08356c9c37c4c1b94f [file] [log] [blame]
{ "type": "interface",
"qname": "mx.collections.IViewCursor",
"baseInterfaceNames": [
"org.apache.royale.events.IEventDispatcher"]
,
"description": "Defines the interface for enumerating a collection view bi-directionally. This cursor provides find, seek, and bookmarking capabilities along with the modification methods insert and remove. When a cursor is first retrieved from a view, (typically by the ICollectionView <code>createCursor()</code> method) the value of the <code>current</code> property should be the first item in the view, unless the view is empty.",
"tags": [
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"members": [
{ "type": "accessor",
"access": "read-only",
"return": "Boolean",
"qname": "afterLast",
"namespace": "public",
"bindable": ["cursorUpdate"],
"details": [],
"deprecated": {},
"description": "If the cursor is located after the last item in the view, this property is <code>true</code> . If the ICollectionView is empty (length == 0), this property is <code>true</code>.",
"tags": [
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ]},
{ "type": "accessor",
"access": "read-only",
"return": "Boolean",
"qname": "beforeFirst",
"namespace": "public",
"bindable": ["cursorUpdate"],
"details": [],
"deprecated": {},
"description": "If the cursor is located before the first item in the view, this property is <code>true</code>. If the ICollectionView is empty (length == 0), this property is <code>true</code>.",
"tags": [
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ]},
{ "type": "accessor",
"access": "read-only",
"return": "mx.collections.CursorBookmark",
"qname": "bookmark",
"namespace": "public",
"bindable": ["cursorUpdate"],
"details": [],
"deprecated": {},
"description": "Provides access to a bookmark that corresponds to the item returned by the <code>current</code> property. The bookmark can be used to move the cursor to a previously visited item, or to a position relative to that item. (See the <code>seek()</code> method for more information.)",
"tags": [
{ "tagName": "see",
"values": ["#current", "#seek()"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ]},
{ "type": "accessor",
"access": "read-only",
"return": "Object",
"qname": "current",
"namespace": "public",
"bindable": ["cursorUpdate"],
"details": [],
"deprecated": {},
"description": "Provides access the object at the location in the source collection referenced by this cursor. If the cursor is beyond the ends of the collection (<code>beforeFirst</code>, <code>afterLast</code>) this will return <code>null</code>.",
"tags": [
{ "tagName": "see",
"values": ["#moveNext()", "#movePrevious()", "#seek()", "#beforeFirst", "#afterLast"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ]},
{ "type": "accessor",
"access": "read-only",
"return": "mx.collections.ICollectionView",
"qname": "view",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "A reference to the ICollectionView with which this cursor is associated.",
"tags": [
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ]},
{ "type": "method",
"qname": "findAny",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Finds an item with the specified properties within the collection and positions the cursor to that item. If the item cannot be found, the cursor location does not change. <p>The <code>findAny()</code> method can only be called on sorted views; if the view isn't sorted, a <code>CursorError</code> is thrown.</p> <p>If the associated collection is remote, and not all of the items have been cached locally, this method begins an asynchronous fetch from the remote collection. If one is already in progress, this method waits for it to complete before making another fetch request.</p> <p>If multiple items can match the search criteria then the item found is non-deterministic. If it is important to find the first or last occurrence of an item in a non-unique index, use the <code>findFirst()</code> or <code>findLast()</code> method.</p> <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown.</p> as in an associative array (or be the actual object to search for). The values of the names specified must match properties specified in the sort. For example, if properties <code>x</code>, <code>y</code>, and <code>z</code> are in the current sort, the values specified should be <code>{x: <i>x-value</i>, y: <i>y-value</i>, z: <i>z-value</i>}</code>. <code>true</code> if the item can be found and <code>false</code> otherwise.",
"tags": [
{ "tagName": "see",
"values": ["#findFirst()", "#findLast()", "mx.collections.errors.ItemPendingError"]},
{ "tagName": "param",
"values": ["values The search criteria. The values in the Object must be configured as name-value pairs,"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["When all of the data is local this method returns"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Boolean",
"params": [{ "name": "values", "type": "Object"}]}
,
{ "type": "method",
"qname": "findFirst",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Finds the first item with the specified properties within the collection and positions the cursor to that item. If the item cannot be found, no cursor location does not change. <p>The <code>findFirst()</code> method can only be called on sorted views; if the view isn't sorted, a <code>CursorError</code> is thrown.</p> <p>If the associated collection is remote, and not all of the items have been cached locally, this method begins an asynchronous fetch from the remote collection. If one is already in progress, this method waits for it to complete before making another fetch request.</p> <p>If it is not important to find the first occurrence of an item in a non-unique index, use <code>findAny()</code>, which may be a little faster than the <code>findFirst() method</code>.</p> <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown.</p> as in an associative array (or be the actual object to search for). The values of the names specified must match properties specified in the sort. For example, if properties <code>x</code>, <code>y</code>, and <code>z</code> are in the current sort, the values specified should be <code>{x: <i>x-value</i>, y: <i>y-value</i>, z: <i>z-value</i>}</code>. <code>true</code> if the item can be found and <code>false</code> otherwise.",
"tags": [
{ "tagName": "see",
"values": ["#findAny()", "#findLast()", "mx.collections.errors.ItemPendingError"]},
{ "tagName": "param",
"values": ["values The search criteria. The values in the Object must be configured as name-value pairs,"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["When all of the data is local this method returns"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Boolean",
"params": [{ "name": "values", "type": "Object"}]}
,
{ "type": "method",
"qname": "findLast",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Finds the last item with the specified properties within the collection and positions the cursor on that item. If the item cannot be found, the cursor location does not chanage. <p>The <code>findLast()</code> method can only be called on sorted views; if the view isn't sorted, a <code>CursorError</code> is thrown.</p> <p>If the associated collection is remote, and not all of the items have been cached locally, this method begins an asynchronous fetch from the remote collection. If one is already in progress, this method waits for it to complete before making another fetch request.</p> <p>If it is not important to find the last occurrence of an item in a non-unique index, use the <code>findAny()</code> method, which may be a little faster.</p> <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown.</p> as in an associative array (or be the actual object to search for). The values of the names specified must match properties specified in the sort. For example, if properties <code>x</code>, <code>y</code>, and <code>z</code> are in the current sort, the values specified should be <code>{x: <i>x-value</i>, y: <i>y-value</i>, z: <i>z-value</i>}</code>. <code>true</code> if the item can be found and <code>false</code> otherwise.",
"tags": [
{ "tagName": "see",
"values": ["#findAny()", "#findFirst()", "mx.collections.errors.ItemPendingError"]},
{ "tagName": "param",
"values": ["values The search criteria. The values in the Object must be configured as name-value pairs,"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["When all of the data is local this method returns"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Boolean",
"params": [{ "name": "values", "type": "Object"}]}
,
{ "type": "method",
"qname": "insert",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Inserts the specified item before the cursor's current position. If the cursor is <code>afterLast</code>, the insertion occurs at the end of the view. If the cursor is <code>beforeFirst</code> on a non-empty view, an error is thrown.",
"tags": [
{ "tagName": "param",
"values": ["item The item to insert before the cursor's current position."]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "void",
"params": [{ "name": "item", "type": "Object"}]}
,
{ "type": "method",
"qname": "moveNext",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Moves the cursor to the next item within the collection. On success the <code>current</code> property is updated to reference the object at this new location. Returns <code>true</code> if the resulting <code>current</code> property is valid, or <code>false</code> if not (the property value is <code>afterLast</code>). <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown. See the ItemPendingError documentation and the collections documentation for more information on using the ItemPendingError.</p> <code>false</code> if the <code>current</code> value initially was or now is <code>afterLast</code>. <pre>\\n var myArrayCollection:ICollectionView = new ArrayCollection([ &quot;Bobby&quot;, &quot;Mark&quot;, &quot;Trevor&quot;, &quot;Jacey&quot;, &quot;Tyler&quot; ]);\\n var cursor:IViewCursor = myArrayCollection.createCursor();\\n while (!cursor.afterLast)\\n {\\n trace(cursor.current);\\n cursor.moveNext();\\n }\\n </pre>",
"tags": [
{ "tagName": "see",
"values": ["#current", "#movePrevious()", "mx.collections.errors.ItemPendingError"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["<code>true</code> if still in the list,"]},
{ "tagName": "example",
"values": []},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Boolean",
"params": []}
,
{ "type": "method",
"qname": "movePrevious",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Moves the cursor to the previous item within the collection. On success the <code>current</code> property is updated to reference the object at this new location. Returns <code>true</code> if the resulting <code>current</code> property is valid, or <code>false</code> if not (the property value is <code>beforeFirst</code>). <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown. See the ItemPendingError documentation and the collections documentation for more information on using the ItemPendingError.</p> <code>false</code> if the <code>current</code> value initially was or now is <code>beforeFirst</code>. For example: <pre>\\n var myArrayCollection:ICollectionView = new ArrayCollection([ &quot;Bobby&quot;, &quot;Mark&quot;, &quot;Trevor&quot;, &quot;Jacey&quot;, &quot;Tyler&quot; ]);\\n var cursor:IViewCursor = myArrayCollection.createCursor();\\n cursor.seek(CursorBookmark.last);\\n while (!cursor.beforeFirst)\\n {\\n trace(current);\\n cursor.movePrevious();\\n }\\n </pre>",
"tags": [
{ "tagName": "see",
"values": ["#current", "#moveNext()", "mx.collections.errors.ItemPendingError"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["<code>true</code> if still in the list,"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Boolean",
"params": []}
,
{ "type": "method",
"qname": "remove",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Removes the current item and returns it. If the cursor location is <code>beforeFirst</code> or <code>afterLast</code>, throws a CursorError. If you remove any item other than the last item, the cursor moves to the next item. If you remove the last item, the cursor is at the AFTER_LAST bookmark. <p>If the item after the removed item is not local and an asynchronous operation must be performed, an ItemPendingError is thrown. See the ItemPendingError documentation and the collections documentation for more information on using the ItemPendingError.</p>",
"tags": [
{ "tagName": "see",
"values": ["mx.collections.errors.ItemPendingError"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "return",
"values": ["The item that was removed."]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "Object",
"params": []}
,
{ "type": "method",
"qname": "seek",
"namespace": "public",
"bindable": [],
"details": [],
"deprecated": {},
"description": "Moves the cursor to a location at an offset from the specified bookmark. The offset can be negative, in which case the cursor is positioned an <code>offset</code> number of items prior to the specified bookmark. <p>If the associated collection is remote, and not all of the items have been cached locally, this method begins an asynchronous fetch from the remote collection.</p> <p>If the data is not local and an asynchronous operation must be performed, an ItemPendingError is thrown. See the ItemPendingError documentation and the collections documentation for more information on using the ItemPendingError.</p> information that allows repositioning to a specific location. You can set this parameter to value returned from the <code>bookmark</code> property, or to one of the following constant bookmark values: <ul> <li><code>CursorBookmark.FIRST</code> - Seek from the start (first element) of the collection</li> <li><code>CursorBookmark.CURRENT</code> - Seek from the current position in the collection</li> <li><code>CursorBookmark.LAST</code> - Seek from the end (last element) of the collection</li> </ul> If the specified number is negative, the cursor attempts to move prior to the specified bookmark. If the offset specified is beyond the end of the collection, the cursor is be positioned off the end, to the <code>beforeFirst</code> or <code>afterLast</code> location. in a specific direction once the seek operation completes. This reduces the number of required network round trips during a seek. If the iteration direction is known at the time of the request, the appropriate amount of data can be returned ahead of the request to iterate it.",
"tags": [
{ "tagName": "see",
"values": ["mx.collections.errors.ItemPendingError"]},
{ "tagName": "param",
"values": ["bookmark <code>CursorBookmark</code> reference to marker", "offset Indicates how far from the specified bookmark to seek.", "prefetch Used for remote data. Indicates an intent to iterate"]},
{ "tagName": "playerversion",
"values": ["Flash 9", "AIR 1.1"]},
{ "tagName": "productversion",
"values": ["Royale 0.9.3"]},
{ "tagName": "langversion",
"values": ["3.0"]} ],
"return": "void",
"params": [{ "name": "bookmark", "type": "mx.collections.CursorBookmark"},
{ "name": "offset", "type": "int"},
{ "name": "prefetch", "type": "int"}]}
]
}