Hi

I assume that your _itemList variable is set via self model items: items.
If so then it looks like it will become an array due to the callback:passengers: sent to JQAjax: 
(html jQuery ajax 
callback: [:items | self model items: items]
        passengers: (html jQuery this find: 'li')

The implementation:
callback: aBlock passengers: aQuery
"Trigger the callback aBlock with the passengers of aQuery. Nodes that have no passenger are ignored."

self
callback: [ :value | 
aBlock value: (((value subStrings: ',')
collect: [ :each | self renderContext callbacks passengerAt: each ])
reject: [ :each | each isNil ]) ]
value: (JSStream on: JQuery functionName , '.map(' , aQuery greaseString , '.get(),function(each){return each.id}).join(",")')

uses (value subStrings: ',') which will return an array.
You could modify your setter accessor items: to modify the collection using asOrderedCollection if you need this...?

Kind Regards
Carlo


On 13 Feb 2015, at 11:26 AM, Mircea S. <mircea@unom.ro> wrote:

The code below is form the Seaside book at: http://book.seaside.st/book/web-20/jquery/enhanced-todo-application/drag-and-drop


ToDoListView>>renderContentOn: html

self renderHeadingOn: html.
     html form: [(html unorderedList)
                                    id: (listId := html nextId);
                                    script: ((html jQuery new sortable)
                                                            onStop: (html jQuery ajax
                                                            callback: [:items | self model items: items]
                                                            passengers: (html jQuery this find: 'li'));
                                                            axis: 'y');
                                   with: [self renderItemsOn: html].
                       
                       (html submitButton)
                                callback: [self add];
                                text: 'Add'].
html render: editor

My instance variable _itemList is initially OrderedCollection. As soon as I move the rows around in the page then entire list is sent back in it's new order. However, this time setItemList: receives an Array.

Does this make any sense? Am I missing something?