Subversion Repositories JSX

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
234 2011-12-12 15:51:01 PointedEars /trunk/
* dom.js
  - Added jsx.dom.isDescendantOfOrSelf()

* dom/css.js
  - jsx.dom.css.getComputedStyle():
    + Caches document.defaultView
    + Throws exception if document.defaultView is available,
      but getPropertyValue() is unavailable

* dom/events.js
  - jsx.dom.addEventListener() uses jsx.object.isNativeMethod();
    thanks to Esailija @ StackOverflow.com

* dom/timeout.js
  - Added missing jsx.dom.timeout namespace definition
  - Renamed jsx.dom.runLater() to jsx.dom.timeout.runAsync()

* dom/widgets.js
  - jsx.dom.widgets.Widget():
    + Added comment, clarified variable names
  - jsx.dom.widgets.Widget.prototype.update() updates
    style and is called by inheriting types
  - jsx.dom.widgets.SpinnerInput():
    + Sets width of HTML5-like buttons
    + Fixed: Double decrement/increment with HTML5
    + Fixed: Bogus e.keyIdentifier switch-case fall-through

* object.js
  - Split isMethod() into isHostMethod() and isNativeMethod(),
    keeping aliases (see dom/events.js)

* test/dom/countdown/index.php
  - Added `input' element width to test
    jsx.dom.widgets.Widget.prototype.update()

* httprequest.html
  - Modified to test jsx.xpath.createFullNSResolver()

* xpath.js
  - Now strict mode code
  - jsx.xpath.evaluate()
    + Support implicit default namespace with MSXML
    + Fixed "implied global": res
  - Added jsx.xpath.createFullNSResolver() to use
    new jsx.xpath.collectNamespaces(); both throw
    new jsx.xpath.InvalidNodeError

* test/test.xml.php
  - Added from temporary directory
 
233 2011-11-10 12:01:00 PointedEars /trunk/dom/
* events.js
  - jsx.dom.createEventListener(): Fixed: `this' in listener always refers to event target
 
232 2011-11-01 04:08:24 PointedEars /trunk/
* array.js
  - Moved to jsx.array namespace, renamed all methods
  - jsx.array.toUpperCase() (formerly, array_toUpperCase()):
    Fixed wrong changeCase() call
  - Moved global splice() to jsx.array.splice()  
  - Fixed JSdoc

* builder.php, test/builder-test.html
  - Added PHPDoc; now under GPL v3
  - Reverted file_get_contents() change to support PHP-generated resources
  - Speed optimizations
  - Added test case

* dom/css/css/compat.js
  - Added compatibility layer

* dom/timeout.js
  - Added jsx.dom.timeout.Timeout and jsx.dom.timeout.TimeoutList
  - jsx.dom.runLater() uses jsx.dom.timeout.Timeout

* dom/widgets.js, test/dom/countdown/index.php
  - Moved widgets to jsx.dom.widgets namespace, renamed .InputWidget to .Input
  - Added support for explicit getters and setters
  - Split applyProperties() into init() and update() 
  - Added methods and parent argument from windowed widgets (widgets2.js)
  - Added Button widget
  - SpinnerInput rewrite to use HTML5 if possible
  - Fixed handleKeypress() to use namespaced methods
  - Added/fixed JSdoc
  - Updated test case

* dom/widgets2.js
  - Added JSdoc

* map.js
  - Added JSdoc; now under GPL v3
  - Moved to jsx.map namespace
  - Fixed bogus exception references
  - putAll() and clone() are prototype methods now
  - Exceptions: Replaced explicit super references with implicit ones (DRY) 

* object.js
  - jsx.dmsg() appends stack trace if type is not "info"
  - Added jsx.object.hasPropertyValue()
  - jsx.object.getFunctionName(): Return empty string for `null' or `undefined'
  - jsx.getStackTrace():
    + Disabled bogus stack trace mangling from jsUnit
    + Speed optimization
    + No need for strict inequality with definitive strings on either side
  - jsx.object.getClass():
    + Always use native toString()
    + Removed support for proprietary matches
  - Function.prototype.extend():
    + Moved `this' alias declaration to top
    + Warns if `undefined' is passed for constructor (`null' means intentional)
  - Added Array.prototype.indexOf() emulation

* python.js
  - Added/fixed JSdoc; now under GPL v3
  - Fixed SVN keywords 
  - jsx.python.set() uses slice() if available
  - jsx.python.extend() uses `for' instead of for-in iteration (order matters)

* regexp.js
  - Added support for PCRE `x' modifier

