PDA

View Full Version : Documentation Bugs - Ext 3.x



Pages : [1] 2

mjlecomte
15 Apr 2009, 2:26 PM
This thread is solely for reporting bugs in the Ext 3.x documentation. (currently available here (http://extjs.com/deploy/ext-3.0-rc2/docs/))

Some things to note:

Post only documentation bugs

stever
15 Apr 2009, 4:30 PM
[IMPLEMENTED]

Component's property "ref" is not documented.

stever
15 Apr 2009, 8:31 PM
[ IMPLEMENTED ]

ptype and Ext.preg/Ext.registerPlugin

peacock
16 Apr 2009, 8:27 AM
[ IMPLEMENTED ]

Ext 3.0 API have two enableColumnMove in GridPanel


enableColumnMove : Boolean
False to turn off column reordering via drag drop (defaults to true).



enableColumnMove : Boolean
Defaults to true to enable drag and drop reorder of columns.

juanramoney
16 Apr 2009, 8:33 AM
[NO ACTION TAKEN]

I think Ext.data.SimpleStore is missing.

Condor
16 Apr 2009, 8:41 AM
[NO ACTION TAKEN]


I think Ext.data.SimpleStore is missing.

Ext.data.SimpleStore has been renamed to Ext.data.ArrayStore (and Ext.data.SimpleStore is added as a legacy alias).
The API docs should probably mention that Ext.data.SimpleStore is deprecated and link to Ext.data.ArrayStore.

mjlecomte
16 Apr 2009, 8:49 AM
[NO ACTION TAKEN]

SimpleStore doesn't show up AFAIK. Please let me know if it does.

Other than that, it shows up in the store xtype here: http://extjs.com/deploy/ext-3.0-rc1/docs/?class=Ext.Component - but it's already marked deprecated.

VinylFox
18 Apr 2009, 4:29 PM
AIR docs missing - http://extjs.com/forum/showthread.php?t=65882

(posted this to help you keep track)

overkrik
19 Apr 2009, 10:59 AM
[ IMPLEMENTED ]

examples/layout-browser/layout-browser.html in Ext.layout.Accordion

title: 'Panel 2,

should be

title: 'Panel 2',

missing "'"

same in 2.x docs

dancablam
23 Apr 2009, 1:52 PM
[ IMPLEMENTED ]

Under Ext.Direct > Public Properties and Exceptions: The HTML in those fields is escaped:


eventTypes : Object Each event type implements a getData() method. The default event types are: <div class="mdetail-params"><ul> <li><b><tt>event</tt></b> : Ext.Direct.Event</li> <li><b><tt>exception</tt></b> : Ext.Direct.ExceptionEvent</li> <li><b><tt>rpc</tt></b> : Ext.Direct.RemotingEvent</li> </ul></div>

Alberto Wagner
24 Apr 2009, 7:11 AM
[ NO ACTION TAKEN ]

I went through every class checking for escaped html just like dancablam said.
Here is the list I found:




Ext > copyTo

Date > formatFunctions
Date > parseFunctions

Ext.DataView > collectData

Ext.Direct > eventTypes
Ext.Direct > exceptions

Ext.layout.BorderLayout.Region > getMargins
Ext.layout.BorderLayout.Region > getSize

Ext.layout.BorderLayout.SplitRegion > getMargins
Ext.layout.BorderLayout.SplitRegion > getSize

Ext.grid.Column > renderer
Ext.grid.BooleanColumn > renderer
Ext.grid.DateColumn > renderer
Ext.grid.NumberColumn > renderer
Ext.grid.TemplateColumn > renderer

Ext.grid.GroupingView > findRowIndex

Animal
24 Apr 2009, 8:43 AM
[ NO ACTION TAKEN ]


A bit of a waste of time. It's not a documenter's error, it's a bug in the parser.

fancing
27 Apr 2009, 8:29 PM
[IMPLEMENTED]


in the welcome page, the "Additional Resources" may need to be updated.

Ant1105
30 Apr 2009, 4:23 PM
[RESOLVED]

Small typo in the Ext.invoke method docs (Ext-more.js, Line 416)

@param {String} The method name to invode <-- Should be invoke

Condor
1 May 2009, 11:16 PM
[IMPLEMENTED]


The HBoxLayout and VBoxLayout align property is missing info on the stretchmax value.

stretchmax (with two t's!):
child items are stretched horizontally/vertically to the size of the largest item.

mystix
4 May 2009, 4:01 AM
[RESOLVED]


i think someone forgot to regenerate the docs 'cos most of the pre-May doc fixes are not in the official 3.0rc1.1 release.

could we have an updated copy please?

MD
5 May 2009, 2:14 PM
[RESOLVED]

API Docs for GridPanel > enableDragDrop denote this config option as being true by default, when in fact it's false by default.

MD

griffiti93
5 May 2009, 10:12 PM
[RESOLVED] (3.x)

Recently I was using Ext for an AJAX request that was taking 40 seconds (on avg) to complete. I was querying an external resource with unknown latency. I wanted to increase the timeout of the AJAX request. I tried to set the Ext.Ajax.timeout property. It seemed to work the first time only. Unfortunately, I was having to reset it after the call. I didn't want all my AJAX requests honoring the extending timeout.

So I jumped into the Ext source code to see what I could learn. In Ext.data.Connection the request() method looks for a timeout in the options object parameter. This timeout value is passed to a callback literal which ultimately gets handed off to the Ext.lib.Ajax request() method. However, I cannot find this property mentioned in the 2.2.1 or 3.1 RC 1.1 documentation.



var cb = {
success: this.handleResponse,
failure: this.handleFailure,
scope: this,
argument: {options: o},
timeout : o.timeout || this.timeout
};


Needless to say, I passed it in and boom! it worked. My request is to add this to the documentation so others can save time. If by some event I have overlooked this, please excuse my oversight.

Here's an example of code I ended up using with success.


Ext.Ajax.request({
url: seedUrl,
timeout: (1 * 60 * 1000), // Give the seed request a minute.
success: requestSeedCallback,
failure: asyncFailure
});

anubis4u
6 May 2009, 4:14 AM
[RESOLVED]


Under Ext.Direct > Public Properties and Exceptions: The HTML in those fields is escaped:

this bug also occures in all grid.column files, aswell as the documentation of Date.

Also there is some inconsistency in documenting datatypes. Most of the time the method inputs are documented like this:

Datatype param, Datatype param2

in some files (e.g. Observable-suspendEvents) it´s documented like this:

param {Datatype}, param2 {Datatype}.

Sometimes optional arguments are documented like this (E.g. Ext.tree.TreeNodeUI):
Datatype (optional) instead of [Datatype param].

Ext.clean, Ext.min and Ext.max have no parameter name at all, only the datatype.

I found all this problems also in the newest documentation of RC 1.1

DigitalSkyline
11 May 2009, 9:22 AM
Hey guys...
In the Ext Core API documentation for Ext.Template : http://extjs.com/products/extcore/docs/?class=Ext.Template

The link here is broken, as Ext.util.Fomat doesn't seem to exist in Core.

For a list of available format functions, see Ext.util.Format (http://extjs.com/forum/../products/extcore/docs/output/Ext.util.Format.html). < broken

Cheers! ~o)

Animal
12 May 2009, 4:42 AM
[RESOLVED]


this bug also occures in all grid.column files, aswell as the documentation of Date.

Also there is some inconsistency in documenting datatypes. Most of the time the method inputs are documented like this:

Datatype param, Datatype param2

in some files (e.g. Observable-suspendEvents) it´s documented like this:

param {Datatype}, param2 {Datatype}.

Sometimes optional arguments are documented like this (E.g. Ext.tree.TreeNodeUI):
Datatype (optional) instead of [Datatype param].

Ext.clean, Ext.min and Ext.max have no parameter name at all, only the datatype.

I found all this problems also in the newest documentation of RC 1.1

Fixed in SVN.

Animal
12 May 2009, 4:42 AM
[RESOLVED]


API Docs for GridPanel > enableDragDrop denote this config option as being true by default, when in fact it's false by default.

MD

Fixed in SVN.

Animal
12 May 2009, 4:43 AM
[RESOLVED]


Recently I was using Ext for an AJAX request that was taking 40 seconds (on avg) to complete. I was querying an external resource with unknown latency. I wanted to increase the timeout of the AJAX request. I tried to set the Ext.Ajax.timeout property. It seemed to work the first time only. Unfortunately, I was having to reset it after the call. I didn't want all my AJAX requests honoring the extending timeout.

So I jumped into the Ext source code to see what I could learn. In Ext.data.Connection the request() method looks for a timeout in the options object parameter. This timeout value is passed to a callback literal which ultimately gets handed off to the Ext.lib.Ajax request() method. However, I cannot find this property mentioned in the 2.2.1 or 3.1 RC 1.1 documentation.



var cb = {
success: this.handleResponse,
failure: this.handleFailure,
scope: this,
argument: {options: o},
timeout : o.timeout || this.timeout
};


Needless to say, I passed it in and boom! it worked. My request is to add this to the documentation so others can save time. If by some event I have overlooked this, please excuse my oversight.

Here's an example of code I ended up using with success.


Ext.Ajax.request({
url: seedUrl,
timeout: (1 * 60 * 1000), // Give the seed request a minute.
success: requestSeedCallback,
failure: asyncFailure
});


Fixed in SVN.

aconran
13 May 2009, 9:49 AM
[RESOLVED]

url configuration of any Ext.data.Connection/Ext.Ajax can be a function which returns a url similar to how params works.

mystix
13 May 2009, 5:54 PM
[RESOLVED]

Ext.util.Format

undocumented math() method

Animal
14 May 2009, 1:55 AM
[RESOLVED]


Ext.util.Format

undocumented math() method



Because nobody knows what it does!:))

mystix
14 May 2009, 1:56 AM
[RESOLVED]


Because nobody knows what it does!:))

i knew there was something fishy going on \:D/

Animal
14 May 2009, 1:58 AM
[RESOLVED]


url configuration of any Ext.data.Connection/Ext.Ajax can be a function which returns a url similar to how params works.

Fixed in SVN.

Condor
14 May 2009, 12:06 PM
[IMPLEMENTED]


Because nobody knows what it does!:))

It does simple math for use in a templates, e.g.


var tpl = new Ext.Template('{value} * 10 = {value:math("* 10")}');

mystix
14 May 2009, 12:10 PM
[IMPLEMENTED]


It does simple math for use in a templates, e.g.


var tpl = new Ext.Template('{value} * 10 = {value:math("* 10")}');

you da man! =P~

zombeerose
19 May 2009, 7:08 AM
[IMPLEMENTED]

The class Ext.Toolbar.TextItem is missing docs for the setText function.

Animal
19 May 2009, 10:08 AM
[IMPLEMENTED]



The class Ext.Toolbar.TextItem is missing docs for the setText function.

Added in SVN

zombeerose
20 May 2009, 3:02 PM
[IMPLEMENTED]

The notes under the add and addButton methods for a Toolbar still reference the class Ext.Toolbar.Button.

watrboy00
21 May 2009, 1:48 PM
[RESOLVED WITHOUT ACTION]


Ext.menu.CheckItem is missing checkHandler.

Never mind...in SVN just not in the generated docs.

Animal
21 May 2009, 11:23 PM
[IMPLEMENTED]


