View Full Version : Store and autoload

6 Mar 2012, 3:45 AM
Store and autoload

This post is about the consequence of an apparent change between 4.0.7 and the current beta because in Designer 2.0 (298) the store autoload property supports only true/default rather than true/false/default as some other boolean properties do.

In version 4.0.7 the autoload property of a store defaults to false however in 4.1 and later it is undefined which appears to be treated by ExtJS as true. When editing code manually this is not a problem because the property can be set explicitly. However when using the designer with 4.1 the inability to explicitly define 'false' is a problem because then the choices are 'default' (true) or true. To paraphrase Henry Ford, you can have any setting you like so long as its 'true'.

I can understand that this will be regarded unsympathetically if the designer will not support 4.1 at release. However it seems the release of Designer 2.0 and ExtJS 4.1 will be in the same time frame. 4.1 fixes so many bugs I can imagine many, like me, will hope to be able to use it. So it with this mind set I'm creating this post.

In any case, it will be great to have this boolean property support true/false/default as it will make no difference to 4.0.7 support but will moderate the impact of the apparent change in 4.1.

7 Mar 2012, 3:02 PM
Fair points bseddon,

When we upgrade to 4.1 we'll also treat this property to have a default of undefined and not false which should allow you to get what you want. Also with the new version of Designer build 308 released today. You should be able to set this in an overrides class.

Click on the store
Switch to code view
Click create override
Add your code in here to specify autoload: false

You can of course remove this later after we make this ternary.

Also expect a better UX for this tristate to come in the near future!

7 Mar 2012, 3:31 PM
Thanks for the information. In response I'd like to make sure the information I'm providing is correct. My intention is to make sure you are able to address real issues not my incidental ones.

In trying to resolve setting this property the way I'd like it and also a related one (setting the url on a proxy) I discovered the problem is not as I described it. It is true that at the moment 4.1 (as of last night's build) the autoLoad does return undefined but this was not the cause of my problem. It turns out the problem is a result of using the treestore which will call the proxy to populate the store when the tree's root node is set regardless of the autoLoad setting. This is true of 4.0.7 and of the 4.1 builds.

The resulting behavior is as I described it (any autoLoad setting is effectively true) but not for the reason I stated. The only way to prevent the treestore loading automatically is to not add a root node until data should be loaded.

7 Mar 2012, 3:54 PM
bseddon -

The above points you've made in regard to a TreePanel used in conjunction with a TreeStore are accurate.

We also are working on a ternary editor for boolean values.