* string.js
  - Added String.prototype.format = jsx.string.format as experimental
    ECMAScript implementation of Python 3.0's default string.format();
    keeping jsx.string.sprintf()

* test/test.js
  - Added JSdoc
 
231 2011-10-05 16:09:27 PointedEars /trunk/
Added experimental widgets with test case
 
230 2011-10-01 19:00:32 PointedEars /trunk/
* .project, .buildpath
  - Fixed project for JSDT and PDT

* ani.js
  - Renamed framerate to frameRate
  - Force frame rate and number of frames to be integer
  - Clarified variable names

* builder.php
  - Added PHPdoc for $_typeMap
  - Added debug and verbose mode
  - Removed unnecessary `else' statements
  - Refined output comments
  
* dom/css.js
  - Optimized jsx.dom.hoverImg()
  - Fixed jsx.dom.css.SelectorList inheritance
  - Fixed JSdoc for jsx.dom.css.SelectorList.prototype.get() return

* dom/events.js
  - jsx.dom.addEventListener():
    + Returns null on failure (previously: false)
    + Handles exceptions of native addEventListener (touch event support)
  - jsx.dom.createEventListener():
    + Added clientX, clientY, offsetX, offsetY properties to wrapped event object
    + Removed unnecessary `else' statements
    + Fixed: `this' in created listener does not refer to event target
  
* object.js
  - Removed obsolete comments
  - jsx.object.defineProperties(): Clarified variable names
  - jsx.tryThis(): Abandon inefficient eval-always approach for now
    (TODO: backwards compatibility of try..catch)
  - jsx.throwThis(): Fixed string escaping
  - Clarified variable names
  - extend() calls in seperate statements (works better with JSDT)

* python.js
  - Fixed JSdoc
  - Added jsx.python.extend()

* regexp.js
  - Ignores exceptions thrown by jsx.importFrom(), throws jsx.regexp.UCDLoadError later

* search.js
  - Replaced deprecated method calls

* style.css
  - Removed selectors specific to the es-matrix

* test/ani.html
  - Removed unnecessary script references

* test/test.js
  - Prints stack trace of exception-throwing test case

* test/regexp.html
  - Added test case
 
229 2011-09-08 09:39:52 PointedEars /trunk/
* builder.php
  - Fixed syntax error
 
228 2011-08-26 23:00:13 PointedEars /trunk/
* builder.php (ResourceBuilder)
  - Added lcfirst() emulation for PHP < 5.3
  - Fixed stack overflow with non-greedy PCRE
  - Added prefix support
  - Default "text/javascript" set by initialization
  - file_get_contents() instead of buffered include
 
227 2011-08-18 11:20:51 PointedEars /trunk/
Added experimental ResourceBuilder
 
226 2011-07-14 10:16:30 PointedEars /trunk/test/
* test/ani.html
  - Added ani.js test case
 
225 2011-07-14 10:15:03 PointedEars /trunk/
* object.js
  - isMethod(): Fixed: null and undefined property names should return false
 
224 2011-07-13 22:23:02 PointedEars /trunk/
* dom/css/color.js
  - Color.prototype.set():
    + Renamed argument
    + Fixed opacity initialization
  - Color.prototype._setComponent():
    + Added percent support
    + Fixed parseInt()
  - Color.prototype.setOpacity(): Fixed to comply with CSS (floats)
  - Color.prototype.inc(): Fixed switch-case fall-through
  - Added RGBA support: Color.prototype.setRGB(), Color.prototype.toRGBAString();
    Color.prototype.toString() now returns the same as Color.prototype.toRGBAString(),
    keeping Color.prototype.toRGBString()
  - Renamed Color.prototype.HSVtoRGB() to Color.prototype.hsv2rgb()
  - Clarified identifiers
  
* object.js
  - jsx.throwThis(): Stack trace now follows error message
  - jsx.object.PropertyError(): Removed single quotes from message
    (does not work well with inheriting types)

* regexp.js
  - jsx.regexp.RegExp():
    + Removed replaces that triggered unnecessary UCD (XHR) requirement
    + Throws special jsx.regexp.UnknownPropertyClassError if property class
      reference cannot be resolved
    + Supports named subpatterns with `(?<name>), `(?'name')' (Perl),
      or `?P<name>' (Python) as specified in pcrepattern(3) 
    + Renamed `subpatterns' property to `groups' (concise and Python-friendly)
  - jsx.regexp.RegExp.exec() und jsx.regexp.String.prototype.match()
    define `groups' property (Object only) to keep matches namespace clean
    (also Python-friendly)
 
223 2011-07-12 10:02:06 PointedEars /trunk/
* ani.js
  - Fixed namespace references
  
* dom/css.js
  - jsx.dom.css.getElemByClassName(): whitespace definition by closure
  
* dom/css/color.js
  - Fixed optional opacity
  - Prepared RGBA support
  
* object.js
  - jsx.object.isInstanceOf(): Disabled error-prone [[Class]]-based fallback
 
222 2011-07-12 09:54:13 PointedEars /trunk/
* collection.js
  - Fixed braces
  
* object.js
  - removed unnecessary `else'
  