The notes under the add and addButton methods for a Toolbar still reference the class Ext.Toolbar.Button.

Can someone else fix this?

I run with a modified ToolBar.js file here at work which adds the align: 'right' or align: 'left' configs to Toolbar items, so I cannot commit my file.

mystix
21 May 2009, 11:48 PM
[IMPLEMENTED]



Can someone else fix this?

I run with a modified ToolBar.js file here at work which adds the align: 'right' or align: 'left' configs to Toolbar items, so I cannot commit my file.

done.

the docs are technically correct though --
in 3.0, Ext.Toolbar.Button extends Ext.Button for backwards compatibility. ;)

alexandr_ch
22 May 2009, 2:26 PM
[IMPLEMENTED]


The documentation seems wrong:

Attribute Selectors:
--------------------------------
The use of



in spite of the fact that in source code all is correct:


<h4>Attribute Selectors:</h4>
<p>The use of @ and quotes are optional. For example, div[@foo='bar'] is also a valid attribute selector.</p>

At the same time in Ext JS 2.2 API Documentation the description of selectors is displayed truly.

Animal
22 May 2009, 11:30 PM
[IMPLEMENTED]

The new doc parser is still flaky. There are a few cases where the HTML in the final documents is not correct.

RamsesAkaPus
29 May 2009, 2:51 AM
Hi all; I couldn't find this properties under Ext.chart.PieChart

categoryField:
dataField:

also some of value properties miising in other charts or am I making a mistake?

dolittle
3 Jun 2009, 9:54 AM
[IMPLEMENTED]

In DataProxy buildUrl method one of the actions is load. I think it should be read.

* @param {String} action The api action being executed [load|create|update|destroy]

In ScriptTagProxy doRequest method:

* @param {Ext.data.Record/Ext.data.Record[]} rs If action is load, rs will be null

If load is one of the actions it should be updated in Ext.data.Api:

actions : Object
Defined actions corresponding to remote actions: actions: { create : 'create', // Text representing the remote-...
Defined actions corresponding to remote actions:

actions: {
create : 'create', // Text representing the remote-action to create records on server.
read : 'read', // Text representing the remote-action to read/load data from server.
update : 'update', // Text representing the remote-action to update records on server.
destroy : 'destroy' // Text representing the remote-action to destroy records on server.
}

christocracy
3 Jun 2009, 10:30 AM
[IMPLEMENTED]


In DataProxy buildUrl method one of the actions is load. I think it should be read.

* @param {String} action The api action being executed [load|create|update|destroy]


changed docs to "read"



In ScriptTagProxy doRequest method:

* @param {Ext.data.Record/Ext.data.Record[]} rs If action is load, rs will be null


Changed docs to "read"

Thanks.

mystix
4 Jun 2009, 12:02 AM
[IMPLEMENTED]

Class Ext.Editor

missing config allowBlur

MD
4 Jun 2009, 9:35 AM
[RESOLVED]

3.0 RC2:


listeners: {
{@link #hiddenchange}: function(cm, colIndex, hidden) {
saveConfig(colIndex, hidden);
}
}

3.0 RC1.1:


listeners: {
widthchange: function(cm, colIndex, width) {
saveConfig(colIndex, width);
}
}

mjlecomte
4 Jun 2009, 12:08 PM
[RESOLVED]


3.0 RC2:


listeners: {
{@link #hiddenchange}: function(cm, colIndex, hidden) {
saveConfig(colIndex, hidden);
}
}

3.0 RC1.1:


listeners: {
widthchange: function(cm, colIndex, width) {
saveConfig(colIndex, width);
}
}

Sorry, what is your point here?

MD
4 Jun 2009, 12:42 PM
[RESOLVED]

My apologies, please disregard my report.

I was doing a diff between RC1.1 and RC2 and thought that bit appeared in an actual code section, rather than in a comments block. Upon closer inspection after loading it into Apatana, I see that it is in fact in a comments block, so there is no error/problem.

Sorry for the confusion,

MD


Sorry, what is your point here?

zombeerose
4 Jun 2009, 2:29 PM
[IMPLEMENTED]

Where are the docs for stateEvents of a component?

robertoroberto
6 Jun 2009, 11:16 PM
[NO ACTION TAKEN]

Ext.form.FileUploadField is missing in the doc

Animal
6 Jun 2009, 11:50 PM
[IMPLEMENTED]


Where are the docs for stateEvents of a component?

Documented in SVN

Animal
6 Jun 2009, 11:50 PM
[NO ACTION TAKEN]


Ext.form.FileUploadField is missing in the doc

That's a UX.

robertoroberto
7 Jun 2009, 12:14 AM
[NO ACTION TAKEN]


That's a UX.

I'm sorry for the error, but getting a look to example from http://extjs.com/deploy/ext-3.0-rc2/examples/form/file-upload.html and related file-upload.js,

you can see "Ext.form.FileUploadField" not " Ext.ux.FileUploadField"


var fibasic = new Ext.form.FileUploadField({
renderTo: 'fi-basic',
width: 400
});



For this inconsistence I make this mistake...

mjlecomte
7 Jun 2009, 6:23 AM
[NO ACTION TAKEN]


I'm sorry for the error, but getting a look to example from http://extjs.com/deploy/ext-3.0-rc2/examples/form/file-upload.html and related file-upload.js,

you can see "Ext.form.FileUploadField" not " Ext.ux.FileUploadField"


var fibasic = new Ext.form.FileUploadField({
renderTo: 'fi-basic',
width: 400
});



For this inconsistence I make this mistake...

Yes, there is some inconsistency at present. Anything in the "examples" is either an example or ux/extension, and is currently intentionally not included within the API docs.

mjlecomte
7 Jun 2009, 6:42 AM
[ VERIFIED ]

Thanks for these reports. I went through again to double check. There was a problem in the formatting for the properties mentioned.

There is a known bug in the doc utility that doesn't format html in the Returns section.


[ IMPLEMENTED ]

Under Ext.Direct > Public Properties and Exceptions: The HTML in those fields is escaped:


[ NO ACTION TAKEN ]

I went through every class checking for escaped html just like dancablam said.
Here is the list I found:




Ext > copyTo

Date > formatFunctions
Date > parseFunctions

Ext.DataView > collectData

Ext.Direct > eventTypes
Ext.Direct > exceptions

Ext.layout.BorderLayout.Region > getMargins
Ext.layout.BorderLayout.Region > getSize

Ext.layout.BorderLayout.SplitRegion > getMargins
Ext.layout.BorderLayout.SplitRegion > getSize

Ext.grid.Column > renderer
Ext.grid.BooleanColumn > renderer
Ext.grid.DateColumn > renderer
Ext.grid.NumberColumn > renderer
Ext.grid.TemplateColumn > renderer

Ext.grid.GroupingView > findRowIndex


[ NO ACTION TAKEN ]


A bit of a waste of time. It's not a documenter's error, it's a bug in the parser.

dolittle
8 Jun 2009, 5:19 PM
[RESOLVED]



On the PagingToolbar docs it says:

Paging with Local Data

Paging can also be accomplished with local data using extensions:

Ext.ux.data.PagingStore
Paging Memory Proxy (examples/locale/PagingMemoryProxy.js)

but there is no PagingMemoryProxy.js in the examples/locale folder in Ext3RC2
There is an example in Ext2

I copied the Ext2 version to Ext3 folder and the multi-lang.html works

mjlecomte
8 Jun 2009, 8:36 PM
[FIXED]


On the PagingToolbar docs it says:


but there is no PagingMemoryProxy.js in the examples/locale folder in Ext3RC2
There is an example in Ext2

I copied the Ext2 version to Ext3 folder and the multi-lang.html works

That was already fixed in the docs in svn. That file is now located in examples/ux.

jay@moduscreate.com
9 Jun 2009, 8:18 AM
[FIXED] (3.x only)

grid.GridView.getRow is documented as:

Return the <TR> HtmlElement which represents a Grid row for the specified index.


Should it be <DIV> since it actually returns a div ?

Affects Ext 2.x and 3.x

crysfel
9 Jun 2009, 9:51 AM
[RESOLVED]


The Ext.TabPanel example is wrong:



Ext.Ajax.request({
url: 'gen-invoice-grid.php',
params: {
startDate = Ext.getCmp('start-date').getValue(), // <--- the "=" should be ":"
endDate = Ext.getCmp('end-date').getValue() // <--- the "=" should be ":"
},
success: function(xhr) {
var newComponent = eval(xhr.responseText);
myTabPanel.add(newComponent);
myTabPanel.setActiveTab(newComponent);
},
failure: function() {
Ext.Msg.alert("Grid create failed", "Server communication failure");
}
});


http://extjs.com/deploy/dev/docs/?class=Ext.TabPanel

jay@moduscreate.com
9 Jun 2009, 9:54 AM
[RESOLVED]


Ah- in the docs

Animal
9 Jun 2009, 9:55 AM
[RESOLVED]




The Ext.TabPanel example is wrong:



Ext.Ajax.request({
url: 'gen-invoice-grid.php',
params: {
startDate = Ext.getCmp('start-date').getValue(), // <--- the "=" should be ":"
endDate = Ext.getCmp('end-date').getValue() // <--- the "=" should be ":"
},
success: function(xhr) {
var newComponent = eval(xhr.responseText);
myTabPanel.add(newComponent);
myTabPanel.setActiveTab(newComponent);
},
failure: function() {
Ext.Msg.alert("Grid create failed", "Server communication failure");
}
});


http://extjs.com/deploy/dev/docs/?class=Ext.TabPanel

Already noted and fixed: http://extjs.com/deploy/ext-3.0-rc2/docs/?class=Ext.Container

(This is the 3.0 forum.... but it's also fixed in the SVN code for 2.0)

jay@moduscreate.com
9 Jun 2009, 9:57 AM
[RESOLVED]



you posted a 2.x doc bug in the 3.x forum ;)


I fixed the issue for 2.x though :) - the next release will reflect the change.

watrboy00
9 Jun 2009, 9:45 PM
[RESOLVED]


/**
* @cfg {String} lastText
* The quicktip text displayed for the Refresh button (defaults to "Refresh").
* Note: quick tips must be initialized for the quicktip to show.
*/
refreshText : "Refresh",Should be...


/**
* @cfg {String} refreshText
* The quicktip text displayed for the Refresh button (defaults to "Refresh").
* Note: quick tips must be initialized for the quicktip to show.
*/
refreshText : "Refresh",

Vlatombe
11 Jun 2009, 10:51 PM
[FIXED]

- In Ext.grid.DateColumn, on the format config property, the link to Date.format is incorrect
- Also, in DatePicker, on the format config property, the date format should be wrapped inside <tt></tt>

mystix
12 Jun 2009, 10:09 AM
[IMPLEMENTED]

Class Ext.Layer

missing config useDisplay

loeppky
14 Jun 2009, 8:30 PM
[IMPLEMENTED]

Ext.data.DataProxy has various ambiguities in the documentation, particularly around event parameters.

exception: options
Current: The loading options that were specified (see load for details)
Should be: The loading options that were specified (see request for details)

load: o
Current: The data object
Should be: I am not sure. "The data object" is very ambiguous. Should it be the records that were loaded?

