View Full Version : Documentation Bugs - Ext 2.x
makana
20 Nov 2008, 9:18 AM
Class: Ext.tree.TreeNode
Method: ensureVisible
It's not documented, that a callback function can be passed to this method.
Animal
22 Nov 2008, 9:15 AM
Augh!
I just did a big catchup on this and committed changes to 21 classes in each code branch, 2.0 and 3.0 to get us up to date.
I'll go and check the documentation example suggestions thread now.
mjlecomte
22 Nov 2008, 9:42 AM
Augh!
I just did a big catchup on this and committed changes to 21 classes in each code branch, 2.0 and 3.0 to get us up to date.
I'll go and check the documentation example suggestions thread now.
Awesome!! Are changes applied to online version 'soonish' these days? Seems like there's been changes to the online version since the 2.2 release, but I'm not sure.
Animal
22 Nov 2008, 10:14 AM
I don't think the docs have been regenerated since the 2.2 release which is a little disappointing.
It's not as if we documenters can break clients' code! I think the docs should be regenerated frequently because they are constantly changing in response to user quiestions and misunderstandings.
jweber
25 Nov 2008, 5:36 PM
The Date.parseDate() documentation should note that rollovers will occur if certain fields have a larger-than-expected value. These include days, months, hours, minutes, and seconds. See this thread (http://extjs.com/forum/showthread.php?p=255363#post255363).
mjlecomte
1 Dec 2008, 4:46 AM
IMO the part in red is not accurate due to the code following:
/**
* @class Ext.Button
* @extends Ext.Component
* Simple Button class
* @cfg {String} text The button text
* @cfg {String} icon The path to an image to display in the button (the image will be set as the background-image
* CSS property of the button by default, so if you want a mixed icon/text button, set cls:"x-btn-text-icon")
* @cfg {Function} handler A function called when the button is clicked (can be used instead of click event)
* @cfg {Object} scope The scope of the handler
* @cfg {Number} minWidth The minimum width for this button (used to give a set of buttons a common width)
* @cfg {String/Object} tooltip The tooltip for the button - can be a string or QuickTips config object
* @cfg {Boolean} hidden True to start hidden (defaults to false)
* @cfg {Boolean} disabled True to start disabled (defaults to false)
* @cfg {Boolean} pressed True to start pressed (only if enableToggle = true)
* @cfg {String} toggleGroup The group this toggle button is a member of (only 1 per group can be pressed, only
* applies if enableToggle = true)
* @cfg {Boolean/Object} repeat True to repeat fire the click event while the mouse is down. This can also be
an {@link Ext.util.ClickRepeater} config object (defaults to false).
* @constructor
* Create a new button
* @param {Object} config The config object
*/
it doesn't matter if it's true or not, because initComponent forces it to be true:
if(typeof this.toggleGroup === 'string'){
this.enableToggle = true;
}
Condor
2 Dec 2008, 4:15 AM
The Template/XTemplate docs are still incomplete:
Ext.Template has the following config options:
compiled (Boolean): true to compile the template immediately (see compile()) (default: false)
disableFormats (Boolean): true to disable format functions in the template. If the template doesn't contain format functions, setting disableFormats to true will reduce apply time (default: false)
re (RegExp): The regular expression used to match template variables (default: matches {name}).
Ext.XTemplate has an extra config option:
codeRe (RegExp): The regular expression used to match code variables (default: matches {[expression]}).
Ext.XTemplate has also the ability to execute arbitrary code with <tpl exec="..."></tpl>
It's also worth a note that the <tpl> tag must conform to:
<tpl (for|if|exec)="value">content</tpl>
So, the following <tpl> tags are invalid:
<tpl for='.'>...</tpl>
<tpl if = "true">...</tpl>
<tpl exec="this.doSomething()" />
Finally, the Ext.Template docs demonstrate how to use format functions, but this is missing from the Ext.XTemplate docs.
mjlecomte
4 Dec 2008, 5:02 PM
Class Ext.Template
Should the bit in red be an array instead of an object?
/**
* Alias for {@link #applyTemplate}
* Returns an HTML fragment of this template with the specified values applied.
* @param {Object/Array} values The template values. Can be an array if your params are numeric (i.e. {0}) or an object (i.e. {foo: 'bar'})
* @return {String} The HTML fragment
* @member Ext.Template
* @method apply
*/
Starfall
5 Dec 2008, 1:34 PM
Ext.tree.TreeLoader events:
I think it's better to call the second argument to event listeners not just node, but parentNode.
beforeload event text: Extra "a", in "which specifies a node's children"
load event text: "Fires when the node's children have been successfully loaded"
mjlecomte
8 Dec 2008, 5:20 AM
Ext.menu.Menu
missing documentation for z-index config option
// private
createEl : function(){
return new Ext.Layer({
cls: "x-menu",
shadow:this.shadow,
constrain: false,
parentEl: this.parentEl || document.body,
zindex: this.zIndex || 15000
});
},
/**
* @cfg {Number} zIndex z-index (defaults to 15000)
*/
Also, constrain is fixed to be false. Why? Conflicts with align?
mystix
8 Dec 2008, 5:59 PM
Also, constrain is fixed to be false. Why? Conflicts with align?
i reported an issue some weeks back on the constrain flag always being set to false:
http://extjs.com/forum/showthread.php?t=52475
is this what you're referring to?
mjlecomte
8 Dec 2008, 7:24 PM
i reported an issue some weeks back on the constrain flag always being set to false:
http://extjs.com/forum/showthread.php?t=52475
is this what you're referring to?
I think that's a separate issue (presuming this is actually an issue at all), because what I'm referring to is using Ext.Layer (reproduced again below):
// private
createEl : function(){
return new Ext.Layer({
cls: "x-menu",
shadow:this.shadow,
constrain: false, // why only false?
parentEl: this.parentEl || document.body,
zindex: this.zIndex || 15000
});
},
Element.addListener(String eventName, Function fn);
fn is described as fn(EventObject evt, Element t, Object o);
but it is fn(EventObject evt, HTMLElement t, Object o);
Class Ext.form.FormPanel
In the getForm() method, there is a malformed {link ...} showing up in the text
Also, there are two uses of the word "Form" when I think they should both be "BasicForm" instead
Class Ext.form.FormPanel
In the API docs, if you expand the add() public method, the comments do not wrap correctly after expansion. The expand/hide button also disappears for every public method when add() is expanded.
Animal
11 Dec 2008, 12:51 AM
Class Ext.form.FormPanel
In the getForm() method, there is a malformed {link ...} showing up in the text
Also, there are two uses of the word "Form" when I think they should both be "BasicForm" instead
That's a bug in the documentation generator - it's not processing the {@link} directive. The underlying code is the same in both places. "Form" is just used as shorthand to refer to the BasicForm, and the link does link to BasicForm.
Animal
11 Dec 2008, 12:51 AM
Class Ext.form.FormPanel
In the API docs, if you expand the add() public method, the comments do not wrap correctly after expansion. The expand/hide button also disappears for every public method when add() is expanded.
I can't reproduce this. In FF anyway, I don't tend to run other browsers.
watrboy00
12 Dec 2008, 1:08 PM
Component's isXType method shows that it does not return a value when in fact it returns a boolean whether or not the tested component is of type XType.
/**
* <p>Tests whether or not this Component is of a specific xtype. This can test whether this Component is descended
* from the xtype (default) or whether it is directly of the xtype specified (shallow = true).</p>
* <p><b>If using your own subclasses, be aware that a Component must register its own xtype
* to participate in determination of inherited xtypes.</b></p>
* <p>For a list of all available xtypes, see the {@link Ext.Component} header.</p>
* <p>Example usage:</p>
* <pre><code>
var t = new Ext.form.TextField();
var isText = t.isXType('textfield'); // true
var isBoxSubclass = t.isXType('box'); // true, descended from BoxComponent
var isBoxInstance = t.isXType('box', true); // false, not a direct BoxComponent instance
</code></pre>
* @param {String} xtype The xtype to check for this Component
* @param {Boolean} shallow (optional) False to check whether this Component is descended from the xtype (this is
* the default), or true to check whether this Component is directly of the specified xtype.
* @return {Boolean} True if the component is of type xtype, else false
* if it is not.
*/
mjlecomte
13 Dec 2008, 5:00 PM
Propose some slight revisions to Ext.data.Record.create (http://extjs.com/deploy/dev/docs/?class=Ext.data.Record&member=create).
Why? Show some more of the config options in action in the example. Some are already shown at the top of JsonStore (http://extjs.com/deploy/dev/docs/?class=Ext.data.JsonStore), data.Record.create is also appropriate.
Proposed changes are underlined:
usage:
var TopicRecord = Ext.data.Record.create([
{name: 'title', mapping: 'topic_title'},
{name: 'author', mapping: 'username'},
{name: 'totalPosts', mapping: 'topic_replies', type: 'int'},
{name: 'lastPost', mapping: 'post_time', type: 'date'},
{name: 'lastPoster'}, // will use mapping = 'lastPoster'
'excerpt' // *only string value required if only specifying name property
]);
var myNewRecord = new TopicRecord({
topic_title: 'Do my job please',
username: 'noobie',
topic_replies: 1,
post_time: new Date(),
user2: 'Animal',
post_text: 'No way dude!'
});
myStore.add(myNewRecord);
*In the simplest case, if no properties other than name are required, a field definition may consist of just a field name string.
Here's the source code snippet if it helps:
/**
* Generate a constructor for a specific Record layout.
* @param {Array} o An Array of field definition objects which specify field names, and optionally,
* data types, and a mapping for an {@link Ext.data.Reader} to extract the field's value from a data object.
* Each field definition object may contain the following properties: <ul>
* <li><b>name</b> : String<div class="sub-desc">The name by which the field is referenced within the Record. This is referenced by,
* for example, the <em>dataIndex</em> property in column definition objects passed to {@link Ext.grid.ColumnModel}
* . If only the <b>name</b> is being specified for a particular field definition object you can simply specify value of the name.
* </div></li>
* <li><b>mapping</b> : String<div class="sub-desc">(Optional) A path specification for use by the {@link Ext.data.Reader} implementation
* that is creating the Record to access the data value from the data object. If an {@link Ext.data.JsonReader}
* is being used, then this is a string containing the javascript expression to reference the data relative to
* the Record item's root. If an {@link Ext.data.XmlReader} is being used, this is an {@link Ext.DomQuery} path
* to the data item relative to the Record element. If the mapping expression is the same as the field name,
* this may be omitted.</div></li>
* <li><b>type</b> : String<div class="sub-desc">(Optional) The data type for conversion to displayable value. Possible values are
* <ul><li>auto (Default, implies no conversion)</li>
* <li>string</li>
* <li>int</li>
* <li>float</li>
* <li>boolean</li>
* <li>date</li></ul></div></li>
* <li><b>sortType</b> : Mixed<div class="sub-desc">(Optional) A member of {@link Ext.data.SortTypes}.</div></li>
* <li><b>sortDir</b> : String<div class="sub-desc">(Optional) Initial direction to sort. "ASC" or "DESC"</div></li>
* <li><b>convert</b> : Function<div class="sub-desc">(Optional) A function which converts the value provided
* by the Reader into an object that will be stored in the Record. It is passed the
* following parameters:<ul>
* <li><b>v</b> : Mixed<div class="sub-desc">The data value as read by the Reader.</div></li>
* <li><b>rec</b> : Mixed<div class="sub-desc">The data object containing the row as read by the Reader.
* Depending on Reader type, this could be an Array, an object, or an XML element.</div></li>
* </ul></div></li>
* <li><b>dateFormat</b> : String<div class="sub-desc">(Optional) A format string for the {@link Date#parseDate Date.parseDate} function,
* or "timestamp" if the value provided by the Reader is a UNIX timestamp, or "time" if the value provided by the Reader is a
* javascript millisecond timestamp.</div></li>
* <li><b>defaultValue</b> : Mixed<div class="sub-desc">(Optional) The default value passed to the Reader when the field does
* not exist in the data object (i.e. undefined). (defaults to "")</div></li>
* </ul>
* The constructor generated by this method may be used to create new Record instances. The data object must contain properties
* named after the field <b>names</b>.
* <br>usage:<br><pre><code>
var TopicRecord = Ext.data.Record.create([
{name: 'title', mapping: 'topic_title'},
{name: 'author', mapping: 'username'},
{name: 'totalPosts', mapping: 'topic_replies', type: 'int'},
{name: 'lastPost', mapping: 'post_time', type: 'date'},
{name: 'lastPoster'}, // will use mapping = 'lastPoster'
'excerpt' // *only string value required if only specifying name property
]);
var myNewRecord = new TopicRecord({
title: 'Do my job please',
author: 'noobie',
totalPosts: 1,
lastPost: new Date(),
lastPoster: 'Animal',
excerpt: 'No way dude!'
});
myStore.add(myNewRecord);
</code></pre>
* <p>*In the simplest case, if no properties other than <tt>name</tt> are required, a field definition
* may consist of just a field name string.</p>
* @method create
* @return {function} A constructor which is used to create new Records according
* to the definition.
* @static
*/
Class Ext.MessageBox
Two invalid links appear in the show() method's fn parameter:
{@link #show-option-prompt prompt}
{@link #show-option-multiline multiline}
Animal, I just saw your note above about this being a bug in the documentation generator. I guess I'll stop reporting the {@link } related issues I find in the documentation.
I can't reproduce this. In FF anyway, I don't tend to run other browsers.
I can reproduce it every time running FF 3.0.4. Try constraining the browser window horizontally. I noticed that if I expand the browser window, there is a point where it starts to wrap normally.
accilies
17 Dec 2008, 2:43 AM
Thanks this helped me where there was data inconsistency in the json feed i received.
<tpl if='[values.XXX]'>...</tpl>
The Template/XTemplate docs are still incomplete:
Ext.Template has the following config options:
compiled (Boolean): true to compile the template immediately (see compile()) (default: false)
disableFormats (Boolean): true to disable format functions in the template. If the template doesn't contain format functions, setting disableFormats to true will reduce apply time (default: false)
re (RegExp): The regular expression used to match template variables (default: matches {name}).
Ext.XTemplate has an extra config option:
codeRe (RegExp): The regular expression used to match code variables (default: matches {[expression]}).
Ext.XTemplate has also the ability to execute arbitrary code with <tpl exec="..."></tpl>
It's also worth a note that the <tpl> tag must conform to:
<tpl (for|if|exec)="value">content</tpl>So, the following <tpl> tags are invalid:
<tpl for='.'>...</tpl>
<tpl if = "true">...</tpl>
<tpl exec="this.doSomething()" />Finally, the Ext.Template docs demonstrate how to use format functions, but this is missing from the Ext.XTemplate docs.
mjlecomte
28 Dec 2008, 5:58 AM
[implemented]
See http://extjs.com/forum/showthread.php?p=267193#post267193
mikamikaze
29 Dec 2008, 6:40 AM
Class: Container
Method: add
When expanded, a vertical scrollbar is appearing, an the collapse button isn't visible (FF3, IE 6).
TaterSalad
29 Dec 2008, 4:46 PM
[implemented]
The constructor public method for RadioGroup reads:
RadioGroup( Object config )
Creates a new CheckboxGroup
Typo.
Ytorres
4 Jan 2009, 5:57 AM
[implemented]
Hi all,
I don't know if this typo have been already report or not.
In the documentation, Sample, in the Layout Browser :
=> Basic Ext Layout => Accordion :
Sample config :
layout: 'accordion',
items:[{
title: 'Panel 1',
html: 'Content'
},{
title: 'Panel 2, // <=== Missing ' here
id: 'panel2',
html: 'Content'
}]
mjlecomte
8 Jan 2009, 12:58 PM
[implemented]
Class Ext.form.Field (http://extjs.com/deploy/dev/docs/?class=Ext.form.Field)
Package: Ext.form
Defined In: Field.js
Class: Field (http://extjs.com/deploy/dev/docs/?class=Ext.form.Field)
disabled : Boolean
True to disable the field (defaults to false).
I wasn't aware that disabled fields won't get submitted. The API is a tad sparse in this area. I'll note a few items found from various forum posts:
Disabled fields do not get submitted.
http://www.w3.org/TR/html401/interact/forms.html#h-17.12.1
Previously suggested workarounds:
Use readOnly http://extjs.com/deploy/dev/docs/?class=Ext.form.Field&member=readOnly true with cls:'x-item-disabled'. The field isn't really html disabled, it's only "masked" and the value is still sent.
Enable the fields temporarily?
Use a hidden field for the value AND a disabled field for display.
Perhaps some of the above can get worked into future docs.
Condor
8 Jan 2009, 2:59 PM
[implemented]
Use a hidden field for the value AND a disabled field for display.
I would recommend the StaticTextField user extension for that.
mjlecomte
8 Jan 2009, 3:14 PM
[implemented]
I would recommend the StaticTextField user extension for that.
Thanks for the comment. Not to steer this thread too far off, I bumped one of the related threads here:
http://extjs.com/forum/showthread.php?p=271184#post271184
To clarify my prior post I wasn't suggesting any method, just that I thought that the API could use a few additional remarks about the matter.
@Condor: please see the linked thread for additional discussion.
mdm-adph
9 Jan 2009, 10:31 AM
Just found out that xtype "radio" can accept a "validator" config, but this isn't reflected in the docs for either it, xtype "checkbox", or xtype "field".
Nothing to worry about?:-/
Animal
9 Jan 2009, 2:48 PM
All Components will accept any configs. Doesn't mean they'll do anything. And validator doesn't make Radio do anything,
mdm-adph
12 Jan 2009, 6:52 AM
I meant "accept" to mean "process."
And that's very strange, then. Because I've got this little bit of code in a form:
{
items: [{
xtype: "textfield",
name: "ReqAlt2Phone",
fieldLabel: "Alternate Phone #2",
regex: CONST.validPhoneRegex,
regexText: CONST.validPhoneRegexMsg
},{
xtype: "radio",
name: "ReqPhoneSelection",
boxLabel: "Use this number to return calls",
inputValue: "Alt2",
labelSeparator: "",
msgTarget: "under",
validator: _FUNC_validatePhoneNumbers
}]
}With this as the "validator" for that radio:
function _FUNC_validatePhoneNumbers(value) {
// Grab sibling field to this rdio button
var _siblingField = this.findSibling("Req" + this.inputValue + "Phone");
// If sibling field is empty (its personal validation won't fire) and this radio button is checked
if (_siblingField.getRawValue() === "" && this.checked == true)
{
return "You must enter a valid alternate number."
}
else
{
return true;
}
};And upon form.isValid(), that validator is being run, and will only throw the "ReqPhoneSelection" error if it's checked and "ReqAlt2Phone" is empty.
Animal
12 Jan 2009, 1:47 PM
Strange. Set a breakpoint in there, and go back through the call stack and find out who's calling it.
It's only called by TextField, and Radio does not inherit from TextField.
mdm-adph
12 Jan 2009, 2:13 PM
Looks like it's the new Ext.form.Checkbox.validateValue mentioned here: http://www.extjs.com/forum/showthread.php?p=238498#post238498 :-?
Condor
13 Jan 2009, 3:29 AM
[implemented]
The lastQuery property of ComboBox is undocumented.
I propose:
/**
* The value of the last query used to filter the store. Delete this property to force a requery.
* @property lastQuery
* @type String
*/
mjlecomte
13 Jan 2009, 4:37 AM
[implemented]
The lastQuery property of ComboBox is undocumented.
I propose:
/**
* The value of the last query used to filter the store. Delete this property to force a requery.
* @property lastQuery
* @type String
*/
Suggest beefing it up with an example:
/**
* The value of the last query used to filter the store. Delete this property to force a requery.
* <pre><code>
var combo = new Ext.form.ComboBox({
...
mode: 'remote',
...
listeners: {
// delete the previous query in the beforequery event to set
// combo.lastQuery = null (this will reload the store the next time it expands)
beforequery: function(qe){
delete qe.combo.lastQuery;
}
}
});
</code></pre>
*
* @property lastQuery
* @type String
*/
Condor
13 Jan 2009, 4:52 AM
[implemented]
Small correction:
// delete the previous query in the beforequery event or set
// combo.lastQuery = null (this will reload the store the next time it expands)
(delete removes a property, so it will evaluate to undefined)
jay@moduscreate.com
14 Jan 2009, 10:57 AM
Non-functioning inherited configuration objects should be purged from tab panel.
Like: frame, title, html, etc. Test case:
var tabPanel = new Ext.TabPanel({
title : 'Test',
header : true,
frame : true,
height : 300,
width : 500,
renderTo : Ext.getBody(),
activeTab : 0,
items : [
{
title : 'My first tab',
html : 'This is my first tab!'
},
{
title : 'My second tab',
html : 'This one can be closed',
closable : true
},
{
title : 'Disabled tab',
html : 'Peekaboo!',
disabled : true,
closable : true
}
]
});
Animal
16 Jan 2009, 7:46 AM
It has not generally been Jack's policy to have the constructor remove non-functioning configs from the configuration object at run time.
The option is to hide them in the docs using the @hide marker.
You will notice in SVN that title is hidden. Perhaps some more @hide markers need to go in there.
Animal
16 Jan 2009, 7:50 AM
frame is OK.
And you can use title if you use tabPosition: 'bottom' because that frees the header Element.
Likewise, you can't use buttons if you use tabPosition: 'bottom' because that uses the footer Element.
mjlecomte
22 Jan 2009, 1:44 PM
http://extjs.com/deploy/dev/docs/?class=Ext.Panel&member=html
"html fragment" is a bit sparse. Suggest elaborating (can't include file references, etc....).
Provide a snippet of a valid 'html fragment'? Or show what can not be included.
ben_dog
22 Jan 2009, 3:14 PM
Not sure if this is the right place, it is about the documentation, but anyway...
on Mac, the Air API documentation application always loads up in a very small window. (screenshot attached)
Can it be fixed in the next version?
Not critical but mildly annoying :)
Ben
p.s. That's on Leopard, not sure about previous versions.
vmorale4
27 Jan 2009, 2:16 PM
Please specify what the default values is for boolean class properties in the documentation (i.e. autoFill, forceFit, defer emptyText, etc..)
See:
http://extjs.com/forum/showthread.php?t=27553
I understand this is not a small request, but I think it is better to start with something than doing nothing at all :)
TinKim
5 Feb 2009, 11:58 PM
[implemented]
Hello,
the documentation says there is a method on the DDProxy that is named "setInitialPosition", but actually it is named "setInitPosition".
Greetings from Germany!
Kim
Animal
6 Feb 2009, 12:35 AM
[implemented]
Thanks for the warning. I just fixed it in SVN. You won't see it until the docs are regenerated.
FYI, there's a sticky thread in "Bugs" for these issues.
vmorale4
6 Feb 2009, 12:56 PM
Whenever I click in the link for the source code of an API class, I get back a 404 Server error. I tried a couple of different classes with the same result
For example:
1. Go to http://extjs.com/deploy/dev/docs/?class=Ext.Panel
2. You should see something like this:
Class Ext.Panel
Package: Ext
Defined In: Panel.js (http://extjs.com/deploy/dev/src/Panel.js)
Class: Panel
Subclasses: TabPanel, Tip, Window, VideoPanel, FieldSet, FormPanel, GridPanel, TreePanel
Extends: Container
3. If you click on the Panel.js link you get the File Not Found error.
mjlecomte
7 Feb 2009, 7:16 AM
[implemented]
Class Ext.data.Record create
http://extjs.com/deploy/dev/docs/?class=Ext.data.Record&member=create
Suggestions posted here:
http://extjs.com/forum/showthread.php?p=284863#post284863
Also read 2 posts later in that linked thread for further critique.
dreas
9 Feb 2009, 12:41 AM
[implemented]
Just a minor one...
Class Ext.DomHelper
"For more information and examples, see the original blog post (http://www.jackslocum.com/blog/2006/10/06/domhelper-create-elements-using-dom-html-fragments-or-templates/)."
That link to Jack's blog isn't valid anymore.
Animal
9 Feb 2009, 12:58 AM
[implemented]
Perhaps Jack should dredge up the original blog entry, dust it off, and add it to the Ext blog so we can recreate a correct link?
[implemented]
Just in case that page went to /dev/null the internet archive (http://web.archive.org/web/*/http://www.jackslocum.com/blog/2006/10/06/domhelper-create-elements-using-dom-html-fragments-or-templates/) is keeping a few copies of it. I attached the last copy of that page to this post since it took forever to load.
mjlecomte
9 Feb 2009, 5:51 AM
[implemented]
Just a minor one...
Class Ext.DomHelper
"For more information and examples, see the original blog post (http://www.jackslocum.com/blog/2006/10/06/domhelper-create-elements-using-dom-html-fragments-or-templates/)."
That link to Jack's blog isn't valid anymore.
I thought I remember someone removing that link...oh well. I ported it to the wiki http://extjs.com/learn/Tutorial:DomHelper_Blog
Animal
9 Feb 2009, 6:06 AM
[implemented]
OK, I just brought that entry a couple of years up to date!
I'll add a link to it from the API docs. Thanks for saving that into the Wiki MJ.
mjlecomte
9 Feb 2009, 7:38 AM
[implemented] - fixed closing tag
monitorValid
small formatting problem:
If true, the form monitors its valid state client-side and regularly fires the clientvalidation event passing that state.
When monitoring valid state, the FormPanel enables/disables any of its configured buttons which have been configured with formBind: true depending on whether the form is valid or not.
should be
If true, the form monitors its valid state client-side and regularly fires the clientvalidation event passing that state.
When monitoring valid state, the FormPanel enables/disables any of its configured buttons which have been configured with formBind: true depending on whether the form is valid or not.
Edit: I'm attaching a screenshot because the source code looks like it should format it like I'm suggesting already?!
mjlecomte
9 Feb 2009, 9:11 AM
Ext.Layer undocumented properties.
I went looking for getZIndex, but there's probably a couple more that could be documented.
getZIndex : function(){
return this.zindex || parseInt(this.getStyle("z-index"), 10) || 11000;
},
getShim : function(){
},
hideShim : function(){
},
disableShadow : function(){
},
enableShadow : function(show){
},
mjlecomte
9 Feb 2009, 9:44 AM
Ext.Window
Suggest being more specific, the term "window" is confusing since this description is within the Ext.Window class.
/**
* Anchors this window to another element and realigns it when the browser window is resized or scrolled.
* @param {Mixed} element The element to align to.
* @param {String} position The position to align to (see {@link Ext.Element#alignTo} for more details)
* @param {Array} offsets (optional) Offset the positioning by [x, y]
* @param {Boolean/Number} monitorScroll (optional) true to monitor body scroll and reposition. If this parameter
* is a number, it is used as the buffer delay (defaults to 50ms).
* @return {Ext.Window} this
*/
anchorTo
mjlecomte
10 Feb 2009, 7:45 AM
/**
* @class Ext.Layer
* @extends Ext.Element
* An extended {@link Ext.Element} object that supports a shadow and shim, constrain to viewport and
* automatic maintaining of shadow/shim positions.
* @cfg {Boolean} shim False to disable the iframe shim in browsers which need one (defaults to true)
* @cfg {String/Boolean} shadow True to automatically create an {@link Ext.Shadow}, or a string indicating the
* shadow's display {@link Ext.Shadow#mode}. False to disable the shadow. (defaults to false)
* @cfg {Object} dh DomHelper object config to create element with (defaults to {tag: "div", cls: "x-layer"}).
* @cfg {Boolean} constrain False to disable constrain to viewport (defaults to true)
* @cfg {String} cls CSS class to add to the element
* @cfg {Number} id
* @cfg {String} parentEl
* @cfg {Boolean} useDisplay
* @cfg {Number} zindex Starting z-index (defaults to 11000)
* @cfg {Number} shadowOffset Number of pixels to offset the shadow (defaults to 3 4). Note that this option only applies when floating = true.
* @constructor
* @param {Object} config An object with config options.
* @param {String/HTMLElement} existingEl (optional) Uses an existing DOM element. If the element is not found it creates it.
*/
(function(){
Ext.Layer = function(config, existingEl){
...
var cp = config.parentEl,
...
if(config.id){
this.id = this.dom.id = config.id;
}else{
this.id = Ext.id(this.dom);
}
this.shadowOffset = config.shadowOffset || 4;
...
this.useDisplay = config.useDisplay;
Animal
10 Feb 2009, 9:11 AM
On a matter of style, the documents frequently refer to a parameter which may be an Ext.Element, or the ID of an element, or an "HtmlElement".
I think I should do a mass edit and change all of these "HtmlElement" references to the more technically correct "DOMElement" to indicate that what is being referred to is a DOM node of nodeType 1: A DOM Element
"HTML" is the name for a textual description of what the proposed DOM structure is going to be.
Its the same as when people have a javascript object and they call it "JSON". JSON is a string representation, not the object. It's the same with HTML. HTML is the string representation. When in the browser, you are dealing with a Document Object Model.
Anyone against these changes in the 3.0 code branch?
Condor
10 Feb 2009, 10:33 AM
DOMElement also isn't 100% correct. The DOM1 specs mentions Element (http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#ID-745549614) and HTMLElement (http://www.w3.org/TR/REC-DOM-Level-1/level-one-html.html#ID-011100101).
So the API docs should mention (DOM) Element in the context of DOM nodes (DomQuery, XmlReader) and HTMLElement when referencing elements in the HTML document.
Animal
10 Feb 2009, 11:02 AM
I see, thanks for that info. So it's HTMLElement for elements of an HTML DOM, and DOMElement when dealing with XML. I will try to ensure consistency when I edit.
mjlecomte
10 Feb 2009, 7:14 PM
Class Ext.Panel
floating should be indicated as Mixed instead of Boolean. You can also specify an object which will then be used as a config object for Ext.Layer.
floating : Boolean Mixed
True to float the panel (absolute position it with automatic shimming and shadow), false to display it inline where it is rendered (defaults to false). Note that by default, setting floating to true will cause the panel to display at negative offsets so that it is hidden -- because the panel is absolute positioned, the position must be set explicitly after render (e.g., myPanel.setPosition(100,100);). Also, when floating a panel you should always assign a fixed width, otherwise it will be auto width and will expand to fill to the right edge of the viewport.
Perhaps:
floating : Boolean Mixed
True to float the panel (absolute position it with automatic shimming and shadow), false to display it inline where it is rendered (defaults to false). Note that by default, Setting floating to true will create an Ext.Layer for this panel and display the panel at negative offsets so that it is hidden -- because the panel is absolute positioned, the position must be set explicitly after render (e.g., myPanel.setPosition(100,100);). Also, when floating a panel you should always assign a fixed width, otherwise it will be auto width and will expand to fill to the right edge of the viewport. This property may also be configured with an object to be used as the configuration object for the Ext.Layer [I](create link to Ext.Layer) that will be created.
jmcneese
11 Feb 2009, 9:25 PM
[closed]
in reference to http://extjs.com/forum/showthread.php?t=59757:
in Ext.grid.GridPanel, the recent inclusion of the config property 'fieldLabel' states that when the grid is contained by a component using FormLayout, this property will instruct the container to render the grid as a form field, with the fieldLabel appearing to the side as other form fields are rendered.
there should be:
1. something in the text for this config property stating that it also requires the 'isFormField' configure option to be set to true
2. the config property 'isFormField' should be documented, as it is required to allow 'fieldLabel' to be used.
Condor
11 Feb 2009, 10:41 PM
[closed]
in reference to http://extjs.com/forum/showthread.php?t=59757:
in Ext.grid.GridPanel, the recent inclusion of the config property 'fieldLabel' states that when the grid is contained by a component using FormLayout, this property will instruct the container to render the grid as a form field, with the fieldLabel appearing to the side as other form fields are rendered.
there should be:
1. something in the text for this config property stating that it also requires the 'isFormField' configure option to be set to true
2. the config property 'isFormField' should be documented, as it is required to allow 'fieldLabel' to be used.
It's much more complex than simply including isFormField:true! A BasicForm expects all kinds of methods (http://extjs.com/forum/showthread.php?p=234022#post234022) to be present for a Component with isFormField:true.
So simply adding isFormField:true and a fieldLabel to a GridPanel will cause javascript errors in form processing.
ps. In Ext 3.0 simply adding a fieldLabel is enough, no need to set isFormField:true.
jililv
11 Feb 2009, 11:43 PM
Hi All
I am new to ExtJS and I am not sure if the bug has been reported here or not. Below is what I find.
The current annotation for Ext.Container.doLayout( ) in Ext 2.2 Api Documentation is shown below:
doLayout( ) : void
Force this container's layout to be recalculated. A call to this function is required after adding a new component to an already rendered container, or possibly after changing sizing/position properties of child components.
Parameters:
shallow : Boolean
(optional) [B]True to only calc the layout of this component, and let child components auto calc layouts as required (defaults to false, which calls doLayout recursively for each subcontainer)
Returns:
void
I think the annotation of the True & false vaule for the shallow parameter is reversed. It should be changed as follows:
shallow : Boolean
(optional) false to only calc the layout of this component, and let child components auto calc layouts as required (defaults to true, which calls doLayout recursively for each subcontainer)
Here is the source code in the class Ext.Container:
doLayout : function(shallow){
if(this.rendered && this.layout){
this.layout.layout();
}
if(shallow !== false && this.items){
var cs = this.items.items;
for(var i = 0, len = cs.length; i < len; i++) {
var c = cs;
if(c.doLayout){
c.doLayout();
}
}
}
},
You can see only when shallow == true makes the method start the recursion to subcontainers.
And the word "[B][I]shallow" also confuse me a little bit. I think using "deep" may be more appropriate if what I'd written above is correct.
Thanks!
evant
12 Feb 2009, 12:00 AM
I think it's fine, the intent is clear and it's explained well.
mjlecomte
12 Feb 2009, 11:00 AM
Please check if the config options indicated here
http://extjs.com/deploy/dev/docs/?class=Ext.data.HttpProxy
are valid
Additional discussion here:
http://extjs.com/forum/showthread.php?p=287721#post287721
tryanDLS
12 Feb 2009, 11:09 AM
You can see only when shallow == true makes the method start the recursion to subcontainers.
Yes, it's correct as written. You misunderstand the difference betweeen
shallow !== false and
shallow == true
jililv
12 Feb 2009, 5:06 PM
I think it's fine, the intent is clear and it's explained well.
Hi evant
Do you think the API's annotation need to be changed or not? Sorry my English is not very good and I can not tell from your reply if you agree with me or not.
Hi All
Let me explain my opinion in another way.
When I call doLayout(true) or doLayout() on my toplevel container, such as an Ext.Window, I find that it will recursively layout the subcontainers within that Ext.Window object. Contrarily, when I call doLayout(false) on my toplevel container, the subcontainers will not be refreshed. This is what I find through practice.
But when I first use the doLayout method, after reading the current annotation of this method in the Api Documentation makes me think that calling doLayout(false) on the toplevel container will recursively layout the subcontainers which I finally find is not correct through practice.
I am not sure if you guys have the same experience or not?
Thanks!
mjlecomte
12 Feb 2009, 5:33 PM
Annotation of Ext.Container.doLayout()
I think the docs need touch up. I agree that the default does a recursive layout.
If shallow =
true.
(true !== false) => true, therefore does recursive layout
false.
(false !== false) => false, therefore layout only this container, no children
undefined (the default).
(undefined !== false) => true, therefore does recursive layout
Suggested revision:
(optional) Specify false to only calc the layout of this component, and let child components auto calc layouts as required. The default is true, which calls doLayout recursively for each subcontainer item.
Not a doc change, but I'd also agree that "shallow" is contradictory to the behavior.
mjlecomte
13 Feb 2009, 12:37 PM
[implemented]
The argument type is not declared in Ext.Panel for toolTemplate.
This crashes oxymoron's js doc tool, so may well do the same to ExtJS's version.
/**
* @cfg toolTemplate
* @type {Ext.Template/Ext.XTemplate}
Specifying the type fixes it:
/**
* @cfg {Object} toolTemplate
* @type {Ext.Template/Ext.XTemplate}
jay@moduscreate.com
14 Feb 2009, 7:06 PM
Ext.field.msgTarget
Should be:
msgTarget : String
The location where error text should display in a form layout. Should be one of the following values (defaults to 'qtip'):
Or something similar
mjlecomte
15 Feb 2009, 7:11 AM
[implemented]
Ext.grid.ColumnModel
The code samples at the top are excellent. I didn't realize you could do the config like that.
That said, the first method (ColumnModel constructor) seems like it needs to be updated as it only mentions the array option for the config object.
ColumnModel( Object config )
Parameters:
config : Object
An Array of column config objects or specify columns config property along with config properties for the superclass. See this class's config objects for details.
Returns:
As far as I see the only other config options available would be:
listeners
defaultWidth
defaultSortable
So why not just specify those? It's not as obvious for noobs, especially when "listeners" is not listed and the other two are listed as "properties" not "configs".
the comment of config "enableDragDrop" maybe has a mistake.
now it's :
/**
* @cfg {Boolean} <p>enableDragDrop True to enable dragging of the selected rows of the GridPanel.</p>
...
the "<p>" should be after enableDragDrop , I think.
Like this :
/**
* @cfg {Boolean} enableDragDrop <p>True to enable dragging of the selected rows of the GridPanel.</p>
...
Condor
18 Feb 2009, 3:23 AM
[implemented]
TabPanel is missing docs for the itemTpl config option.
ps. The Ext 3.0 getTemplateArgs docs even link to the non-existent itemTpl docs!
jay@moduscreate.com
18 Feb 2009, 7:14 AM
What's up with:
for Class Ext.dd.PanelProxy
// Internal developer documentation -- will not show up in API docs A custom drag proxy implementation specific to Ext.Panels. This class is primarily used internally for the Panel's drag drop implementation, and should never need to be created directly.
watrboy00
19 Feb 2009, 12:10 PM
Class Ext.layout.Accordion, in the example both animate and activeOnTop are true but the docs inform you that you should not do that.
var accordion = new Ext.Panel({
title: 'Accordion Layout',
layout:'accordion',
defaults: {
// applied to each contained panel
bodyStyle: 'padding:15px'
},
layoutConfig: {
// layout-specific configs go here
titleCollapse: false,
animate: true,
activeOnTop: true
},
items: [{
title: 'Panel 1',
html: '<p>Panel content!</p>'
},{
title: 'Panel 2',
html: '<p>Panel content!</p>'
},{
title: 'Panel 3',
html: '<p>Panel content!</p>'
}]
});
activeOnTop : Boolean
True to swap the position of each panel as it is expanded so that it becomes the first item in the container, false to keep the panels in the rendered order. This is NOT compatible with "animate:true" (defaults to false).
animate : Boolean
True to slide the contained panels open and closed during expand/collapse using animation, false to open and close directly with no animation (defaults to false). Note: to defer to the specific config setting of each contained panel for this property, set this to undefined at the layout level.
mikegiddens
19 Feb 2009, 1:21 PM
[implemented]
It seems there is no reference to:
enableKeyEvents
I see in Class Ext.form.TextField a comment in
keydown
keyup
Keypress input field event. This event only fires if enableKeyEvents is set to true.
so this should be noted in the cfg section that this is an option that can be set.
mjlecomte
19 Feb 2009, 2:29 PM
[implemented]
It seems there is no reference to:
enableKeyEvents
I see in Class Ext.form.TextField a comment in
keydown
keyup
Keypress input field event. This event only fires if enableKeyEvents is set to true.
so this should be noted in the cfg section that this is an option that can be set.
Thanks Mike, already mentioned here BTW: http://extjs.com/forum/showthread.php?p=243408#post243408
It's been implemented in svn already.
Animal
20 Feb 2009, 10:40 AM
On a style note, there are a few occurences of "it's" creeping in when the word should be "its".
<span class="english-pedant">"It's" is shorthand for "it is". An apostophe generally indicates letters have been dropped. "Its" is the same kind of word as "His" and "Hers"
So "they're" means "they are". As opposed to "their" or "there".
And "You're" means "you are". As opposed to "your"</span>
jay@moduscreate.com
20 Feb 2009, 10:43 AM
Ah, you English and your correct english!
Just kidding. To be honest, my wife is a huge stickler for these types of errors. Good thing she doesn't proof read for me ;).
flinz
23 Feb 2009, 5:43 AM
Class: Ext.Editor
I think following config options should be listed in the API:
allowBlank: boolean
blankText: StringI saw this being used in the http://extjs.com/deploy/dev/examples/organizer/organizer.html (http://extjs.com/forum/../deploy/dev/examples/organizer/organizer.html) example, and it works fine.
Condor
23 Feb 2009, 5:58 AM
Class: Ext.Editor
I think following config options should be listed in the API:
allowBlank: boolean
blankText: StringI saw this being used in the http://extjs.com/deploy/dev/examples/organizer/organizer.html (http://extjs.com/forum/../deploy/dev/examples/organizer/organizer.html) example, and it works fine.
Ext.Editor doesn't have allowBlank and blankText options. The field of the editor (first argument in the constructor) can have these config options.
ps. The Organizer example uses an Ext.tree.TreeEditor (not an Ext.Editor), of which the second constructor argument is the config option for the TextField. The third constructor argument is the actual Ext.tree.TreeEditor config options object.
flinz
23 Feb 2009, 6:02 AM
The Organizer example uses an Ext.tree.TreeEditor (not an Ext.Editor), of which the second constructor argument is the config option for the TextField.
Ah, indeed. Sorry, my bad!
vmorale4
24 Feb 2009, 3:35 PM
Class: Ext.Ajax
I think it would be a good idea to explicitly state in the documentation that the failure handler of the Ext.Ajax.request method is only executed it there's an HTTP failure.
I found at least five different threads were people were assuming that the failure method would be called by just setting the response to something like {success:false} (like in forms)
mjlecomte
24 Feb 2009, 5:05 PM
Class: Ext.Ajax
I think it would be a good idea to explicitly state in the documentation that the failure handler of the Ext.Ajax.request method is only executed it there's an HTTP failure.
I found at least five different threads were people were assuming that the failure method would be called by just setting the response to something like {success:false} (like in forms)
So what is missing from http://extjs.com/deploy/dev/docs/output/Ext.data.Connection.html#request&member=request ? There's a bullet for "failure".
vmorale4
25 Feb 2009, 12:10 PM
So what is missing from http://extjs.com/deploy/dev/docs/output/Ext.data.Connection.html#request&member=request ? There's a bullet for "failure".
How about this?
Current
failure : Function (Optional)
The function to be called upon failure of the request. The callback is passed the following parameters:
Proposed
failure : Function (Optional)
The function to be called when the server response contains an HTTP error code (http://en.wikipedia.org/wiki/List_of_HTTP_status_codes). The callback is passed the following parameters
IMHO "failure: the function to be called upon failure " is too terse :)
vmorale4
25 Feb 2009, 12:29 PM
Alternatively (or in addition) you could add a small paragraph in the class description indicating this. For example, this is how YUI documents it :
When reconciling a transaction, Connection Manager will evaluate the HTTP code returned by the server to determine if the request was successful and will then call the appropriate callback handler (success or failure).
mjlecomte
25 Feb 2009, 12:37 PM
The connection may time out with no response from server also....which also dumps you into failure block.
vmorale4
25 Feb 2009, 1:00 PM
The connection may time out with no response from server also....which also dumps you into failure block.
Good point, how about something like this
The function to be called when the server response contains an HTTP error code (http://en.wikipedia.org/wiki/List_of_HTTP_status_codes). This function is also invoked when a request exceeds the Ext.Ajax.timeout value. The callback is passed the following parameters
vmorale4
26 Feb 2009, 2:51 PM
Class Ext.XTemplate
I found out that you can use more than one condition in the tpl if attribute. I first trying using 'and' (like in Xpath), but found out that the correct way is to use '&&'
For example:
var tpl = new Ext.XTemplate(
'<p style=\'margin-left:10px\'>This file will be shared with',
'<tpl if="this.isGrp()==false && values.length == 1"> the following person</tpl>',
'<tpl if="this.isGrp()==false && values.length > 1"> {values.length} individuals</tpl>:',
'</p>',
'<div class="user-list" >',
'<tpl for=".">',
'<tpl if="this.isGrp()==false">',
'<div class="user-item">{name}</div>',
'</tpl>',
'<tpl if="this.isGrp()">',
'<div class="group-item">{name}</div>',
'</tpl>',
'</tpl>',
'</div>',
{ isGrp: function() { return store.dyn; } }
);
This how I would document it (my addition in red)
Basic conditional logic
Using the tpl tag and the if operator you can provide conditional checks for deciding whether or not to render specific parts of the template. Note that there is no else operator — if needed, you should use two opposite if statements. Use of multiple conditions is supported via the && and || operators. Properly-encoded attributes are required as seen in the following example:
Condor
26 Feb 2009, 10:41 PM
[B]Basic conditional logic
Using the tpl tag and the if operator you can provide conditional checks for deciding whether or not to render specific parts of the template. Note that there is no else operator — if needed, you should use two opposite if statements. Use of multiple conditions is supported via the && and || operators. Properly-encoded attributes are required as seen in the following example:
It would be more correct to say that the if condition can be any javascript expression (including all operators).
Sidenote: the " character needs to be written as " to avoid conflicts with detecting the end of the expression.
mjlecomte
27 Feb 2009, 4:21 AM
Sidenote: the " character needs to be written as " to avoid conflicts with detecting the end of the expression.
I missed your point here. Can you post sample text for the docs to demonstrate?
Condor
27 Feb 2009, 5:34 AM
The current XTemplate doc already contains an encoded example:
<tpl if="age > 1">', // <-- Note that the > is encoded
But the only character that should actually be encoded is the double quote: " (")
Encoding & (&), < (<) or > (>) is optional.
vmorale4
27 Feb 2009, 6:40 AM
It would be more correct to say that the if condition can be any javascript expression (including all operators).
Sidenote: the " character needs to be written as " to avoid conflicts with detecting the end of the expression.
Got it... By all operators this means we can use arithmetic operators right?.
I like your version (the if condition can be any javascript expression (including all operators))
I would just perhaps change the example to make the above statement a little bit more obvious, i.e. :
'<tpl if="age + 1 > 1 && name='Zachary'">', // <-- Note that the > is encoded
The current XTemplate doc already contains an encoded example:
<tpl if="age > 1">', // <-- Note that the > is encoded
But the only character that should actually be encoded is the double quote: " (")
Encoding & (&), < (<) or > (>) is optional.
AHA! So that's why I didn't have to encode the &&, good to know..
mjlecomte
27 Feb 2009, 6:44 AM
Ok, here's an update, voice any concerns. Note that both ways are shown. Encoding the operator is shown in the example above the conditional section (image 1). Encoding the closing double quote along with && is shown in the example of second image, along with revised text.
mjlecomte
27 Feb 2009, 6:59 AM
I patched up the 2nd image from the last comment.
Condor
27 Feb 2009, 7:12 AM
I think you missed the point on the " encoding.
You need to encode " if it is part of the condition, e.g.
<tpl if="name == "Jack"">Hello</tpl>
mjlecomte
27 Feb 2009, 7:59 AM
The current XTemplate doc already contains an encoded example:
<tpl if="age > 1">', // <-- Note that the > is encoded
But the only character that should actually be encoded is the double quote: " (")
Encoding & (&), < (<) or > (>) is optional.
I think you missed the point on the " encoding.
You need to encode " if it is part of the condition, e.g.
<tpl if="name == "Jack"">Hello</tpl>
Yes, I miss the point still. Your prior post has confused me. I haven't changed the docs.
Would it be appropriate to say the only character that has to be encoded is double quote (or whatever the opening symbol for the "if" string is:
<tpl if="name == ...<encode any double quotes here>... ">Hello</tpl> // must encode any double quotes inside if expression
<tpl if='name == ...<encode any single quotes here>... '>Hello</tpl> // must encode any single quotes inside if expression
Condor
27 Feb 2009, 8:03 AM
OK, the following examples are valid:
<tpl if="age > 1 && age < 10">Child</tpl>
<tpl if="age >= 10 && age < 18">Teenager</tpl>
<tpl if="name == "Jack"">Hello</tpl>
and this one isn't:
<tpl if="name == "Jack"">Hello</tpl>
aurelien
3 Mar 2009, 5:46 AM
in the createDelegate method into the Function class it seems that :
...Example: this.myFunction.createDelegate(this, [arg1, arg2])...
should be replaced by
...Example: this.myFunction.createDelegate(obj, [arg1, arg2])...
jay@moduscreate.com
3 Mar 2009, 5:49 AM
or perhaps scope instead of obj.
aurelien
3 Mar 2009, 5:54 AM
yes, you're right "scope" is more accurate than "obj". The whole documentation for this method has to be impacted (obj is already used)... cheers-
Animal
3 Mar 2009, 6:26 AM
Class: Ext.Ajax
I think it would be a good idea to explicitly state in the documentation that the failure handler of the Ext.Ajax.request method is only executed it there's an HTTP failure.
I found at least five different threads were people were assuming that the failure method would be called by just setting the response to something like {success:false} (like in forms)
Sorry, but people who post things like that just have fundamental misunderstandings. Why should a transport layer class peek inside the data it is transporting and impose some kind of an application protocol on it? The contract of Ext.data.Connection is clearly to just move the data.
vmorale4
3 Mar 2009, 1:08 PM
Sorry, but people who post things like that just have fundamental misunderstandings. Why should a transport layer class peek inside the data it is transporting and impose some kind of an application protocol on it? The contract of Ext.data.Connection is clearly to just move the data.
I agree completely with you, but what I was trying do to is step into a beginner's shoes...
I think the confusion arises from having two different classes (Ext.form.BasicForm and Ext.Ajax) with two similar methods (BasicForm.submit and Ext.Ajax.request) that take very similar parameters (success, failure, method, params, header, etc...).
I don't find it too far-fetched to imagine somebody who is just getting started with Ext and that worked previously with BasicForm to make the wrong assumption that the success and failure methods of Ext.Ajax behave in the same way. Even though it would appear obvious to us, the description of the Ext.Ajax does not explicitly state that this is a transport layer class only.
I don't think it would be an overkill to revamp the Ext.Ajax description to state what you just posted (i.e. that this only a transport layer class)
mystix
4 Mar 2009, 8:46 PM
[IMPLEMENTED]
Class Ext.grid.GridView
undocumented headersDisabled config
mjlecomte
5 Mar 2009, 6:17 AM
[IMPLEMENTED]
Class Ext.grid.GridView
undocumented headersDisabled config
I was working on something for this, which then caused this:
http://extjs.com/forum/showthread.php?p=298486#post298486
Rewrite explanation of selectionchange-event to make it clearer how it works in combination with ranged (de)select.
"Fires when the selection changes, literally. Ranged (de)selects triggers this once per item being (de)selected unless using buffer:1"
[IMPLEMENTED]
Class:
http://www.extjs.com/deploy/dev/docs/?class=Ext.Toolbar
Class description is too small:
* Basic Toolbar class. Toolbar elements can be created explicitly via their constructors, or implicitly via their xtypes. Some items also have shortcut strings for creation.
That's a nice hint but where are these shortcuts descripted? I only know the '-' shortcut for a separator but there will be more of them?! They're nowhere documented AFAIK.
Am I right?
mjlecomte
6 Mar 2009, 5:34 AM
[IMPLEMENTED]
Future docs:
Basic Toolbar class. Toolbar elements can be created explicitly via their constructors, or implicitly via their xtypes. Some items also have shortcut strings for creation (see add (http://www.extjs.com/deploy/dev/docs/?class=Ext.Toolbar&member=add)).
mjlecomte
7 Mar 2009, 7:56 AM
TabPanel config for stack. Should it be documented?
Looks like it has been exposed on purpose, I don't detect the use case to specify the config though.
if(!this.stack){
this.stack = Ext.TabPanel.AccessStack();
}
Condor
7 Mar 2009, 8:08 AM
I also don't see why anyone would want to specify a different access stack in the config.
Documenting it as a read-only property however could be useful, e.g. when you need to select the previous tab when hiding (but not removing) a tab.
[closed]
[IMPLEMENTED]
Future docs:
It would be nice to have a link to the add section. Elsewhere nobody would found it. Anyway I didn't do it :-?
mjlecomte
8 Mar 2009, 5:13 PM
[closed]
It would be nice to have a link to the add section. Elsewhere nobody would found it. Anyway I didn't do it :-?
I'm confused, what is wrong with what I posted? I show what the docs will look like, including the link to add().
mystix
9 Mar 2009, 6:06 PM
Class Ext.EventObject
class description still says "EventObject exposes the Yahoo! UI Event..." -- is this still correct?
nctag
10 Mar 2009, 1:24 AM
[closed]
I'm confused, what is wrong with what I posted? I show what the docs will look like, including the link to add().
I thought you would give me a hint by in the brackets. Because when I open this page: http://www.extjs.com/deploy/dev/docs/?class=Ext.Toolbar I can't see any link to the add method of this class. So take a look at the description.
Am I really wrong? :-?
* Basic Toolbar class. Toolbar elements can be created explicitly via their constructors, or implicitly via their xtypes. Some items also have shortcut strings for creation.
nothing more...
mjlecomte
10 Mar 2009, 7:29 PM
[closed]
I thought you would give me a hint by in the brackets. Because when I open this page: http://www.extjs.com/deploy/dev/docs/?class=Ext.Toolbar I can't see any link to the add method of this class. So take a look at the description.
Am I really wrong? :-?
nothing more...
I'll give this one more shot. Here is a "QUOTE" from the API Docs you will see the next time the docs are distributed to the public:
Basic Toolbar class. Toolbar elements can be created explicitly via their constructors, or implicitly via their xtypes. Some items also have shortcut strings for creation (see add (http://www.extjs.com/deploy/dev/docs/?class=Ext.Toolbar&member=add)).
Do you see the blue text for add? Did you click on it?
photomo
11 Mar 2009, 1:37 AM
[IMPLEMENTED]
The 'timeout' config parameter for Ext.form.Action (and the inherited Submit and Load classes) is described as follows:
timeout : Number The number of milliseconds to wait for a server response before failing with the failureType as CONNECT_FAILURE.
I don't believe it is the number of milliseconds, but seconds instead. Here's the code from Ext.form.Action:
createCallback : function(opts){
var opts = opts || {};
return {
success: this.success,
failure: this.failure,
scope: this,
timeout: (opts.timeout*1000) || (this.form.timeout*1000),
upload: this.form.fileUpload ? this.success : undefined
};
You can see that the timeout value is multiplied by 1000. Therefore, going by the documentation, for a timeout of 5 seconds, you'd set the timeout config parameter to 5000. This is then multiplied by 1000, resulting in an actual timeout of 5,000,000 milliseconds (5000 seconds).
This had me confused for hours!
watrboy00
12 Mar 2009, 8:11 PM
[IMPLEMENTED]
ext-2.2.1\source\dd\DragTracker.js
Its seems that the entire Ext.dd.DragTracker is missing from the API all together.
vincentc
18 Mar 2009, 5:57 AM
wrong example in createNode method. Must be :
new Ext.tree.TreePanel({
...
new Ext.tree.TreeLoader({
url: 'dataUrl',
createNode: function(attr) {
// Allow consolidation consignments to have
// consignments dropped into them.
if (attr.isConsolidation) {
attr.iconCls = 'x-consol',
attr.allowDrop = true;
}
return Ext.tree.TreeLoader.prototype.createNode.call(this, attr);
}
}),
...
});
watrboy00
18 Mar 2009, 10:38 PM
[IMPLEMENTED]
Ext.tree.TreePanel
ddAppendOnly : String
True if the tree should only allow append drops (use for trees which are sorted) Should be...
ddAppendOnly : Boolean
True if the tree should only allow append drops (use for trees which are sorted)
Eric24
19 Mar 2009, 2:57 PM
[IMPLEMENTED]
Config option "closable" is missing from Panel.
jove4015
19 Mar 2009, 2:58 PM
[IMPLEMENTED]
I just wanted to say, I finally stumbled across a hint about a "triggerConfig" option for TriggerField and it's a *wonderful* thing, it should definitely be added to the documentation!!
carol.ext
20 Mar 2009, 6:02 AM
[IMPLEMENTED]
The documentation indicates the default value for the BasicForm.getValues() parameter "asString" is true (returns as string) :
@param {Boolean} asString (optional) false to return the values as an object (defaults to returning as a string)
In the code an object is returned unless asString is passed in === true:
getValues: function(asString) {
var fs = Ext.lib.Ajax.serializeForm(this.el.dom);
if (asString === true) {
return fs;
}
return Ext.urlDecode(fs);
}
code and @param taken from my 2.2.1 download.
Animal
20 Mar 2009, 6:20 AM
[IMPLEMENTED]
The documentation indicates the default value for the BasicForm.getValues() parameter "asString" is true (returns as string) :
@param {Boolean} asString (optional) false to return the values as an object (defaults to returning as a string)
In the code an object is returned unless asString is passed in === true:
getValues: function(asString) {
var fs = Ext.lib.Ajax.serializeForm(this.el.dom);
if (asString === true) {
return fs;
}
return Ext.urlDecode(fs);
}
code and @param taken from my 2.2.1 download.
Ext.lib.Ajax.serializeForm returns a string.
Ext.urlDecode decodes the strig into an object.
Animal
20 Mar 2009, 6:20 AM
[IMPLEMENTED]
I just wanted to say, I finally stumbled across a hint about a "triggerConfig" option for TriggerField and it's a *wonderful* thing, it should definitely be added to the documentation!!
Well spotted. I'll write that one up.
carol.ext
20 Mar 2009, 12:51 PM
[IMPLEMENTED]
Ext.lib.Ajax.serializeForm returns a string.
Ext.urlDecode decodes the strig into an object.
My response is "exactly". I am seriously trying to figure out how I am reading this wrong:
@param {Boolean} asString (optional) false to return the values as an object (defaults to returning as a string)
Using the Checkbox / Radio Group example (http://extjs.com/deploy/dev/examples/form/check-radio.html) I set a breakpoint in the Save button's handler. Then in the console call fp.getForm().getValues(). If I do not pass in a value for asString it returns an object, see attached screen shot from firebug. Is that not what is meant by default?
12598
mjlecomte
20 Mar 2009, 4:56 PM
[IMPLEMENTED]
Config option "closable" is missing from Panel.
I don't see where this config option is honored.
watrboy00
20 Mar 2009, 6:03 PM
[IMPLEMENTED]
I don't see where this config option is honored.
In TabPanel.js...
initTab checks the closable config option which adds 'x-tab-strip-closable' to the tab's dom helper config.
initTab : function(item, index){
var before = this.strip.dom.childNodes[index];
var cls = item.closable ? 'x-tab-strip-closable' : '';
if(item.disabled){
cls += ' x-item-disabled';
}
if(item.iconCls){
cls += ' x-tab-with-icon';
}
if(item.tabCls){
cls += ' ' + item.tabCls;
}
var p = {
id: this.id + this.idDelimiter + item.getItemId(),
text: item.title,
cls: cls,
iconCls: item.iconCls || ''
};
var el = before ?
this.itemTpl.insertBefore(before, p) :
this.itemTpl.append(this.strip, p);
Ext.fly(el).addClassOnOver('x-tab-strip-over');
if(item.tabTip){
Ext.fly(el).child('span.x-tab-strip-text', true).qtip = item.tabTip;
}
item.tabEl = el;
item.on('disable', this.onItemDisabled, this);
item.on('enable', this.onItemEnabled, this);
item.on('titlechange', this.onItemTitleChanged, this);
item.on('iconchange', this.onItemIconChanged, this);
item.on('beforeshow', this.onBeforeShowItem, this);
}
In findTargets it then checks the presence of 'x-tab-strip-close' to determine if the tab is closable.
findTargets : function(e){
var item = null;
var itemEl = e.getTarget('li', this.strip);
if(itemEl){
item = this.getComponent(itemEl.id.split(this.idDelimiter)[1]);
if(item.disabled){
return {
close : null,
item : null,
el : null
};
}
}
return {
close : e.getTarget('.x-tab-strip-close', this.strip),
item : item,
el : itemEl
};
}
IMO that closable should be a config of TabPanel's items but not of the TabPanel itself.
mjlecomte
20 Mar 2009, 7:07 PM
[IMPLEMENTED]
Ok, adding this to Ext.Panel docs:
/**
* @cfg {Boolean} closable
* Panels themselves do not directly support being closed, but some Panel
* subclasses do (like {@link Ext.Window}) or a Panel Class within a Ext.TabPanel.
* Specify <tt>true</tt> to enable closing in such situations. Defaults to <tt>false</tt>
*/
watrboy00
24 Mar 2009, 7:42 AM
[no change made]
http://extjs.com/deploy/dev/docs/?class=Ext.Template
overwrite( Mixed el, Object/Array values, ) : HTMLElement/Ext.Element
Applies the supplied values to the template and overwrites the content of el with the new node(s).
Parameters:
* el : Mixed
The context element
* values : Object/Array
The template values. Can be an array if your params are numeric (i.e. [B]{0}) or an object (i.e. {foo: 'bar'})
* returnElement : Boolean
(optional) true to return a Ext.Element (defaults to undefined)
Returns:
* HTMLElement/Ext.Element
The new node or Element
Shouldn't that be '[0]'?
Condor
24 Mar 2009, 7:46 AM
[no change made]
Shouldn't that be '[0]'?
No, Template only processes parameters with {name} notation. Where 'name' can be a numeric value in case of array elements.
Animal
24 Mar 2009, 7:48 AM
[IMPLEMENTED]
My response is "exactly". I am seriously trying to figure out how I am reading this wrong:
Using the Checkbox / Radio Group example (http://extjs.com/deploy/dev/examples/form/check-radio.html) I set a breakpoint in the Save button's handler. Then in the console call fp.getForm().getValues(). If I do not pass in a value for asString it returns an object, see attached screen shot from firebug. Is that not what is meant by default?
12598
I just fixed this to read
* @param {Boolean} asString (optional) Pass true to return the values as a string. (defaults to false, returning an Object)
mankz
24 Mar 2009, 10:15 AM
[IMPLEMENTED]
Date.add
//Basic usage:
var dt = new Date('10/29/2006').add(Date.DAY, 5);
document.write(dt); //returns 'Fri Oct 06 2006 00:00:00'
Comment should say
//returns 'Fri Nov 03 2006 00:00:00'
mystix
24 Mar 2009, 10:37 AM
[IMPLEMENTED]
well-spotted. i'll update the comments.
Funcracker
25 Mar 2009, 4:03 AM
[addressed]
Hi all,
It could be me, but I'm fairly certain the Form Field's 'anchor' config option is not described in the documentation. Specific form elements do not describe the option, and neither do the BoxComponent and form.Field classes.
Am I overlooking something, or is this indeed an oversight?
Animal
25 Mar 2009, 4:24 AM
[addressed]
The anchor config is not a config of form Fields.
It is a config of any child item of a Container which uses the AnchorLayout (or subclass thereof) as its layout manager.
http://extjs.com/deploy/dev/docs/?class=Ext.layout.AnchorLayout
jay@moduscreate.com
25 Mar 2009, 4:32 AM
[addressed]
I was actually describing this exact same thing in the recording of ScreenCast 009 (BorderLayout). I wonder if it would make sense to overhaul (not now, but eventually) the way layout properties are set on the child items. We already pass layoutConfig to the parents, we could probably do something similar for children.
Thoughts?
Funcracker
25 Mar 2009, 5:32 AM
[addressed]
Thanks Animal! That actually makes sense, but it didn't yet occur to me that I could only use the anchor config by embedding the object in a Container that uses the AnchorLayout..
Kinda obvious I guess.. It would however be nice if someday perhaps there could be some sort of listing of options like that in the individual classes' documentation *shrugs* But perhaps this is clear to everyone else and there is no need for something like this ;)
I think I like where jgarcia is going, as it should make things a little bit clearer as well.
Animal
25 Mar 2009, 5:36 AM
[addressed]
You do see the inheritance diagram at the top of all API pages don't you?
Animal
25 Mar 2009, 5:37 AM
[addressed]
I was actually describing this exact same thing in the recording of ScreenCast 009 (BorderLayout). I wonder if it would make sense to overhaul (not now, but eventually) the way layout properties are set on the child items. We already pass layoutConfig to the parents, we could probably do something similar for children.
Thoughts?
The defaults config of Container does this to a certain extent.
mankz
25 Mar 2009, 5:53 AM
[IMPLEMENTED 3.x]
sum( String property, Number start, Number end ) : Number
Sums the value of property for each record between start and end and returns the result.
Sums the value of property for each record between start and end and returns the result.
Parameters:
* property : String
A field on your records
* start : Number
The record index to start at (defaults to 0)
* end : Number
The last record index to include (defaults to length - 1)
Missing optional info for param 2 & 3, should say:
sum( String property, [Number start], [Number end] ) : Number
Sums the value of property for each record between start and end and returns the result.
Sums the value of property for each record between start and end and returns the result.
Parameters:
* property : String
A field on your records
* start : Number
(optional) The record index to start at (defaults to 0)
* end : Number
(optional) The last record index to include (defaults to length - 1)
Funcracker
25 Mar 2009, 6:12 AM
[addressed]
@Animal: Heh, my proposal wasn't that serious mate ;)
The inheritance diagram is of course not what I meant. If I'm looking at a form.Field, then that has absolutely nothing to do with Containers, except that it can be the child of one, or Layouts. So the Inheritance diagram isn't showing me when I can use the 'anchor' option. That was what I was aiming at.
Perhaps I should illustrate my case: I merely wanted to have an HtmlEditor that resizes with the panel it is in. I noticed the anchor option being used in a form field in one of ExtJS' examples, but was unable to find info on that option in the API. So, hence my initial question.
mankz
26 Mar 2009, 3:57 AM
[IMPLEMENTED 3.x]
scope : Object
The scope of the effect function
Should say
scope : Object
The scope of the callback function
mjlecomte
26 Mar 2009, 7:17 AM
[addressed]
@Animal: Heh, my proposal wasn't that serious mate ;)
The inheritance diagram is of course not what I meant. If I'm looking at a form.Field, then that has absolutely nothing to do with Containers, except that it can be the child of one, or Layouts. So the Inheritance diagram isn't showing me when I can use the 'anchor' option. That was what I was aiming at.
Perhaps I should illustrate my case: I merely wanted to have an HtmlEditor that resizes with the panel it is in. I noticed the anchor option being used in a form field in one of ExtJS' examples, but was unable to find info on that option in the API. So, hence my initial question.
@Funcracker: I've marked posts related to your comment as addressed because I've updated the docs in a manner which hopefully helps. The example in the API Docs under FormLayout shows anchor being used in the example, and has discussion like this added:
Since FormLayout descends from AnchorLayout, child items managed by a FormLayout also accept the following as a config option.
anchor: (String)
See anchor for more details.
The blue underlined portions will link to other places in the API to look for additional information.
anchor : String
This configuation option is to be applied to child items of a container managed by this layout (ie. configured with layout:'anchor').
This value is what tells the layout how an item should be anchored to the container. items added to an AnchorLayout accept an anchoring-specific config property of anchor which is a string containing two values: the horizontal anchor value and the vertical anchor value (for example, '100% 50%'). The following types of anchor values are supported:
Percentage : Any value between 1 and 100, expressed as a percentage.
The first anchor is the percentage width that the item should take up within the container, and the second is the percentage height. For example:
// two values specified
anchor: '100% 50%' // render item complete width of the container and 1/2 its height.
// one value specified
anchor: '100%' // the width value; the height will default to auto
Offsets : Any positive or negative integer value.
This is a raw adjustment where the first anchor is the offset from the right edge of the container, and the second is the offset from the bottom edge. For example:
// two values specified
anchor: '-50 -100' // render item the complete width of the container minus 50 pixels and
// the complete height minus 100 pixels.
// one value specified
anchor: '-50' // anchor value is assumed to be the right offset value
// bottom offset will default to 0
Sides : Valid values are 'right' (or 'r') and 'bottom' (or 'b').
Either the container must have a fixed size or an anchorSize config value defined at render time in order for these to have any effect.
Mixed : Anchor values can also be mixed as needed. For example, to render the width offset from the container right edge by 50 pixels and 75% of the container's height use:
anchor: '-50 75%'
sj137
27 Mar 2009, 2:21 AM
(already) [IMPLEMENTED 3.x]
items config option missing in Ext.Toolbar
cblin
31 Mar 2009, 1:20 AM
CheckboxGroup and RadioGroup declares a 'change' event in the documentation.
One would expects that this event is triggered when one of the checkbox/radiobox inside the group is changed.
After code check, this event is triggerred by setValue which is an empty function in the Checkboxgroup.
So please, if the behavior is not implemented, say it in the doc.
tobiu
31 Mar 2009, 5:03 AM
(already) [IMPLEMENTED 3.x]
hi together,
i would like to see
enableKeyEvents: Boolean
in the api-docs for ComboBox, TextField, TimeField (maybe more Fields? did not test all).
for ComboBox,
hiddenValue: String
should be added as a config-option.
kind regards,
tobiu
dolittle
1 Apr 2009, 3:39 PM
[addressed (3.x)]
It is not clear that if the scope is defined when adding an event listener, the same scope must be used when trying to remove the listener using element.un()
This is the explanation of Ext.Element but there are several places that should be modified:
un( String eventName, Function fn, [Object scope] ) : Ext.Element
Removes an event handler from this element (shorthand for removeListener).
Removes an event handler from this element (shorthand for removeListener).
Parameters:
eventName : String
the type of event to remove
fn : Function
the method the event invokes
scope : Object
(optional) The scope (The this reference) of the handler function. Defaults to this Element.
If a scope was used when assigning the listener it must be used here.
Returns:
Ext.Element
this
mjlecomte
1 Apr 2009, 6:27 PM
[addressed (3.x)]
It is not clear that if the scope is defined when adding an event listener, the same scope must be used when trying to remove the listener using element.un()
This is the explanation of Ext.Element but there are several places that should be modified:
Seems clear to me. I don't understand the confusion. What do you think it should say?
dolittle
1 Apr 2009, 10:50 PM
[addressed (3.x)]
Seems clear to me. I don't understand the confusion. What do you think it should say?
I added in bold what I think it should say.
martinjrb
7 Apr 2009, 4:02 AM
[IMPLEMENTED 3.x]
Ext.grid.ColumnModel is missing the config option 'editable'.
http://extjs.com/deploy/dev/docs/?class=Ext.grid.ColumnModel
The setEditable method is documented but this change would make it clear you can set editable in the intial config
zgrose
10 Apr 2009, 1:56 PM
[addressed (3.x)]
Ext.Component
In the list of all valid xtypes, CheckboxGroup is missing under Form components.
mschwartz
13 Apr 2009, 7:18 AM
[addressed]
[addressed]
The anchor config is not a config of form Fields.
It is a config of any child item of a Container which uses the AnchorLayout (or subclass thereof) as its layout manager.
http://extjs.com/deploy/dev/docs/?class=Ext.layout.AnchorLayout
The documentation is far less useful since anchor is not described in the various field type documentation pages.
I sure use anchor: '100%' (or whatever) in my field configs and it sure works. The docs should, IMO, say "anchor.... blah blah" and note "ignored if field is not in a container that does not use AnchorLayout or subclass it".
mjlecomte
13 Apr 2009, 3:00 PM
[addressed]
The documentation is far less useful since anchor is not described in the various field type documentation pages.
I sure use anchor: '100%' (or whatever) in my field configs and it sure works. The docs should, IMO, say "anchor.... blah blah" and note "ignored if field is not in a container that does not use AnchorLayout or subclass it".
The "addressed" tag means that something like what you said has been implemented.
mystix
15 Apr 2009, 10:13 AM
[Fixed]
just checked the Date docs for the 3.0 rc1 release --
the docs for parseFunctions and formatFunctions are a little screwy.
it seems the doc parser expects the "@" tags to be in a certain order.
mjlecomte
15 Apr 2009, 10:46 AM
just checked the Date docs for the 3.0 rc1 release --
the docs for parseFunctions and formatFunctions are a little screwy.
it seems the doc parser expects the "@" tags to be in a certain order.
[ Fixed ]
mystix
15 Apr 2009, 11:08 AM
[ Fixed ]
woah... you're fast!
Eric24
15 Apr 2009, 1:56 PM
Panel's "floating" config only shows that it can be set to true/false, when it can also take a Layer config object.
mjlecomte
15 Apr 2009, 2:18 PM
Panel's "floating" config only shows that it can be set to true/false, when it can also take a Layer config object.
this is in the 3.x docs already. I'm going to open a 3.x Doc bugs thread to separate issues.
3.x docs have several updates the 2.x docs do not, even if the docs are applicable to 2.x also.
dlgoodchild
17 Apr 2009, 6:39 AM
http://www.extjs.com/deploy/dev/docs/output/Ext.Toolbar.html
There is no buttons or items config object properties, yet they both work. Well actually I know for sure 'items' is working, and I've just been told this is because 'buttons' populates 'items'.
dolittle
18 Apr 2009, 3:04 PM
Docs mention minWidth config option for Ext.menu.Menu but I didn't see any effect when using it. width config option works. I think that either the docs or the code should be fixed.
russn
27 Apr 2009, 8:04 PM
Ext.applyIf does not list the 3rd parameter "Object defaults". Should be the same as Ext.apply.
Ext.applyIf( Object obj, Object config, Object defaults ) : Object
Copies all the properties of config to obj if they don't already exist.
Parameters:
obj : Object The receiver of the properties
config : Object The source of the properties
defaults: Object A different object that will also be applied for default values
Condor
28 Apr 2009, 11:59 PM
Ext.applyIf does not list the 3rd parameter "Object defaults". Should be the same as Ext.apply.
Not true! applyIf doesn't have a 3rd parameter!
NOSLOW
5 Jun 2009, 4:08 AM
should yield http://www.extjs.com/deploy/dev/docs/output/Ext.Toolbar.Button.html
mjlecomte
5 Jun 2009, 4:45 AM
should yield http://www.extjs.com/deploy/dev/docs/output/Ext.Toolbar.Button.html
The search utility hasn't been updated in some time.
NOSLOW
5 Jun 2009, 4:55 AM
Ahhh. Now's your chance to improve QA by updating it! ;)
mjlecomte
5 Jun 2009, 5:00 AM
I'm fearful what impressions that title may convey. :s
Technically QA just means I assure it, not implement. >:)
Thanks for you post, it's a known issue.
NOSLOW
5 Jun 2009, 6:48 AM
Ha! Maybe we can change the title to "Quality Awareness Team" :)
P.S. Please forward this on to the Quality Action Team :P
nicktak
11 Jun 2009, 5:45 PM
scrollOffset can be specified in the config for GridView, but is missing from the documentation (it is listed as a public property only).
PierceSD
7 Jul 2009, 9:23 AM
Class: Ext.Action
Lists isDisabled as a property, when it's actually a function. You can guess what happens when you try to treat it as a property. ;)
Condor
19 Oct 2009, 1:16 AM
In Ext 2.x Ext.Button descends from Ext.Component and not from Ext.BoxComponent.
Animal
19 Oct 2009, 4:18 AM
That's what the API docs say
Condor
19 Oct 2009, 4:27 AM
That's what the API docs say
I just checked the Ext 2.x branch (http://code.extjs.com/svn/ext/branches/ext2.0/src/widgets/Button.js) and it clearly reads:
/**
* @class Ext.Button
* @extends Ext.BoxComponent
...
*/
Ext.Button = Ext.extend(Ext.Component, {
...
jay@moduscreate.com
19 Oct 2009, 4:32 AM
Button extending BoxComponent is a 3.0 change. This should doc error be fixed.
Animal
19 Oct 2009, 5:52 AM
This doesn't show that: http://www.extjs.com/deploy/ext-2.0/docs/?class=Ext.Button
But yes, that comment is wrong.
jay@moduscreate.com
19 Oct 2009, 5:56 AM
is the 2.0 branch the latest code?
I looked through the 2.0 -> 2.2.1 and it reflects the link above.
There are no docs online for 2.3 though
Condor
19 Oct 2009, 6:15 AM
The docs for all public Ext versions are online.
Here is the Ext 2.3.0 link (http://www.extjs.com/deploy/ext-2.3.0/docs/?class=Ext.Button) (this is only wrong in 2.3.0+).
jay@moduscreate.com
19 Oct 2009, 6:20 AM
No wonder i could not find it!
2.2 has "2.2" in the link, not "2.2.0", where 2.3 has "2.3.0"
ugh!
Powered by vBulletin® Version 4.1.5 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.