Changes between Initial Version and Version 6 of Ticket #4122


Ignore:
Timestamp:
Dec 18, 2008, 6:29:42 AM (12 years ago)
Author:
bill
Comment:

I'm not sure what this means:

It also doesn't make sense to me to partially implement things like forEach if you aren't giving people an easy way to get at the data.

If you are talking about forEach() not taking a scope variable, that could definitely be added. If you are saying that you just want an array of output, not sure how that's related to forEach().

Regarding dojo.query() for dijits, I have heard discussion about that although, yes, it shouldn't be part of this ticket. Should make a new ticket... although probably the idea is too vague right now to even make a ticket....

Need to think about syntax etc. Would it be something like dijit.query(".foo dijit.form.Button") to find all button widgets with an ancestor DOM node with class=foo ? That syntax is no good b/c it's ambiguous. Anyway, think about what kind of API you would like. Think about whether it needs to work on DOM nodes or just widgets, and whether it needs to do things like querying on widget attributes (ex: find all Button widgets with name=foo, or BorderContainer widgets with design=headline)

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #4122

    • Property Summary changed from dijit.WidgetSet methods broken or mis-designed to dijit.WidgetSet: support array interface
    • Property Keywords 4alex added
    • Property Milestone changed from 1.1 to 2.0
    • Property Owner changed from bill to alex
    • Property Type changed from defect to enhancement
  • Ticket #4122 – Description

    initial v6  
    1 the methods on dijit.WidgetSet (and by association, dijit.registry) appear to surface array-like semantics (forEach, filter, etc.), however these methods do not take a scope parameter and do not return an array-like object. Given that many other bread-and-butter Dojo interfaces respect array-like semantics (sometimes going to great length to do so), these methods should probably be re-designed and a toArray() method (or better, basic array behavior on the base class itself) should be added to the class.
     1The methods on {{{dijit.WidgetSet}}} (and by association, dijit.registry) appear to surface array-like semantics (forEach, filter, etc.), however these methods do not take a scope parameter and do not return an array-like object. Given that many other bread-and-butter Dojo interfaces respect array-like semantics (sometimes going to great length to do so), these methods should probably be re-designed and a toArray() method (or better, basic array behavior on the base class itself) should be added to the class.