load: arg
Current: The callback's arg object passed to the request function
Should be: The callback's options object passed to the request function. (The request method doesn't have an arg parameter).

loadexception: options
Current: The loading options that were specified (see load for details)
Should be: The loading options that were specified (see request for details). Also, it should be noted that this event is deprecated.

write: action
Current: [Ext.data.Api.actions.create|read|upate|destroy]
Should be: [Ext.data.Api.actions.create|upate|destroy] (read should be excluded right?)

write: data and response
It's not clear what's different between these two.

write: arg
Current: The callback's arg object passed to the request function
Should be: The callback's options object passed to the request function

mcouillard
16 Jun 2009, 10:10 AM
Search for "loadscripts". Results in 2 hits but neither page loads.

Plus, it seems the Ajax in Core 3.0 doesn't include the ability to set loadScripts(true)? Ext.Updater doesn't exist.

sol
16 Jun 2009, 10:36 PM
[FIXED]

Ext.preg not generated
ComponentMgr.js - "@method reg" appears both before Ext.reg & Ext.preg.
This also causes Ext.reg entry decribed as Ext.preg.
ctrl-c-v evil? :)

affected version: 3.0-rc-1.1, 3.0-rc-2
didnt check 2.x docs.

valcamo
17 Jun 2009, 2:24 AM
As suggested by mjlecomte here (http://www.extjs.com/forum/showthread.php?t=71488), I took a look at each config options for the DateField component to determine which option can be used *after* the component has been created.

Here are my initial findings.
If this documentation is useful, I will complete all the remaining options for DateField.
Please note that using config properties in this way is not supported by the Ext Support Team, so don't ask them for problems using this technique.

I used this code to test the options:


var df;
Ext.onReady(function() {
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
new Ext.FormPanel({
renderTo: 'testdiv',
items: [{
id: 'df',
fieldLabel: 'A value',
xtype: 'datefield'
}],
});
df = Ext.getCmp('df');
});


After each config options there is a code between brackets with the following meaning:

W
property is writable; the new value is applied at a later time (usually when a UI event occurs or a method is called)
+V
to apply the property to the current value, call the validate() method; example:


df.allowBlank = false;
df.validate();

*
option has some specific behavior; a note follows
S
a setter method exists


Finally, the list:

allowBlank (W+V)
altFormats (W*)
Delete the altFormatsArray to use the new value:


df.altFormats = 'Ymd';
delete df.altFormatsArray;

blankText (W+V)
disabled (S)
Use the setDisabled() method, or the enable() / disable() method
disabledClass (W*)
More research required: buggy behavior
disabledDates (S)
Use the setDisabledDates() method
disabledDatesText (W+V)
disabledDays (S)
Use the setDisabledDays() method
disabledDaysText (W+V)
editable (S)
Use the setEditable() method
emptyClass (W*)
More research required: buggy behavior
emptyText (W*)
Set the value to null to apply the changes:


df.emptyText = 'NO DATE';
df.setValue(null);

format (W*)
To apply the format to the current value, you have to set the value again:


var value = df.getValue();
df.format = 'Y-m d';
df.setValue(value);

hideTrigger (*)
Use the undocumented trigger property to hide/show the trigger button:


hideTrigger ? df.trigger.hide() : df.trigger.show();

maxLength (W+V)
maxLengthText (W+V)
maxText (W+V)
maxValue (S)
Use the setMaxValue() method
minLength (W+V)
minLengthText (W+V)
minText (W+V)
minValue (S)
Use the setMinValue() method
msgTarget (W*)
To safely modify this property, you have to call clearInvalid() before, then validate() after:


df.clearInvalid();
df.msgTarget = df.msgTarget == 'side' ? 'under' : 'side';
df.validate();

readOnly (*)
This will affect only the input, not the calendar button.
You have to modify the DOM directly:


df.el.dom.readOnly = true;

regex (W+V)
regexText(W+V)
selectOnFocus (*)
Buggy? DateField has always selectOnFocus = true
showToday (W*)
Destroy and delete the undocumented menu property to recreate the DatePicker


df.showToday = !df.showToday;
df.menu && df.menu.destroy();
delete df.menu;

validateOnBlur (W)
validationDelay (W)
vtype (W+V*)
Please note that keys are always filtered using the vtype specified at config time.
It is not safe to change vtype if the component was started with a specified vtype.
vtypeText(W+V)

HerrB
17 Jun 2009, 2:11 PM
[FIXED]

The public methods of Ext.form.VTypes return Boolean (documentation says: void).

Regards,

HerrB

mjlecomte
19 Jun 2009, 6:35 AM
As suggested by mjlecomte here (http://www.extjs.com/forum/showthread.php?t=71488), I took a look at each config options for the DateField component to determine which option can be used *after* the component has been created.

Here are my initial findings.
If this documentation is useful, I will complete all the remaining options for DateField.


Thanks for the post. At the moment I'm not sure how to effectively implement this. You might consider bumping this a few weeks after 3.0 goes out the door.

Gonfi
22 Jun 2009, 4:15 AM
The apidoc does not mention the hack as MemoryProxy uses it:

// Must define a dummy api with "read" action to satisfy DataProxy#doRequest and Ext.data.Api#prepare *before* calling super
var api = {};
api[Ext.data.Api.actions.read] = true;
MyDataProxy.superclass.constructor.call(this, {
api: api
});

otherwise one gets:

DataProxy attempted to execute an API-action but found an undefined url / function. Please review your Proxy url/api-configuration.' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001c (NS_ERROR_XPC_JS_THREW_JS_OBJECT)" location: "<unknown>" data: no]

mjlecomte
22 Jun 2009, 4:56 AM
The apidoc does not mention the hack as MemoryProxy uses it:

// Must define a dummy api with "read" action to satisfy DataProxy#doRequest and Ext.data.Api#prepare *before* calling super
var api = {};
api[Ext.data.Api.actions.read] = true;
MyDataProxy.superclass.constructor.call(this, {
api: api
});

otherwise one gets:

DataProxy attempted to execute an API-action but found an undefined url / function. Please review your Proxy url/api-configuration.' when calling method: [nsIDOMEventListener::handleEvent]" nsresult: "0x8057001c (NS_ERROR_XPC_JS_THREW_JS_OBJECT)" location: "<unknown>" data: no]

@gonfi, would you clarify your post please? I've seen this error before, but I'm not sure what your point is. I do not see that 'hack' in the SDK.

dancablam
24 Jun 2009, 9:26 AM
[FIXED]


Under buttons (http://extjs.com/deploy/ext-3.0-rc2/docs/?class=Ext.Button) > Public Methods > Toggle, the description for the supressEvent parameter is as follows:


(optional) True to ttop events being fired when calling this method.

ttop should be stop

Cheers,
Dan

grzegorz.borkowski
25 Jun 2009, 1:31 PM
[DOC GENERATOR UTILITY ISSUE]

In the 3.0 documentation for Element class http://extjs.com/deploy/ext-3.0-rc2/docs scroll to the beginning of Public Methods. If the browser window is narrow enough, or if you increase page zoom enough, the header "Defined By" gets wrapped (into two lines, instead of being printed with one line). This cause the "expander column" on the left to shrink and the expander arrows are no longer visible. I observed it only for this class and only for this section.
In 2.2.1 it works properly: http://extjs.com/deploy/dev/docs/?class=Ext.Element

Condor
30 Jun 2009, 11:40 PM
[FIXED]

The API docs for Ext.grid.Column id (http://extjs.com/deploy/ext-3.0-rc2/docs/?class=Ext.grid.Column&member=id) propose a multi-class selector for header cells:

.x-grid3-hd.x-grid3-td-id

However, this syntax is not supported by IE6. I would recommend using:

.x-grid3-hd-row .x-grid3-td-id

jay@moduscreate.com
3 Jul 2009, 11:18 AM
[ADDED] (DateMenu, DatePicker, ColorMenu, ColorPalette

handler and scope configuration properties are missing from DateMenu and ColorMenu.

This is missing in both Ext 3.0[RC3] and Ext 2.2.1.
DateMenu.js


45 initComponent: function(){
46 this.on('beforeshow', this.onBeforeShow, this);
47 if(this.strict = (Ext.isIE7 && Ext.isStrict)){
48 this.on('show', this.onShow, this, {single: true, delay: 20});
49 }
50 Ext.apply(this, {
51 plain: true,
52 showSeparator: false,
53 items: this.picker = new Ext.DatePicker(Ext.apply({
54 internalRender: this.strict || !Ext.isIE,
55 ctCls: 'x-menu-date-item'
56 }, this.initialConfig))
57 });
58 this.picker.purgeListeners();
59 Ext.menu.DateMenu.superclass.initComponent.call(this);
60 this.relayEvents(this.picker, ["select"]);
61 this.on('select', this.menuHide, this);
62 if(this.handler){
63 this.on('select', this.handler, this.scope || this);
64 }
65 },

MD
5 Jul 2009, 9:16 AM
[FIXED]


As per the karga's understandable confusion expressed in this thread (http://extjs.com/forum/showthread.php?p=352841), I think the Public Properties section of the API docs for Ext.MessageBox should be expanded to cover all pertinent properties, most notably, "multiline". The docs cover the "defaultTextHeight" property, but not "multiline", and those two are closely-tied in their effect.

From the class comments:
@param {Boolean/Number} multiline (optional) True to create a multiline textbox using the defaultTextHeight property, or the height in pixels to create the textbox (defaults to false / single-line)

I also think two additional snippets should be added to the Example Usage at the top of the docs to show this dual usage of the multiline option. Something along the lines of:


Ext.Msg.show({
title: 'Title',
msg: 'Multiline height set by defaultTextHeight',
multiline: true
});

Ext.Msg.show({
title: 'Title',
msg: 'User-defined multiline height',
multiline: 100
});

MD

sol
5 Jul 2009, 8:29 PM
[FIXED]


Ext.grid.GridView.findRow(Element el) / findRowIndex(Element el)
@param {Element} el ... - should be {HTMLElement}
version: 2.2.1, 3.0 rc1, 3.0 rc2

btw, a helper routine locating the focused row(s) would be nice - sth like:


Ext.grid.GridView.prototype.getFocusedRowIndex = function() {
var rv = -1;
var els = Ext.select('div.x-grid3-row-selected', true);
if (els.getCount() > 0) {
rv = this.findRowIndex(els.item(0).dom);
}
return rv;
}

Condor
7 Jul 2009, 2:34 AM
[FIXED] - except "exec" not included

Already mentioned in the 2.x thread, but still valid for 3.x:

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 also has 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.

toado
7 Jul 2009, 5:27 PM
[DOC GENERATOR UTILITY ISSUE]

A search for "buttonAlign" in the 3.0 API docs gives the description for Ext.form.FormPanel's "buttonAlign": "Valid values are "left," "center" and "right" (defaults to "center")".

If you go to the Ext.form.FormPanel class page in the docs, it has the following description for "buttonAlign": "The alignment of any buttons added to this panel. Valid values are 'right', 'left' and 'center' (defaults to 'right')."

The second description gives the correct value for the default, while the first one is incorrect.

mjlecomte
7 Jul 2009, 8:10 PM
[DOC GENERATOR UTILITY ISSUE]



A search for "buttonAlign" in the 3.0 API docs gives the description for Ext.form.FormPanel's "buttonAlign": "Valid values are "left," "center" and "right" (defaults to "center")".

If you go to the Ext.form.FormPanel class page in the docs, it has the following description for "buttonAlign": "The alignment of any buttons added to this panel. Valid values are 'right', 'left' and 'center' (defaults to 'right')."

The second description gives the correct value for the default, while the first one is incorrect.

The search utility is out of date, don't trust it.

elishnevsky
10 Jul 2009, 6:34 AM
[FIXED]

http://extjs.com/deploy/dev/docs/?class=Ext.grid.GridPanel

Second line in Example Usage says:


store: new (@link Ext.data.Store}({

dolittle
11 Jul 2009, 6:03 AM
[FIXED]

The parameters in Ext.util.Cookies are Objects
but I think they should be strings:
clear( Object name )
get( Object name )
set( Object name, Object value, [Object expires], [String path], [String domain], [Boolean secure] )

dolittle
11 Jul 2009, 10:28 AM
[FIXED]

Ext.util.MixedCollection

paramters of the sort method are:

1. direction: says that this is optional but doesn't say what is the default.
2. fn: says that this is optional but doesn't say what is the default. Is it the default javascript comparison?

Alberto Wagner
12 Jul 2009, 3:04 PM
[FIXED]

Class Ext.form.Action.Load

First code box wrong parenthesis after action:


failure: function(form, action() {
Ext.Msg.alert("Load failed", action.result.errorMessage);
}

dolittle
13 Jul 2009, 10:45 AM
[FIXED]

itemCls property in BoxComponent looks wrong.
Talking about form item element...
http://www.extjs.com/deploy/dev/docs/source/Component.html#cfg-Ext.Component-itemCls

mjlecomte
13 Jul 2009, 11:02 AM
[FIXED]


itemCls property in BoxComponent looks wrong.
Talking about form item element...
http://www.extjs.com/deploy/dev/docs/source/Component.html#cfg-Ext.Component-itemCls

What do you mean "looks wrong"?

Animal
13 Jul 2009, 11:17 AM
[FIXED]

I think it just needs a note like fieldLabel that it's only relevant when the Component is being rendered by a FormLayout layout manager.

dolittle
13 Jul 2009, 3:27 PM
[FIXED]





Originally Posted by dolittle View Post
itemCls property in BoxComponent looks wrong.
Talking about form item element...
http://www.extjs.com/deploy/dev/docs...ponent-itemCls

What do you mean "looks wrong"?

I mean that I don't understand what a form field has to do with BoxComponent.
From itemCls docs of BoxComponent:

An additional CSS class to apply to the div wrapping the form item element of this field. If supplied, itemCls at the field level will override the default itemCls supplied at the container level. The value specified for itemCls will be added to the default class ('x-form-item').

sol
13 Jul 2009, 6:52 PM
[DOC GENERATOR UTILITY ISSUE]

Surprisingly, several common methods of Ext.DomHelper get lost: (only in 3.0.0)

append, insertAfter, insertBefore, insertFirst

nctag
14 Jul 2009, 2:06 AM
[IMPLEMENTED] - docs for setActive were updated to reflect it may be called internally. The events mentioned by OP already link to that method.


deactivate : ( Ext.Window )

Fires after the window has been visually deactivated via setActive.
Fires after the window has been visually deactivated via setActive.

Please note that the WindowMgr itself calls setActive. Therefore it is not neccessary to call explicitly setActive as mentioned above. Please either remove the 'via setActive' or describe what I said.

Take a look at activate too.

Condor
15 Jul 2009, 12:15 AM
The Ext.form.BasicForm section on file uploads is missing a new feature that has been added to Ext 3.0:

It is now no longer required to encode < and & characters if you return your JSON data as the content of a textarea:

<html><body><textarea>{JSON data}</textarea></body></html>

(I would say that this is the preferred method, because it also emphasizes the need for Content-type: text/html)

Animal
15 Jul 2009, 12:27 AM
The Ext.form.BasicForm section on file uploads is missing a new feature that has been added to Ext 3.0:

It is now no longer required to encode < and & characters if you return your JSON data as the content of a textarea:

<html><body><textarea>{JSON data}</textarea></body></html>

(I would say that this is the preferred method, because it also emphasizes the need for Content-type: text/html)

If you do that, I don't think you have to set the Content-Type. The browser always creates an HTML document out of what it recieves anyway, so it will create the textarea with the required content.

Condor
15 Jul 2009, 12:33 AM
If you do that, I don't think you have to set the Content-Type. The browser always creates an HTML document out of what it recieves anyway, so it will create the textarea with the required content.

Correct, but I wouldn't rely on browsers doing that.

Maybe there are browsers that actually handle Content-type: text/plain or application/json and put the response as plain text in the IFRAME.

Animal
15 Jul 2009, 4:08 AM
How would that happen though? There has to be some kind of DOM there.

Condor
15 Jul 2009, 6:15 AM
How would that happen though? There has to be some kind of DOM there.

I don't know if such a browser exists, but I could imagine one that would show:


<html><body>&lt;html&gt;&lt;body&gt;&lt;textarea&gt;{JSON data}&lt;/textarea&gt;&lt;/body&gt;&lt;/html&gt;</html></body>

when presented with:

Content-type: text/plain

<html><body><textarea>{JSON data}</textarea></body></html>

Tewr
16 Jul 2009, 12:04 AM
[FIXED]


Ext.grid.Column: defaultSortable is not a property of Ext.grid.Column, but of Ext.grid.ColumnModel

-/**
- * @cfg {Boolean} sortable Optional. true if sorting is to be allowed on this column.
- * Defaults to the value of the {@link #defaultSortable} property.
- * Whether local/remote sorting is used is specified in {@link Ext.data.Store#remoteSort}.
- */

+/**
+ * @cfg {Boolean} sortable Optional. true if sorting is to be allowed on this column.
+ * Defaults to the value of the {@link Ext.grid.ColumnModel#defaultSortable} property.
+ * Whether local/remote sorting is used is specified in {@link Ext.data.Store#remoteSort}.
+ */

Gjslick
16 Jul 2009, 12:25 PM
Not sure if this is 100% correct, but I believe 'reader' should be documented as a public property of JsonStore (or possibly Store in general).

Access to the underlying reader of a JsonStore seems to be necessary to retrieve JSON data elements that are not part of the actual data rows.

tryanDLS
16 Jul 2009, 1:48 PM
Looks like some of the comments in HttpProxy did not gen to the documentation. For example the stuff immediately following the Extend with examples of the api config.

mjlecomte
16 Jul 2009, 1:54 PM
Looks like some of the comments in HttpProxy did not gen to the documentation. For example the stuff immediately following the Extend with examples of the api config.

Looks ok to me, not sure what you're referring to. I see example code under the restful and api config properties in the generated docs.

tryanDLS
16 Jul 2009, 1:57 PM
Don't see any of this.

EDIT: take that back - it is under the restful config, but it's really misplaced. Some of this stuff should be part of the api config shouldn't it. It's really the only example of how to get the proxy to do a POST. ,since the method config is removed.


/**
* @cfg {Boolean} restful
* <p>If set to <tt>true</tt>, a {@link Ext.data.Record#phantom non-phantom} record's
* {@link Ext.data.Record#id id} will be appended to the url (defaults to <tt>false</tt>).</p><br>
* <p>The url is built based upon the action being executed <tt>[load|create|save|destroy]</tt>
* using the commensurate <tt>{@link #api}</tt> property, or if undefined default to the
* configured {@link Ext.data.Store}.{@link Ext.data.Store#url url}.</p><br>
* <p>Some MVC (e.g., Ruby on Rails, Merb and Django) support this style of segment based urls
* where the segments in the URL follow the Model-View-Controller approach.</p><pre><code>
* someSite.com/controller/action/id
* </code></pre>
* Where the segments in the url are typically:<div class="mdetail-params"><ul>
* <li>The first segment : represents the controller class that should be invoked.</li>
* <li>The second segment : represents the class function, or method, that should be called.</li>
* <li>The third segment : represents the ID (a variable typically passed to the method).</li>
* </ul></div></p>
* <p>For example:</p>
* <pre><code>
api: {
load : '/controller/load',
create : '/controller/new', // Server MUST return idProperty of new record
save : '/controller/update',
destroy : '/controller/destroy_action'
}

// Alternatively, one can use the object-form to specify each API-action
api: {
load: {url: 'read.php', method: 'GET'},
create: 'create.php',
destroy: 'destroy.php',
save: 'update.php'
}
*/

steffenk
17 Jul 2009, 12:39 AM
this is not only not in 3.0 docs, that is missing in 2.x docs as well:

add Debug console to the docs. Mention how to add a store to the StoreMgr, how to remove. Add Ext.Log function to the docs as well

steffenk
26 Jul 2009, 1:34 PM
[FIXED]

found a wrong link in the docs:

http://extjs.com/deploy/dev/docs/?class=Ext.layout.AnchorLayout

in properties, fieldTpl the link to Ext.Template is wrong
http://extjs.com/deploy/dev/docs/output/Template.html
should read
http://extjs.com/deploy/dev/docs/output/Ext.Template.html

GraemeBryce
27 Jul 2009, 1:10 AM
[FIXED]

In the layout browser

http://extjs.com/deploy/dev/examples/layout-browser/layout-browser.html

for the vBox layout
There is a syntax error in the code appearing in the Details panel.
An additional single quote after flex:2

Nothing serious but I just spent 15mins staring at a copied vesion of it wondering what was wrong!

Animal
27 Jul 2009, 1:45 AM
[FIXED]

Thanks. Fixed in SVN.

steffenk
27 Jul 2009, 5:09 AM
When we are on the layout browser: the example sources should be the same as the example shown, would help a lot.
Example where it's totally different: Table

NetFantom
29 Jul 2009, 10:54 AM
[NO CHANGE]

In documentation

The supplied function is called with (Object item, Number index, Array allItems).
but actual (Object item, Array allItems, Number index)

Animal
29 Jul 2009, 12:28 PM
[NO CHANGE]

That is incorrect.



each: function(array, fn, scope){
if(Ext.isEmpty(array, true)){
return;
}
if(!isIterable(array) || Ext.isPrimitive(array)){
array = [array];
}
for(var i = 0, len = array.length; i < len; i++){
if(fn.call(scope || array[i], array[i], i, array) === false){
return i;
};
}
},


The arguments are the item, the index, and the whole Array as you can see.

Animal
29 Jul 2009, 12:29 PM
[NO CHANGE]

CompositeElement.each however...



each : function(fn, scope){
Ext.each(this.elements, function(e,i) {
return fn.call(scope || e, e, this, i);
}, this);
return this;
}


Passes the element, the Composite and the index/

mjlecomte
29 Jul 2009, 12:53 PM
[NO CHANGE]


In documentation

The supplied function is called with (Object item, Number index, Array allItems).
but actual (Object item, Array allItems, Number index)

Looks ok as is to me, care to clarify / rebute?

NetFantom
30 Jul 2009, 2:06 AM
Ext.each work's fine, as you describe, but

Code:

(Ext.select('input')).each(function(el, allItems, index){
console.log(el);
console.log(allItems);
console.log(index);
}
);Log:

Object dom=input#product3 isFlyweight=true defaultUnit=px
Object elements=[3] el=Object isComposite=true
0
Object dom=input#product1 isFlyweight=true defaultUnit=px
Object elements=[3] el=Object isComposite=true
1
Object dom=input#product4 isFlyweight=true defaultUnit=px
Object elements=[3] el=Object isComposite=true
2

mjlecomte
30 Jul 2009, 5:33 AM
As Animal pointed out the CompositeElement.each() method was documented differently.

I did update the docs (see attachment) for formatting and clarification though.

krzak
30 Jul 2009, 5:33 AM
There is labelPad layout specific config, but it's only mentioned in description of FromLayout. It's not listed and described among other config options.

Condor
30 Jul 2009, 5:42 AM
There is labelPad layout specific config, but it's only mentioned in description of FromLayout. It's not listed and described among other config options.

Not true. It's also listed as a FormPanel config option (http://extjs.com/deploy/dev/docs/?class=Ext.form.FormPanel&member=labelPad).

(to be completely correct labelPad should have been mentioned as an option of Ext.Container and not of Ext.form.FormPanel)

g2mac
3 Aug 2009, 11:48 AM
in API Doc's http://extjs.com/deploy/dev/docs/?class=Ext.data.Store&member=beforewrite:
beforewrite : ( DataProxy this, String action, Record/Array[Record] rs, Object options, Object arg ) first parameter is Store, not DataProxy

Tom23
4 Aug 2009, 3:43 AM
[NO CHANGE]



SimpleStore doesn't show up AFAIK. Please let me know if it does.


It can still be found via the search form in http://extjs.com/deploy/dev/docs/ .

mschwartz
4 Aug 2009, 4:57 AM
[NO CHANGE]


It can still be found via the search form in http://extjs.com/deploy/dev/docs/ .

I thought it was renamed to ArrayStore

Animal
4 Aug 2009, 5:00 AM
[NO CHANGE]

It was. There should be no references to SimpleStore.

But I think the search facility uses a generated database table which has not been regenerated.

mschwartz
4 Aug 2009, 5:07 AM
[NO CHANGE]


It was. There should be no references to SimpleStore.

But I think the search facility uses a generated database table which has not been regenerated.

It might be aliased for backward compatibility.

Ext.data.SimpleStore = Ext.data.ArrayStore;

Animal
4 Aug 2009, 5:35 AM
[NO CHANGE]

It is. You can still use SimpleStore. It's just not documented so that new users don't use it.

Condor
4 Aug 2009, 5:51 AM
[NO CHANGE]


It is. You can still use SimpleStore. It's just not documented so that new users don't use it.

This is going to cause lots of questions. Can't we include SimpleStore in the API docs, but only with a message that it is deprecated and a link to ArrayStore?

Tom23
4 Aug 2009, 7:31 AM
[NO CHANGE]

The docs may contain duplicate IDs like #Ext.ColorPalette-select in

http://extjs.com/deploy/dev/docs/?class=Ext.ColorPalette

( Is there a way to link to this anchor directly? )

This is because ColorPalette has both a select method and a select event.
As a result, a search for 'select' will yield two results in ColorPalette, where a click on the select event falsely takes you to the select method.

mjlecomte
4 Aug 2009, 8:40 AM
[NO CHANGE]


This is going to cause lots of questions. Can't we include SimpleStore in the API docs, but only with a message that it is deprecated and a link to ArrayStore?

It's in the change log thread and the ArrayStore docs state right off it was formerly SimpleStore. Also where xtypes are shown at top of Component Class docs it lists the deprecation for the store xtype.

mjlecomte
4 Aug 2009, 10:42 AM
[NO CHANGE]


The docs may contain duplicate IDs like #Ext.ColorPalette-select in

http://extjs.com/deploy/dev/docs/?class=Ext.ColorPalette

( Is there a way to link to this anchor directly? )

This is because ColorPalette has both a select method and a select event.
As a result, a search for 'select' will yield two results in ColorPalette, where a click on the select event falsely takes you to the select method.

That's a limitation of the doc tool.

Condor
4 Aug 2009, 10:44 PM
The API doc for ScriptTagProxy is missing the extraParams config option.

Condor
4 Aug 2009, 10:45 PM
The autoRender config option of Ext.Component is undocumented (but there is a discussion (http://extjs.com/forum/showthread.php?t=76412) on if it should be left private).

Condor
5 Aug 2009, 3:52 AM
Date.y2kYear is undocumented.

steffenk
6 Aug 2009, 2:13 PM
what happened her ? http://extjs.com/deploy/dev/docs/?class=Ext.Direct.Transaction

Looks like Transactions ~ Translations :)

e12win
7 Aug 2009, 9:07 AM
getColor() returns the normalized hex color and the return documentation should reflect this.

Currently the return doc said it returns void.

mystix
7 Aug 2009, 9:44 AM
[No change]

some funky behaviour with the ext-doc generator here...

when the description for Ext.isEmpty() is collapsed, i see this:


isEmpty( Mixed value, ) : Boolean
Returns true if the passed value is empty. The value is deemed to be empty if it is[B]<div class="mdetail-params"> nul...


when it's expanded, however, all's fine and well.

mjlecomte
9 Aug 2009, 6:00 PM
[No change]


some funky behaviour with the ext-doc generator here...

when the description for Ext.isEmpty() is collapsed, i see this:


when it's expanded, however, all's fine and well.

Yes, it doesn't process html until expanding, that's typical. It's a bug with the doc generator, not the doc syntax.

woomboom
9 Aug 2009, 11:15 PM
[FIXED]

Ext.util.Observable fireEvent has been replaced with filterOptRe

Animal
10 Aug 2009, 2:00 AM
Ext.util.Observable fireEvent has been replaced with filterOptRe

Well spotted. That looked bad. Fixed in SVN.

gimmick66
10 Aug 2009, 1:20 PM
I could just be blind, but the docs for Ext.MessageBox.confirm say this:

"Displays a confirmation message box with Yes and No buttons (comparable to JavaScript's confirm). If a callback function is passed it will be called after the user clicks either button, and the id of the button that was clicked will be passed as the only parameter to the callback (could also be the top-right close button)."

This has been in the docs since 2.2. However, Ext.MessageBox.show's callback gets

buttonId
text
optpassed to it. It looks like the confirm callback actually gets these arguments too, not the single "button id" blatant lie. BLATANT!

Animal
11 Aug 2009, 12:07 AM
You spotted the evil conspiracy.

Condor
11 Aug 2009, 3:27 AM
Can we mark ComboBox.select and selectByValue as protected?

I don't see any normal usecase when calling these methods would be practical and people are constantly trying to use these methods instead of setValue.

zihotki
11 Aug 2009, 1:28 PM
[FIXED]

Ext.create is not documented and link in first post is to Ext RC2 documentation.

jackphill
11 Aug 2009, 5:02 PM
when I use button's ownerCt property to get it's container. I find it refer to button's direct container(the panel's footer) but not the panel.

according to the API document it is a bug.

ownerCt (http://localhost/ext-3.0.0/docs/source/Button.html#prop-Ext.Button-ownerCt) : Ext.PanelThe Button's owner Ext.Panel (http://localhost/ext-3.0.0/docs/output/Ext.Panel.html) (defaults to undefined, and is set automatically when the Button is added to a container). Read-only.

evant
11 Aug 2009, 5:06 PM
It's a documentation issue. The "footer bar" is a toolbar, so the owner of the button is the toolbar. If you need a reference to the panel, get the ownerCt of the toolbar.

Moving this to docs thread.

Animal
12 Aug 2009, 5:23 AM
That's weird documentation. I don't know how that got there...

Animal
12 Aug 2009, 5:25 AM
It must have been from when Toolbar wasn't a Container. Button should just inherict the ownerCt config. It's just a Component which is (usually) in a Container now.

gimmick66
12 Aug 2009, 7:06 AM
Legacy problem?

http://extjs.com/deploy/dev/docs/
Search for "simplestore"

Click on the result. Kablooie!

It also seems like with 3.0.0 making a SimpleStore still works, but it's no longer in the docs. Has it been removed?

mystix
12 Aug 2009, 7:14 AM
Legacy problem?

http://extjs.com/deploy/dev/docs/
Search for "simplestore"

Click on the result. Kablooie!

It also seems like with 3.0.0 making a SimpleStore still works, but it's no longer in the docs. Has it been removed?

@animal's mentioned a couple of times in this thread that the database which supports the doc searches needs to be repopulated with the latest doc data.

as for SimpleStore -- it's been deprecated, and replaced by ArrayStore.
for backward compatibility though, it still maintains an xtype, but references the new ArrayStore instead.

gimmick66
12 Aug 2009, 7:24 AM
Ah. Makes sense. On a related note, the example for at the top of http://extjs.com/deploy/dev/docs/?class=Ext.data.ArrayStore shows "idIndex: 0" for the config, but that is literally the only place in the docs it is mentioned, which confuses and frightens me.

edit: I take that back, but searching for "idIndex" returned no results

Starfall
12 Aug 2009, 9:58 AM
Search for "Toolbar"
Click on Toolbar.Button
Watch ugly 404...

mystix
12 Aug 2009, 5:53 PM
edit: I take that back, but searching for "idIndex" returned no results

to which i reply yet again:

... the database which supports the doc searches needs to be repopulated with the latest doc data ...

;)

Starfall
13 Aug 2009, 12:28 AM
[FIXED]

Ext.grid.ColumnModel: "Field's that are not included..." -> "Fields that are not included..."

Starfall
13 Aug 2009, 12:44 AM
[FIXED]

Ext.data.JsonReader:

// map Record's 'firstname' field to data object's key of same name
{name: 'name'},

I think that should be {name: 'firstname'}.

Starfall
13 Aug 2009, 12:48 AM
Ext.data.Store::load(), escaped HTML:

If the <i>developer</i> provided <tt>{@link #beforeload}</tt> event handler returns <tt>false</tt>, the load call will abort and will return <tt>false</tt>; otherwise will return <tt>true</tt>.

Animal
13 Aug 2009, 1:48 AM
Ext.data.Store::load(), escaped HTML:

If the <i>developer</i> provided <tt>{@link #beforeload}</tt> event handler returns <tt>false</tt>, the load call will abort and will return <tt>false</tt>; otherwise will return <tt>true</tt>.

The Doc generator is under active development. This is one of its idiosyncrasies it right now.

That and not being able to process direct links to members of singleton objects any more.

Starfall
13 Aug 2009, 6:41 AM
Ok, thanks for info.

Eh, how frequently are the public docs updated with doc bugfixes? I don't see any of those "FIXED" things.

Animal
13 Aug 2009, 7:27 AM
Only with each release. Otherwise any new features which had been added and documented would appear in the docs while not being in the users' code.

stratton
13 Aug 2009, 10:24 AM
Hello,
I'm working with the HBox and VBox layouts... and it looks like the 'flex' property on these layouts works with a relative 'flex' property that may (or may not) be on the components which are contained in the layout. Wouldn't this mean that the base Ext.Component documentation should include a 'Flex' property?
Clarification would be helpful.
Thanks,
-g

Starfall
14 Aug 2009, 1:23 AM
Only with each release.

But it won't be time-consuming to update both SVN and docs HTML, will it?

Animal
14 Aug 2009, 3:45 AM
The HTML documents are generated from comments in the source code. If there's a new feature commented which is not released, then if the API docs are generated and published too soon, they will contain things that are not there.

gimmick66
14 Aug 2009, 12:41 PM
This bug is quite minor, but a bug nonetheless: when you hover over items in the left pane, the background of that line turns gray. But if you move your mouse off fast enough it stays gray. Only if the mouse touches the gutter between the list and the scrollbar does it un-select the gray boxes

Starfall
15 Aug 2009, 1:49 AM
I do understand your point here. I only propose to fix things manually in both places: current API docs HTML and comments in SVN. Just some copypasting, ensuring current docs contain less errors.

Animal
15 Aug 2009, 4:34 AM
current API docs HTML and comments in SVN.

What, manually edit the static, generated HTML from the previous released version whenever a doc comment is edited? Not a chance mate!

samax
17 Aug 2009, 1:54 AM
Hello,
If found the findRecord method of the Combobox object by chance, when I tried to find a method which permit to get the display value of the selected line of the combo to display in other place.
I am surprised whether it is not present in the API documentation of this object, because it can be very useful.

Thanks.

Animal
17 Aug 2009, 2:36 AM
Hello,
If found the findRecord method of the Combobox object by chance, when I tried to find a method which permit to get the display value of the selected line of the combo to display in other place.
I am surprised whether it is not present in the API documentation of this object, because it can be very useful.

Thanks.

The developer who wrote it has explicitly added



// private

samax
17 Aug 2009, 2:41 AM
The developer who wrote it has explicitly added



// private

Thanks for your reply, but so there is no public method to retrieve a record in a combo to get its displayValue?

Animal
17 Aug 2009, 2:47 AM
Plenty of methods in its Store which is accessible through a public getter

Jul
17 Aug 2009, 10:45 AM
The TreeSelectionModel class seems to be completely missing from the online docs.

It's referenced as a return value in the docs for TreePanel.getSelectionModel()

Animal
17 Aug 2009, 12:42 PM
It's this: http://extjs.com/deploy/dev/docs/?class=Ext.tree.DefaultSelectionModel

Jul
18 Aug 2009, 2:35 AM
Does that mean the reference to TreeSelectionModel in TreePanel.getSelectionModel() is wrong?

Jul
18 Aug 2009, 2:39 AM
Class Ext.tree.TreeNode

Config option: editable

There is a typo in the description. It currently reads:
False to not allow this node to be edited by an (@link Ext.tree.TreeEditor} (defaults to true)

I suspect it should be:
False to not allow this node to be edited by an {@link Ext.tree.TreeEditor} (defaults to true)

Animal
18 Aug 2009, 3:27 AM
Class Ext.tree.TreeNode

Config option: editable

There is a typo in the description. It currently reads:
False to not allow this node to be edited by an (@link Ext.tree.TreeEditor} (defaults to true)

I suspect it should be:
False to not allow this node to be edited by an {@link Ext.tree.TreeEditor} (defaults to true)

Thanks for that. I suspect this could be quite a common typo. I did a search for "(@" and found a couple of places which I also fixed.

Animal
18 Aug 2009, 3:30 AM
Does that mean the reference to TreeSelectionModel in TreePanel.getSelectionModel() is wrong?

No. It's just referring to an "abstract" class which does not exist. In fact there are two types of TreeSelectionModels, Default and Multi, and either could be returned, so it just says that a TreeSelectionModel is returned.

Tom23
18 Aug 2009, 6:14 AM
[FIXED]

In Ext.Component (http://extjs.com/deploy/dev/docs/?class=Ext.Component):

xtype="form" points to Ext.FormPanel instead of Ext.form.FormPanel

Lukman
18 Aug 2009, 6:50 AM
FIXED

In Ext.BoxComponent, getResizeEl() should return 'Ext.Element' instead of 'void'

And I think people have mentioned this before: many missing config options from API for chart components, e.g: xAxis, yAxis, xField, yField, categoryNames, series, tipRenderer etc

Jul
19 Aug 2009, 12:31 AM
[NO CHANGE]

Class Ext.Component

An xtype called "datecolumn" is mentioned in the example code in the Ext.grid.GridPanel class but it's missing from the list of xtypes shown in Ext.Component. Should that be the comprehensive list of xtypes or is there another home for xtype descriptions?

- Jul

mjlecomte
19 Aug 2009, 2:37 AM
[NO CHANGE]


Class Ext.Component

An xtype called "datecolumn" is mentioned in the example code in the Ext.grid.GridPanel class but it's missing from the list of xtypes shown in Ext.Component. Should that be the comprehensive list of xtypes or is there another home for xtype descriptions?

- Jul

Those are listed under Column. http://extjs.com/deploy/ext-3.0.0/docs/?class=Ext.grid.Column&member=xtype

I am of the opinion that location is appropriate, althought I could maybe see adding a section for grid column to the Component doc page, just as was done for store for example.

NOSLOW
19 Aug 2009, 6:42 AM
The 'text' config option is missing for QuickTip. Now that I figured it out, I can stop using 'title' for my QuickTips :">

benny
19 Aug 2009, 7:06 AM
Ext.ButtonGroup may now be Ext.ButtonPanel?

There was a discussion a while ago about renaming ButtonGroup to ButtonPanel. Version 3 now contains ButtonPanel. Is this a rename of ButtonGroup, or a brand new Class?

No entries exist for ButtonPanel

Animal
19 Aug 2009, 12:31 PM
There is no ButtonPanel.

reaper.br
21 Aug 2009, 6:36 AM
It's missing the 'enableOverflow' config option for Toolbars. See related thread here (http://extjs.com/forum/showthread.php?t=77826).

Tom23
25 Aug 2009, 12:39 AM
Ext.Template.compile() (http://extjs.com/deploy/dev/docs/?class=Ext.Template&member=compile) is missing as well as Ext.Template.applyTemplate() (http://extjs.com/deploy/dev/docs/?class=Ext.Template&member=applyTemplate)

Animal
25 Aug 2009, 12:52 AM
Ext.Template.compile() (http://extjs.com/deploy/dev/docs/?class=Ext.Template&member=compile) is missing as well as Ext.Template.applyTemplate() (http://extjs.com/deploy/dev/docs/?class=Ext.Template&member=applyTemplate)

Yes, there is a problem, but I think it is the doc parser, not the lack of written documentation.

Both those methods have annotation comments, but they are split between "core" and "more". That is part appears in Ext Core, and then there is extra stuff included in the class for the full ExtJs product. There is stuff that looks like



* @hide repeat doc


In the "more" version. Should this mean that the doc for that method is to be inherited from the core? Is that a valid annotation for the doc parser? Because I think it's just causing the methods to be hidden.

Jul
25 Aug 2009, 5:58 PM
Class Ext.data.Store

In the method load, there is some weirdness in the formatting of the text in the return value. It appears some raw HTML codes are making it into the text.

E.g.

If the <i>developer</i> provided <tt>{@link #beforeload}</tt> event handler returns <tt>false</tt>, the load call will abort and will return <tt>false</tt>; otherwise will return <tt>true</tt>.

steffenk
26 Aug 2009, 12:05 AM
when looking to the chart lots of props are missing or removed?
Example:
http://extjs.com/deploy/dev/examples/chart/stacked-bar-chart.js

Looking to Ext.chart.StackedBarChart i miss the used yField, xAxis and series. I find the yField in all the series, but how should i know that they available in Chart too?

Looking to Ext.chart.NumericAxis i don't see the used stackingEnabled and labelRenderer.

Difficult to get in the chart stuff.

Animal
26 Aug 2009, 1:16 AM
Class Ext.data.Store

In the method load, there is some weirdness in the formatting of the text in the return value. It appears some raw HTML codes are making it into the text.

E.g.

If the <i>developer</i> provided <tt>{@link #beforeload}</tt> event handler returns <tt>false</tt>, the load call will abort and will return <tt>false</tt>; otherwise will return <tt>true</tt>.


That's a bug in the doc parser.

mjlecomte
26 Aug 2009, 4:00 AM
Yes, there is a problem, but I think it is the doc parser, not the lack of written documentation.

Both those methods have annotation comments, but they are split between "core" and "more". That is part appears in Ext Core, and then there is extra stuff included in the class for the full ExtJs product. There is stuff that looks like



* @hide repeat doc


In the "more" version. Should this mean that the doc for that method is to be inherited from the core? Is that a valid annotation for the doc parser? Because I think it's just causing the methods to be hidden.

Need to investigate the reason for hiding the repeat doc is that both core and full version may have a method documented and then when the doc is generated some members would show up twice. In earlier tests hiding the second occurrence worked fine. Need to investigate what is happening at the moment.

dolittle
26 Aug 2009, 8:56 AM
FIXED

Events are missing from Ext.History
I think there are 'change' and 'ready' events.
The doc is even linking to the change event but it's not there.

StevenJ
26 Aug 2009, 4:42 PM
Observable.fireEvent documentation is showing up as Observable.filterOptRe because of comment placement.

http://extjs.com/deploy/dev/docs/source/Observable1.html#method-Ext.util.Observable-filterOptRe

Animal
27 Aug 2009, 2:41 AM
Observable.fireEvent documentation is showing up as Observable.filterOptRe because of comment placement.

http://extjs.com/deploy/dev/docs/source/Observable1.html#method-Ext.util.Observable-filterOptRe

This was reported a few posts upthread and has been fixed in SVN.

Tom23
27 Aug 2009, 3:45 AM
Ext.Observable.addEvents() (http://extjs.com/deploy/dev/docs/?class=Ext.util.Observable&member=addEvents) should be revised


/**
* Used to define events on this Observable
* @param {Object} object The object with the events defined
*/First of all, addEvents() accepts an object OR a list of String parameters.

Second, the structure of the object needs some clarification. (cf. http://extjs.com/forum/showthread.php?t=37265 and http://extjs.com/forum/showthread.php?p=115206 )

IIUC, those objects need the following form:

object = {
'eventname': <something>,
'eventname': <something>,
...
}where <something> can either be some instance of Ext.util.Event or some dummy boolean. In the latter case, the Ext.util.Event is automatically created by Observable. I'm not quite sure if it even makes sense to pass an Ext.util.Event directly.

steffenk
27 Aug 2009, 4:01 AM
just a small:
autoLoad property of Panel can be anything, also boolean.
doAutoLoad property is missing.

Animal
27 Aug 2009, 4:58 AM
Tom. I will update it to specify multiple event name strings.

The Ext.util.Event class is currently private (the developer who wrote it added no documentation to it, so I have to assume that was his intention)

dolittle
27 Aug 2009, 4:22 PM
The idProperty config option is missing from Ext.data.JsonStore docs
although it is explained in the example.

The forum-search example uses id instead of idProperty, not sure if this is correct or not
but the id config is also missing.

Animal
27 Aug 2009, 11:24 PM
The idProperty config option is missing from Ext.data.JsonStore docs
although it is explained in the example.

The forum-search example uses id instead of idProperty, not sure if this is correct or not
but the id config is also missing.

http://i131.photobucket.com/albums/p286/TimeTrialAnimal/jsonstorenote.jpg

qooleot
28 Aug 2009, 1:32 PM
FIXED

The radioGroup page refers to Checkboxes (and yes I know radio inherits from a checkbox), but in the config:

items (http://extjs.com/forum/../deploy/ext-3.0-rc2/docs/source/CheckboxGroup.html#cfg-Ext.form.CheckboxGroup-items) : Array
An Array of Checkbox (http://extjs.com/forum/../deploy/ext-3.0-rc2/docs/output/Ext.form.Checkbox.html)es or Checkbox config objects to arrange in the group.

wouldn't it be nicer to link to the 'radio' object instead of the checkbox object?

Tom23
29 Aug 2009, 1:16 AM
Tom. I will update it to specify multiple event name strings.
Thanks a million. :)

Another one:
Ext (http://extjs.com/deploy/dev/docs/?class=Ext) and Ext.dd.DragDrop (http://extjs.com/deploy/dev/docs/?class=Ext.dd.DragDrop) inconsistently mark alternative parameter types with a '|', e.g.

partition (http://extjs.com/forum/../deploy/dev/docs/source/Ext-more.html#method-Ext-partition)( Array|NodeList arr, [Function truth] ) : Arrayinstead of

partition (http://extjs.com/forum/../deploy/dev/docs/source/Ext-more.html#method-Ext-partition)( Array/NodeList arr, [Function truth] ) : Array

edit: same for return values of isValid() and getVerb() in Ext.data.Api

Animal
29 Aug 2009, 4:27 AM
There's no consistent style for that throughout. ExtJs will have to decide upon which they want to use.

qooleot
30 Aug 2009, 6:22 AM
radiogroup has a config option of 'value' that doesn't pre-set the value like setValue() does, but the 'values' config option works, but thats not listed on the documentation. Here is the thread with a full example:

http://extjs.com/forum/showthread.php?p=380647

I'm guessing the 'value' config option should just be replaced with 'values' in the documentation, unless there is some other purpose for 'value' that I'm not aware of.

Tom23
30 Aug 2009, 11:59 PM
The following applies to all singleton objects like Ext.Ajax, Ext.Direct, Ex.History, Ext.StoreMgr:

If I understand aright, singletons should not have any Config Options listed, since they never get instantiated by the user. Instead, the parent class's Config Options should be listed as Public Properties (if available).

Animal
31 Aug 2009, 11:35 AM
The parent class's properties will be inherited.

It is usual that config properties become properties of the instantiated class, but this is not a universal rule.

For instance the layout string changes into a Layout class. The items Array becomes a MixedCollection, a Panel's tbar disappears completely and becomes accessible through getTopToolbar.

Properties which are valid to use a mostly documented. In some cases they are not all documented, or it is not clear whether the implementing developer intended that they be exposed as public, so it's not an easy job for the documenter who is not part of the dev team.

xLP
2 Sep 2009, 12:16 PM
Sorry if this is not the proper place...

Doc of Ext.Component, in "stateful", reports that you have to implement a getState method in your implementations.
However, if you look at the "code-doc" (http://www.extjs.com/deploy/dev/docs/source/Component.html#cfg-Ext.Component-stateId => look for "getState :") : the getState function is supposed to be private...

Animal
3 Sep 2009, 12:45 AM
There can be no "provided" getState on the base class Component. It is up to the implementor (you) to provide a getState method which records what the application state of the Component is.

xLP
3 Sep 2009, 12:52 AM
There can be no "provided" getState on the base class Component. It is up to the implementor (you) to provide a getState method which records what the application state of the Component is.

Yes of course. That's why, if it would be Java, you'd declare it as a protected abstract function... NOT a private one... (Again, here, "private" is only a comment so it's not creating any trouble, but it looks weird)

Tom23
3 Sep 2009, 2:22 AM
Technically, there is no such thing as classes in JavaScript. Thus, there is no protected either. getState is a public method that can be replaced by another public method. From a Java point of view, this might seem weird, but that's how JavaScript works.

In ExtJS, the comment private in the source code simply means: "Don't show this in the docs".

This is something you'll have to get used to.

xLP
3 Sep 2009, 2:39 AM
Technically, there is no such thing as classes in JavaScript. Thus, there is no protected either. getState is a public method that can be replaced by another public method. From a Java point of view, this might seem weird, but that's how JavaScript works.

In ExtJS, the comment private in the source code simply means: "Don't show this in the docs".

This is something you'll have to get used to.

I know there's no visibility in JS, thx ;) I just thought those comments were indicating a pseudo-visibility as we were doing in PHP4 with "@protected".
So, this "private" is only for doc, thx for the info...

dolittle
3 Sep 2009, 2:28 PM
The fireEvent method is missing from Ext.util.Observable docs but I do see the comment in the code.

watrboy00
6 Sep 2009, 5:54 PM
FIXED

Ext.Button


toggleHandler : Function
Function called when a Button with enableToggle set to true is clicked. Two arguments are passed:

* button : Ext.Button
this Button object
* state : Boolean
The next state of the Button, true means pressed.

dolittle
7 Sep 2009, 5:36 AM
FIXED

Ext.layout.HBoxLayout


align : String
Controls how the child items of the container are aligned. Acceptable configuration values for this property are:
top : Default
child items are aligned vertically at the LEFT side of the container

LEFT should be top

watrboy00
8 Sep 2009, 1:19 PM
FIXED

Ext.Panel tool config option


handler : Function
Required. The function to call when clicked. Arguments passed are:
event : Ext.EventObject
The click event.
toolEl : Ext.Element
The tool Element.
panel : Ext.Panel
The host Panel
tc : Object
The tool configuration object

It is listed as Ext.Panel and should be Object.

tercero12
9 Sep 2009, 7:17 AM
The function Ext.lib.Event.onAvailable is undocumented.

Animal
9 Sep 2009, 8:02 AM
I don't think the Ext.lib functions are supposed to be public.

Personally, I think they should be. But they are not run through the documentation parser AFAIK.

tercero12
9 Sep 2009, 8:20 AM
I don't think the Ext.lib functions are supposed to be public.

Personally, I think they should be. But they are not run through the documentation parser AFAIK.

Well considering that they've been around since 1.x, I feel pretty safe in using it in my code. I'd just rather it be documented so I feel like I don't have to keep watching it.

Animal
9 Sep 2009, 9:46 AM
Yes, you should be safe. I certainly use Ext.lib.Anim and Ext.lib.Region. They are the basis of Ext, so they should be documented.

JeremyCaney
9 Sep 2009, 10:43 AM
The example for Ext.data.DataProxy still shows api.load vs. api.read in the api config section. This issue has been reported a few times in this thread with regard to other pages; it appears this error occurs in multiple places in the documentation.

Condor
12 Sep 2009, 2:16 AM
The Ext.Panel renderer config option is undocumented (see here (http://www.extjs.com/forum/showthread.php?t=80190)).

Animal
12 Sep 2009, 10:13 PM
I've been meaning to get around to that, but IMNSHO, it's still a bit broken. I've tried to use it in the past and had to add overrides to make it work. I'll revisit the issue when I have some time.

saJoshua
13 Sep 2009, 7:50 AM
Can I get some clarity on this please.

As Starfall says in Post #143:


1. Search for "Toolbar"
2. Click on Toolbar.Button
3. Watch ugly 404...

There is the same behaviour with Toolbar.SplitButton

Mystix says in post #36 that this is technically correct, because of "backwards compatibility".

Is it a bug or intentional? If the former, will this be resolved or is it serving some purpose?

mankz
13 Sep 2009, 12:48 PM
Ext.DomHelper states it has a method "append" though it's not listed...

mjlecomte
13 Sep 2009, 4:40 PM
Can I get some clarity on this please.

As Starfall says in Post #143:

There is the same behaviour with Toolbar.SplitButton

Mystix says in post #36 that this is technically correct, because of "backwards compatibility".

Is it a bug or intentional? If the former, will this be resolved or is it serving some purpose?

The search feature, for all practical purposes, does not work. The search database was built off of Ext 2 and hasn't been updated.

getmandj
14 Sep 2009, 4:32 AM
The renderer property is not listed in the documentation for the panel and it is not listed in the properties for the panel in the source code; however, it is apparently used by the updater in the doAutoLoad function in the source for the panel.

doAutoLoad : function(){
var u = this.body.getUpdater();
if(this.renderer){
u.setRenderer(this.renderer);
}
u.update(Ext.isObject(this.autoLoad) ? this.autoLoad : {url: this.autoLoad});
}

Animal
14 Sep 2009, 4:36 AM
Yes, as mentioned about 5 posts up. I'm planning to address this when ICBA.

Starfall
15 Sep 2009, 10:45 AM
API Home -> Search for "Accordion" -> click on the provided link -> boom (link is invalid).

gurufaction
15 Sep 2009, 7:45 PM
Ext JS 3.2 (Early March 2009) should be March 2010

TaunT
16 Sep 2009, 4:07 AM
Buffer Grid Example (http://www.extjs.com/deploy/dev/examples/grid/buffer.html)

link to BufferView.js (http://www.extjs.com/forum/../deploy/dev/examples/grid/BufferView.js) wrong, valid url http://www.extjs.com/deploy/dev/examples/ux/BufferView.js

arthurakay
16 Sep 2009, 11:33 AM
I think the documentation for the Ext.Editor() constructor is wrong in the 3.0 docs.

The docs say that to create a new Ext.Editor() instance, you only need a config object. In reality, the constructor takes two parameters: an Ext.form.Field object AND the config object.

...right?

(I apologize if this was already listed... I'm not about to look at 20+ pages for this whole thread)

Jack9
16 Sep 2009, 3:02 PM
When you search for it, it appears. When you click on the link, it loads forever. Also, the API for SimpleStore does not appear within the object tree.

VinylFox
16 Sep 2009, 4:24 PM
When you search for it, it appears. When you click on the link, it loads forever. Also, the API for SimpleStore does not appear within the object tree.

SimpleStore was renamed to the more appropriate ArrayStore in 3.x

Seems like the database that powers the search is likely out of date, or possibly its used for both 2.x and 3.x.

Tom23
17 Sep 2009, 10:17 AM
The example code in DragZone (http://www.extjs.com/deploy/dev/docs/?class=Ext.dd.DragZone) is not working.

Should be

draggedRecord: myDataView.getRecord(sourceEl)instead of

draggedRecord: v.getRecord(sourceEl)

woomboom
19 Sep 2009, 9:27 AM
fireEvent for Observable not in docs

mjlecomte
19 Sep 2009, 5:48 PM
fireEvent for Observable not in docs

As far as I can tell it shows up in the local docs, just not the online version for whatever reason.

Animal
19 Sep 2009, 11:46 PM
IIRC, there was a typo in the doc comments.

Deadmeat
20 Sep 2009, 8:08 PM
I did a quick search/scan but couldn't find this...

The docs for Ext.dd.DragDropMgr incorrectly have the default clickTimeThresh as default 1000, instead of the actual value of 350.

I'm assuming this was a deliberate change and the docs just aren't updated.

Any chance I can ask why it's necessary, as in why it's needed at all. Are there situations/browsers where clickPixelThresh isn't enough on it's own? I'm just curious what happens if I set it to some ludicrous value like 1000000.

Animal
20 Sep 2009, 10:06 PM
Fixed it. The two configs do different things.

clickTimeThresh prevents casual clicks from beginning expensive drag operations.

Drag data is gathered on mousedown, and this delays the mousedown handler a little.

dragPixelThresh delays the moving until the mouse has moved a certain number of pixels with the button still down.

arthurakay
22 Sep 2009, 7:17 AM
FIXED

I believe the constructor for Ext.ButtonGroup() is missing from the docs.

Lobos
22 Sep 2009, 1:11 PM
http://www.extjs.com/deploy/dev/docs/?class=Ext.form.ComboBox

shows this code to add for the combobox renderer when used in a grid.


Ext.util.Format.comboRenderer = function(combo){
return function(value){
var record = combo.findRecord(combo.valueField, value);
return record ? record.get(combo.displayField) : combo.valueNotFoundText;
}
}

yet if you already have a value loaded into that cell it will be over writted. I simply updated this line:

return record ? record.get(combo.displayField) : combo.valueNotFoundText;

to return the value:

return record ? record.get(combo.displayField) : value;

instead of combo.valueNotFoundText;

dolittle
23 Sep 2009, 5:57 PM
It should be documented that if you don't use Ext.onReady, Ext.isReady will always be undefined, even if you check it when the page is fully loaded.

If needed, a user can define an empty function for Ext.isReady so Ext.isReady will be updated.

Animal
23 Sep 2009, 10:35 PM
I think that's a bug in Ext really. Well, I don't know. You should use Ext.onReady, but some people might be primitive and use <body onload="startup()"> which would mean the Ext flag is not set.

EventManager.js needs to call initDocReady on startup. Right now, that's only called when the first onDocumentReady call is made.

I'll create a report for this.

theo
28 Sep 2009, 4:35 AM
FIXED

Small typo in the Ext.urlAppend method docs

* Appends content to the query string of a URL, which handles logic for whether to place
* a question mark or ampersand.
* @param {String} url The url to append to.
* @@param {String} s The content to append to the url. <-- Should be @param

Foggy
28 Sep 2009, 8:52 PM
If you do a search with "Adapter" in ExtJs 3.0.0 docs, Ext.menu.Adapter will still appear.

Edit: sorry for wrong posting...

Lobos
30 Sep 2009, 5:19 PM
http://www.extjs.com/deploy/dev/docs/source/Combo.html#cfg-Ext.form.ComboBox-store

states the following:


# 2-dimensional array : (e.g., [['f','Foo'],['b','Bar']])

* For a multi-dimensional array, the value in index 0 of each item will be assumed to be the combo
* {@link #valueField}, while the value at index 1 is assumed to be the combo {@link #displayField}.
*

it should be noted that if you don't specify the hiddenName as the same as name the above will not work as expected, ie it is stated that the 0 of each item will be made the value, if hiddenName is not set this will not be the case the 1 of each item will be made the value.

Maybe mention of this as it could help someone out.

Thanks

Eric24
30 Sep 2009, 7:08 PM
The 3.x docs still say that enableTabScroll only works with tabPosition:'top', but it appears to work just fine with tabPosition:'bottom'. Is this a known/supported feature or did I just get lucky?

Animal
30 Sep 2009, 9:44 PM
http://www.extjs.com/deploy/dev/docs/source/Combo.html#cfg-Ext.form.ComboBox-store

states the following:



it should be noted that if you don't specify the hiddenName as the same as name the above will not work as expected, ie it is stated that the 0 of each item will be made the value, if hiddenName is not set this will not be the case the 1 of each item will be made the value.

Maybe mention of this as it could help someone out.

Thanks

No, the valueField is still element 1 of each row.

But obviously it won't get submitted without a hidden field to submit it through.

You SEE the input field with text in it? That's named by the name config. So WYSIWYG.

supp
1 Oct 2009, 3:06 AM
Find out that my code was broken using 'beforeshow' event when i call showAt() in ExtJS 3.0.0
For example
var m = new Ext.menu.Menu({
listeners:{
beforeshow: function() {
alert(1)
}
}
});

....

m.showAt( ... );

Suppose it will help to resolve problem if return missing code to showAt function in ext-all.js
showAt: function(c, b, a){
this.parentMenu = b;
if (!this.el) {
this.render()
}
if(a!==false){
this.fireEvent("beforeshow",this);
c=this.el.adjustForConstraints(c)
}
this.el.setXY(c);
if (this.enableScrolling) {
this.constrainScroll(c[1])
}
this.el.show();
Ext.menu.Menu.superclass.onShow.call(this);
if (Ext.isIE) {
this.layout.doAutoSize();
if (!Ext.isIE8) {
this.el.repaint()
}
}
this.hidden = false;
this.focus();
this.fireEvent("show", this)
}

Animal
1 Oct 2009, 1:40 PM
Is that a help request or a report of bad docs? I don't understand a word of it!

TheBerliner
6 Oct 2009, 8:27 AM
For alle details, please refer to this thread. (http://www.extjs.com/forum/showthread.php?t=81922)

It must generally be considered a bug if important facts or behaviour are missing in the documentation. This is undoubtedly the case here.

evant
6 Oct 2009, 8:28 AM
As I said in that thread, the documentation is already updated to indicate this.

TheBerliner
6 Oct 2009, 8:38 AM
As I said in that thread, the documentation is already updated to indicate this.
Pardon, I missed that.

I was just starting a series of "contributions" to help (or push?) you (in plural) to minimize the greatest Ext weakness. More to follow soon...

TheBerliner
6 Oct 2009, 8:44 AM
I encountered the following behaviour and it is my impression (= not absolutely sure) that at least one important behaviour is missing in the documentation:

I was trying to first equip a hidden grid, which had not yet been shown, with a new store and column model. This was stopped in the second statement, because the grid's view was null.

It seems that the view is only created during the first presentation of the grid (or by some other command?). For the reconfigure() this means that it may only be used after the grid was presented at least once.

There must be a hint and warning in the documentation how to handle this and ideally one or a few examples showing the sequence of commands required by Ext JS. It would be most helpful if such rather complex statements were accompanied by several examples.

It is not acceptable that one must find this out by "trial or error" and it cannot be expected that every user fully understands the Ext source code and this cannot replace a documentation anyway.

I could circumvent this problem by first setting the grid active but it took a lot of wasted time to find this out.

TheBerliner
6 Oct 2009, 9:22 AM
I am about to equip a couple of menu items with functionality. Unfortunately, most of the examples that I found were just fakes with merely some texts and therefore not helpful at all.

The documenation is not giving any information about when to use href and hrefTarget and when better to use handlers and it also says nothing about when to use both.

The doc on href is insofar erraneous as it does not tell, neither by words not by example, what kind of argument values are expected. I added a full valid HTML url as an argument, together with "_blank" as hrefTarget, but this was not executed properly as one could expect from the HTML-compliant arguments. Instead the url argument value was added to the base url, which is definitely wrong.

It is therefore also missing what Ext does with the "attribute" and especially what it exepcts. Missing is also any syntax example of the arguments to make clear what kind of arguments Ext expects.

This causes again the situation that the user is enforced to search for examples and to waste time by "trial and error" merely because the most important requirements for a proper usage are not listed. As this is rather the rule than the exception, this situation is extremely annoying.

Please note that:
1) The one tutorial on menu.item does not at all discuss or mention href, thus it's most basic and rather worthless.
2) There is no link from the documentation to the related tutorial (this applies generally, not only to this class).

extplainpls
7 Oct 2009, 11:27 AM
[/URL][URL="http://www.extjs.com/forum/../deploy/dev/docs/source/Record.html#prop-Ext.data.Record-phantom"]phantom (http://www.extjs.com/forum/../deploy/dev/docs/source/Record.html#prop-Ext.data.Record-phantom) : Booleanfalse when the record does not yet exist in a server-side database (see markDirty (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.Record.html#Ext.data.Record-markDirty)). Any record which has a real database pk set as its id property is NOT a phantom -- it's real.

That says phantom:false if NOT in DB. But logic commands that it is truely a phantom if it's not in the DB ... I think.

Jul
8 Oct 2009, 8:36 AM
Class Ext.TabPanel

I would like to suggest adding a paragraph explaining the interaction of a TabPanel and an Accordion layout. Since both the TabPanel and the accordion layout use the header, you end up with a collision and strange effects if you don't wrap the TabPanel in it's own panel.

See this post for more info:
http://www.extjs.com/forum/showthread.php?t=82339

aufgang
8 Oct 2009, 12:31 PM
Documentation for Ext.KeyNav.defaultEventAction should read:


The method to call on the Ext.EventObject after this KeyNav intercepts a key. Valid values are 'stopEvent', 'preventDefault' and 'stopPropagation' (defaults to 'stopEvent')

It currently reads:


The method to call on the Ext.EventObject after this KeyNav intercepts a key. Valid values are Ext.EventObject.stopEvent, Ext.EventObject.preventDefault and Ext.EventObject.stopPropagation (defaults to 'stopEvent')


Cheers!

hlship
8 Oct 2009, 4:49 PM
I believe the JsonReader documentation is incorrect, w.r.t. to the first example:

var myReader = new Ext.data.JsonReader({
// metadata configuration options:
idProperty (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.JsonReader.html#Ext.data.JsonReader-idProperty): 'id'
root (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.JsonReader.html#Ext.data.JsonReader-root): 'rows',
totalProperty (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.JsonReader.html#Ext.data.JsonReader-totalProperty): 'results',

// the fields config option will internally create an Ext.data.Record (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.Record.html)
// constructor that provides mapping for reading the record data objects
fields (http://www.extjs.com/forum/../deploy/dev/docs/output/Ext.data.DataReader.html#Ext.data.DataReader-fields): [
// map Record's 'firstname' field to data object's key of same name
{name: 'name'},
// map Record's 'job' field to data object's 'occupation' key
{name: 'job', mapping: 'occupation'}
]
});

The comment in bold talks about a 'firstname' field, but there's no other reference
in the other example code to 'firstname', just 'name'.

TheBerliner
11 Oct 2009, 10:24 AM
Panel -> height
says: "To express this dimension as a percentage or offset see Ext.Component.anchor."

This is wrong and fooling the user, because there is no such information in the doc on Ext.Component.anchor. The terms percent or percentage are not even used on this page and offset is used only once in another context.

There are a couple of similar wrong links but I did not note them, because I have a job to do, which is made much more difficult and time-consuming by such errors and by the general state of the documentation.

Eric24
11 Oct 2009, 9:35 PM
1) StatusBar is missing from the docs tree.
2) Searching for StatusBar comes up with a result, but clicking on it opens a tab that never loads.

Condor
12 Oct 2009, 4:08 AM
Format functions in templates are not fully documented (see one of my earlier posts in this thread).

But I just learned that format functions are even more complex then I thought.

1. Local format functions can't have parameters (any parameters get ignored). They always get passed the value and the current object.

Example:

var tpl = new Ext.XTemplate(
'{value:this.toFixed}',
{
toFixed: function(value, values){
return value.toFixed(values.precision);
}
}
);
console.log(tpl.apply({value: 1.234, precision: 2}));

2. Parameters for Ext.util.Format functions are treated as string by Ext.Template (whether they are quoted or not), but Ext.XTemplate allows specifying any valid javascript.

Example:

Ext.util.Format.toFixed = function(value, precision){
return value.toFixed(precision);
};
var tpl = new Ext.XTemplate(
'{value:toFixed(values.precision)}'
);
console.log(tpl.apply({value: 1.234, precision: 2}));
(can't do this with Ext.Template)