Scott Penrose


Scott is an expert software developer with over 30 years experience, specialising in education, automation and remote data.

The ExtJS Library -

Ext Extensions

My Own

I have chosen to store all my extensions on

However, I have chosen to publish my extensions on

The Extensions

NOTE: Repository name does not always match class name...

  • ext-extend-treenode-icon
    • Ability to set a tree node icon or icon class programmatically
    • TODO - ux link
  • ext-extendedformlayout
    • ExtJS 2.0 Extension - Ext.layout.ExtendedFormLayout - to allow comments on the right of fields ext-form-textarea-chars
    • TODO - ux link
  • ext-form-textarea-chars
    • ExtJS 2.0 Extension - Ext.form.TextareaChars - display the remaining characters until Max
    • TODO - ux link
  • Multi input (simple)
  • Month/Year
  • Percentage entry


Some issues I have we can improve with Ext.

Feedback on missing information

"root" is a required input to a Ext.tree.TreePanel - but if you don't add it, Ext throws an error deep in the Ext library - very hard to debug. Why can't Ext just tell us that it is missing or required?

One answer is that it would add a lot to the size, but we have the answer there by adding Debug entries. It could even be added as a separate library that extends the original classes with config checks - either by a hook, or overwriting initComponent or similar.

Perl Library

This project is currently a little stale...

See ExtJS Perl Library

My random notes on implementations with Perl.


So you want to get some data back dynamically. The choices are:

  • Status code of HTTP request
  • Presentation / Browser data such as HTML, an Image or similar
  • XML (pretty much any schema)
  • JSON

So which one?


(see also CDN)

There are two solutions currently for CDN 3rd party hosted cache of these files:

  • Javascript