Hi,

I'm trying to use the new feature in the list controller (deputy) but I
can't get it to work without the form controller.

Martin, you said the limitation for using it with multi selection was in the
form controller. To test it I'm not using the form controller and I'm using
the Object controller instead.

Here are some code to illustrate what I'm trying to do:

http://demo.qooxdoo.org/1.3-pre/playground/#%7B%22code%22%3A%20%22%252F*%2520************************************************************************%250A%250A%2520%2520%2520qooxdoo%2520-%2520the%2520new%2520era%2520of%2520web%2520development%250A%250A%2520%2520%2520http%253A%252F%252Fqooxdoo.org%250A%250A%2520%2520%2520Copyright%253A%250A%2520%2520%2520%2520%25202004-2008%25201%25261%2520Internet%2520AG%252C%2520Germany%252C%2520http%253A%252F%252Fwww.1und1.de%250A%250A%2520%2520%2520License%253A%250A%2520%2520%2520%2520%2520LGPL%253A%2520http%253A%252F%252Fwww.gnu.org%252Flicenses%252Flgpl.html%250A%2520%2520%2520%2520%2520EPL%253A%2520http%253A%252F%252Fwww.eclipse.org%252Forg%252Fdocuments%252Fepl-v10.php%250A%2520%2520%2520%2520%2520See%2520the%2520LICENSE%2520file%2520in%2520the%2520project's%2520top-level%2520directory%2520for%2520details.%250A%250A%2520%2520%2520Authors%253A%250A%2520%2520%2520%2520%2520*%2520Martin%2520Wittemann%2520(martinwittemann)%250A%250A************************************************************************%2520*%252F%250A%250A%252F**%250A%2520*%2520%2540tag%2520databinding%250A%2520*%2520%2540tag%2520list%2520contorller%250A%2520*%2520%2540tag%2520form%2520controller%250A%2520*%252F%250Aqx.Class.define(%2522demobrowser.demo.data.FormAndListController%2522%252C%250A%257B%250A%2520%2520extend%2520%253A%2520qx.application.Standalone%252C%250A%250A%2520%2520members%2520%253A%250A%2520%2520%257B%250A%2520%2520%2520%2520main%253A%2520function()%250A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520this.base(arguments)%253B%250A%250A%2520%2520%2520%2520%2520%2520var%2520genders_data%2520%253D%2520%255B%250A%2520%2520%2520%2520%2520%2520%2520%2520%257Blabel%253A%2520%2522male%2522%252C%2520data%253A%2520%2522M%2522%257D%252C%2520%250A%2520%2520%2520%2520%2520%2520%2520%2520%257Blabel%253A%2520%2522female%2522%252C%2520data%253A%2520%2522F%2522%257D%252C%2520%250A%2520%2520%2520%2520%2520%2520%2520%2520%257Blabel%253A%2520%2522dont%2520know!%2522%252C%2520data%253A%2520%2522WTF%2522%257D%252C%2520%250A%2520%2520%2520%2520%2520%2520%2520%2520%257Blabel%253A%2520%2522Alien%2522%252C%2520data%253A%2520%2522A%2522%257D%250A%2520%2520%2520%2520%2520%2520%255D%253B%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520create%2520some%2520dummy%2520data%250A%2520%2520%2520%2520%2520%2520var%2520my_data%2520%253D%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520firstname%253A%2520%2522Martin%2522%252C%250A%2520%2520%2520%2520%2520%2520%2520%2520lastname%253A%2520%2522Wittemann%2522%252C%250A%2520%2520%2520%2520%2520%2520%2520%2520gender%253A%2520%255B%255D%250A%2520%2520%2520%2520%2520%2520%257D%253B%250A%2520%2520%2520%2520%2520%2520var%2520genders_model%2520%253D%2520qx.data.marshal.Json.createModel(genders_data)%253B%250A%2520%2520%2520%2520%2520%2520var%2520my_model%2520%253D%2520qx.data.marshal.Json.createModel(my_data)%253B%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520firstname%250A%2520%2520%2520%2520%2520%2520var%2520firstname%2520%253D%2520new%2520qx.ui.form.TextField()%253B%250A%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520lastname%250A%2520%2520%2520%2520%2520%2520var%2520lastname%2520%253D%2520new%2520qx.ui.form.TextField()%253B%250A%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520gender%250A%2520%2520%2520%2520%2520%2520var%2520gender%2520%253D%2520new%2520qx.ui.form.List()%253B%250A%2520%2520%2520%2520%2520%2520gender.setSelectionMode(%2522multi%2522)%253B%250A%2520%2520%2520%2520%2520%2520var%2520genderController%2520%253D%2520new%2520qx.data.controller.List(null%252C%2520gender)%253B%250A%2520%2520%2520%2520%2520%2520genderController.setDelegate(%257BbindItem%253A%2520function(controller%252C%2520item%252C%2520index)%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520controller.bindProperty(%2522label%2522%252C%2520%2522label%2522%252C%2520null%252C%2520item%252C%2520index)%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520controller.bindProperty(%2522data%2522%252C%2520%2522model%2522%252C%2520null%252C%2520item%252C%2520index)%253B%2520%2520%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520%257D%257D)%253B%250A%2520%2520%2520%2520%2520%2520genderController.setModel(genders_model)%253B%250A%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520create%2520the%2520form%2520and%2520add%2520it%2520to%2520the%2520root%250A%2520%2520%2520%2520%2520%2520this.getRoot().add(firstname%252C%2520%257Bleft%253A%252030%252C%2520top%253A%252020%257D)%253B%250A%2520%2520%2520%2520%2520%2520this.getRoot().add(lastname%252C%2520%257Bleft%253A%252030%252C%2520top%253A%252050%257D)%253B%250A%2520%2520%2520%2520%2520%2520this.getRoot().add(gender%252C%2520%257Bleft%253A%252030%252C%2520top%253A%252080%257D)%253B%250A%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520var%2520controller%2520%253D%2520new%2520qx.data.controller.Object(my_model)%253B%250A%250A%2520%2520%2520%2520%2520%2520controller.addTarget(firstname%252C%2520%2522value%2522%252C%2520%2522firstname%2522%252C%2520true)%253B%250A%2520%2520%2520%2520%2520%2520controller.addTarget(lastname%252C%2520%2522value%2522%252C%2520%2522lastname%2522%252C%2520true)%253B%250A%2520%2520%2520%2520%2520%2520controller.addTarget(genderController%252C%2520%2522selection%2522%252C%2520%2522gender%2522%252C%2520true)%253B%250A%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520A%2520button%2520to%2520log%2520the%2520models%2520content%250A%2520%2520%2520%2520%2520%2520var%2520logButton%2520%253D%2520new%2520qx.ui.form.Button(%2522Show%2520model%2520data%2520in%2520the%2520log%2522)%253B%250A%2520%2520%2520%2520%2520%2520this.getRoot().add(logButton%252C%2520%257Bleft%253A%2520240%252C%2520top%253A%252020%257D)%253B%250A%2520%2520%2520%2520%2520%2520logButton.addListener(%2522execute%2522%252C%2520function()%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520this.debug(qx.dev.Debug.debugProperties(my_model))%253B%250A%2520%2520%2520%2520%2520%2520%257D%252C%2520this)%253B%250A%2520%2520%2520%2520%2520%2520my_model.setGender(new%2520qx.data.Array(%255B%2522M%2522%252C%2520%2522WTF%2522%255D))%253B%250A%2520%2520%2520%2520%2520%2520%252F%252Fgender.setModelSelection(%255B%2522WTF%2522%255D)%253B%2520%252F%252F%2520that%2520works%2520bu%2520I%2520should%2520be%2520able%2520to%2520do%2520model.setGender(%255B%2522WTF%2522%255D)%253B%252C%2520shouldn't%2520I%253F%250A%2520%2520%2520%2520%257D%250A%2520%2520%257D%250A%257D)%253B%22%7D

As you can see: my_model.setGender() is not propagating the changes to the
UI. I think it's a bug because I'm creating a bidirectional binding.

or is there anything wrong with my code?
------------------------------------------------------------------------------
Sell apps to millions through the Intel(R) Atom(Tm) Developer Program
Be part of this innovative community and reach millions of netbook users 
worldwide. Take advantage of special opportunities to increase revenue and 
speed time-to-market. Join now, and jumpstart your future.
http://p.sf.net/sfu/intel-atom-d2d
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to