* regexp.js
  - Clarified comment
 
221 2011-07-08 13:57:25 PointedEars /trunk/
* types.js
  - bracketsToDots() supports double-quotes
 
220 2011-06-29 21:39:35 PointedEars /trunk/
* dom/css.js
  - Fixed invalid getElemByClassName() definition
  
* object.js
  - jsx.Error(): Fixed uninitialized variable warning
  
* regexp.js
  - jsx.regexp.RegExp(): Fixed XHR refactoring  bug
  - Added jsx.regexp.String.prototype.toString()/.valueOf()
  - Fixed JSdoc
  
* string.js
  - Removed bogus comment (already refactored)
 
219 2011-06-23 17:01:21 PointedEars /trunk/
* collection.js
  - Namespaced all symbols
    (TODO: Clarify namespace of all JSX constructors)
  
* dom.js
  - Namespace clean-up
  - Split into specialized modules
  - Moved specialized methods to existing modules
  - Added SVN keywords

* dom/css.js
  - Fixed bad type references
  - Fixed JSdoc

* dom/css/color.js
  - Added explicit namespace declarations

* object.js
  - jsx.dmsg(): Fixed return value for Opera

* regexp.js
  - Fixed dynamic UCD loading, with jsx.importFrom()
  - Added support for named subpatterns (like PCRE)
  - Clean-up

* string.js
  - Added experimental jsx.string.sscanf() implementation,
    shares format specification with jsx.string.sprintf()
    (some aliases removed)
 
218 2011-05-29 23:42:46 PointedEars /trunk/
"Long overdue refactoring"

* array.js
  - Saved slice() code (still namespace-unaware)
  
* css.js
  - Moved to dom/
  
* dhtml.js
  - Renamed to dom.js (no namespace clean-up yet)
  
* math.js
  - Reduced to basics; specifics now handled by several modules in math/
    
* object.js
  - object.js is more or less required, so simplified initialization
  - Introduces several backwards-incompatible changes:
    + Removed deprecated properties (they are outside the target namespace)
    + Removed all augmentations of the global object except `jsx';
      imports (var foo = jsx.object.foo) can be/are used if needed,
      methods are now import-safe (no in-library `this' references)
  - jsx.object.isInstanceOf(): Also supports inference through [[Class]]
  - Added jsx.object.getClass()
  - Added jsx._import() as a convenience method to import into the global
    namespace
  - Added jsx.importFrom() to import scripts using synchronous ES5-safe XHR
    with jsx.net.http.Request (obsoletes dom.js:loadScript()?)   
  - Methods now call jsx.warn() directly (better performance)
  - Clean-up:
    + Renamed method arguments and some variables to be more self-explanatory
    + Removed unnecessary else statements
    + Fixed JSdoc

* python.js
  - Added namespace-safe (jsx.python) implementations of several key
    Python functions (list, dict, set, zip); test case in test/python.php
    
* types.js
  - Fixed JSdoc

* doc/
  - Improved documentation (<code>…</code> etc.)

* dom/
  - Added timeout.js with jsx.dom.runLater() (uses window.setTimeout())

* dom/css.js
  - Moved from root to here, moved methods to css/color.js

* dom/css/
  - Added color.js with color-related methods from former css.js
  
* math/
  - Added package consisting of modules built from former math.js sections

* test/debug.js
  - Uses namespaced method calls
  - Moved assertion functions to test.js
  - synhl(): Uses greedy version of multi-line comment RegExp
  
* test/object.html
  - JSunit incompatible with Fx 4, rewritten tests using jsx.test.runner
  
* test/test.js
  - Experimental testing framework that uses the error console for output
 
217 2011-04-05 17:37:02 PointedEars /trunk/
* object.js
  - Function.prototype.construct(): Fixed example in JSdoc

* General:
  - Replaced inefficient Array.prototype.join("") with concatenation
 
216 2011-03-29 10:45:38 PointedEars /trunk/
Several bugfixes and code clean-up
 
215 2011-03-23 22:05:18 PointedEars /trunk/doc/
Removed doc/jsx/object/ in favor of doc/jsx/object.html
 

Show All