------ SEKATI API CHANGELOG ------ API UPDATE v3.0.7.1 - "Hedorah" * Updated LogTarget to fix critical Logger issue: now works in Firebug, Chrome, Safari Javascript Browser Consoles! * Removed critical crash issue in sekati.profiler.PerformanceMonitorGraph which lead to player crashes. * Updated Unit Tests (100% pass on FlexSDK 4.5.1) * Something is broken with FlexSDK 4.5.1 & last release changes: reverted import cleanup (which helps but doesnt resolve). API UPDATE v3.0.7.0 - "Hedorah" * Now Flashplayer 11 compatible. * Resolved CoreSprite.removeChildren conflict with FlexSDK >=4.5.1 (where Adobe added its own removeChildren method to Sprite): http://code.google.com/p/sekati/issues/detail?id=95 - Resolved comment issue: http://code.google.com/p/sekati/issues/detail?id=94 - Cleaned up bad imports: - StageDisplay - ApplicationLoader - MathBase - NetBase - FLVPlayer - MP3Player - Added new functions to sekati.js JavaScript companion Library: - sekati.util.baseRef() - sekati.util.getTitle() - sekati.util.setTitle() - sekati.util.forward() - sekati.util.back() - sekati.util.getHashParam() - sekati.util.getHashAllParams() - sekati.util.cleanArray(); - Added CoreSpriteTest to address incorrect bug report http://code.google.com/p/sekati/issues/detail?id=93 API UPDATE v3.0.6.2 - "Gamera" * Fixed sekati.ui.Image event type mismatch bug @ http://code.google.com/p/sekati/issues/detail?id=91 * Fixed sekati.ui.Keyboard key uint duplicate Keyboard.LEFT @ http://code.google.com/p/sekati/issues/detail?id=92 API UPDATE v3.0.6.1 - "Gamera" * Updated Sekati swfmouse.js to v2.2.0 to support swfobject 2.2 (maintins swfIN and older swfobject compatability!) * Updated sekati.js support * Integrated SWFFit JS library for browser scroll size support * Deprecated the use of swfIN in trade of SWFObject v2.2 (now exclusively) * Upated SEKATI API APPLICATION TEMPLATE // v2.0.0 - AlignUtil.scaleToFit code rewrite to support resize better: http://code.google.com/p/sekati/issues/detail?id=86 - Added DateUtil: toRelative, dateDiffSeconds, dateDiffMinutes, dateDiffDays - Added DisplayUtil.reparentDisplayObject - Added StringValidator.isUSState & StringValidator.isValidDate * Refactored StringValidator.validatePhone to StringValidator.isValidatePhone - Fixed AbstractMediaPlayer bug: http://code.google.com/p/sekati/issues/detail?id=89 - Insured KeyManager is initialized via ContextMenuManager (bug!) - Added m4v support to FileTypeValidator.isVideo. API UPDATE v3.0.6.0 - "Gamera" * Fixed FP10 Fullscreen Key handler bug: http://code.google.com/p/sekati/issues/detail?id=83 in ContextMenuManager & KeyManager. - Updated swfobject v2.2 - Removed verbose event Logger messages from StageDisplay * added pollDevice method to IDevice interface. * Added constructor argument to auto-poll CameraDevice & MicrophoneDevice, and made pollDevices public. - Removed annoying activityHandler Logger message from CameraDevice & MicrophoneDevice - Fixed index.html template typo http:// - Fixed typos and copyright in config.xml - Added Billions support to NumberConverter.toWord() - Added SWFLoader.contentLoaderInfo property - NumberConverter.toWord - "and" is now lowercase. - Fixed typo in PersistentXMLSocket - NumberConverter.toWord: added fix for "Zero" and Unit Test - GradientRect: removed default constructor class references due to 2+ year old ridiculous MXMLC bug: http://bugs.adobe.com/jira/browse/ASC-2231 - added Scroll fix. - added counter to text effects * removed superflous "ands" from NumberConverter.toWord * added option for uppercase to RandomTypo string and shuffle charsets (upper, lower, uppper+special) * Removed force toUpperCase in RandomTypo * added "swf" to deploy/.htaccess anti-gzip compression as this can cause problems in the lastest flashplayer! API UPDATE v3.0.5.9 - "Gigan" - Redesigned more compact PerformanceMonitorGraph. - Added NumberConverterTest unit test. - Updated copyright dates on core API classes. * FLV deblocking is now "auto" by default. - Added sekati.net.PersistentXMLSocket - Added sekati.converters.NumberConverter - Added AlignUtil.scaleProportion method. - Added deblocking constants to FLV class. - Added getter/setters for smoothing, deblocking, videoWidth, videoHeight in FLV class. * Changed default smoothing to false in FLV class. - Added new MediaEvent support to FLV and FLVPlayer classes. - Added new MediaEvents: FILE_STRUCTURE_INVALID & NO_SUPPORTED_TRACK_FOUND - Fixed GradientRect documentation example. API UPDATE v3.0.5.8 - "Gigan" * Added proper air launch profile and cleaned up deploy. * Added icons/air descriptor to lib/air. * Removed deploy/sekati_air-app.xml (moved to lib/air). * Removed SekatiAirMain.as & sekati_air.swf (now uses SekatiMain example file in air application demo). * Removed deploy/sekati_air-app.xml (moved to lib/air). * Updated Document.initMovieProperties() with safety try,catch to allow Document to be used directly for Air applications. * Removed DocumentAir: no longer required: document may be used directly for Air applications! * Updated SekatiPreloader example. * Removed sekati.js references from all HTML & PHP templates: no longer required for isReady status: now a pure utility library. * Updated BrowserAddress to use ExternalBase safe calls. * Updated Urchin to use ExternalBase safe calls. * Updated LogTarget to use ExternalBase safe calls. * Refactored ExternalMouseWheel to use ExternalBase safe calls. - Added ExternalTest launch profile. * Added target-player compiler arguments to main launch profiles. * Refactored ExternalBase to be more user-friendly in errors produced when out-of-browser. * Refactored ExternalBase.anonymousCall to safeWrappedCall * Rewrapped all ExternalInterface calls as safeCalls. - Added ExternalBase.safeCall & safeCallAsFunction. * Added error catching/handling in ExternalBase for flexibility in Air framework implementation. - Updated README.txt - Added SortTest.as / launch & removed SortTest.fla. - Fixed tests/visual/index.php & removed deprecated function calls. - Added build/SEKATI_API-AirApp.launch to generate API test air app. - added lib/air with icons & descriptors. * Removed deploy/sekati_air.app.xml * Refactored build/SEKATI_API-Air.launch to build/SEKATI_API-AirSWF.launch to generate the API Air app SWF. API UPDATE v3.0.5.7 - "Gigan" * Changed MP3 & FLV classes so isPlaying returns false if the media is paused. - Fixed TypeEnforcer.enforceAbstract issue encounted in loaded swf's due to applicationDomain & the TypeEnforcers getDefinitionByName. - Fixed incorrect example in XMLLoader - Added sekati.draw.GradientRect and updated DrawTest. - Added sekati.views package (AbstractView, AbstractLiquidView, AbstractInteractiveView) with a configUI() helper methods to encourage JIT performance gains for view controllers. - Added "Player Info..." item to ContextMenuManager @see http://code.google.com/p/sekati/issues/detail?id=79 - Added TypeValidator.isPassedByValue & TypeValidator.isPassedByReference - Fixed TypeValidator.isPrimative ommission: now checks int, uint. - Fixed TypeValidator.strictIs bug: was not a static method. - Fixed minor documentation bug in Bootstrap. - Added tests/build/XMLLoaderText.launch profile to test bug report: http://groups.google.com/group/sekati-api/browse_thread/thread/34e2261edd581f28 API UPDATE v3.0.5.6 - "Gigan" - Fixed non-critical bug in core.Bootstrap which reports incorrect bootstage fatal error name. - Added MP3.context access to SoundLoaderContext @see http://code.google.com/p/sekati/issues/detail?id=80 - Fixed swfmouse.js to function with Safari 4.x - Updated swfIN to v2.3.1 - Updated playerProductInstall.swf ExpressInstaller. API UPDATE v3.0.5.5 - "Gigan" - Updated visual test with PerformanceMonitor * Added 'allowFuzzyMatch' optional argument to ContextualMenu.getItemId() - default: false for backwards compatibility. * Removed FPSProfiler. * Removed MemoryProfiler. - Added PerformanceGraphUI. * Replaced PerformanceMonitor with a graphing UI and Singleton class for better tracking & ContextMenuManager integration. * Refactored AbstractTestApplication to function with new monitor and other API functionality. - Revised PerformanceMonitorTest. - Fixed ContextMenuManager to function with the new PerformanceMonitor class. - Fixed Bootstrap to function with the new PerformanceMonitor class. - Fixed minor issue with ContextMenuManager to allow "dumb" or headless API apps to utilize the ContextMenuManager. - Removed 'td' from body, html CSS tag, and 100% height, margin:0, in css/style.css to remove default bordering and scrollbar. API UPDATE v3.0.5.4 - "Gigan" - Updated tweener.swc to 1.33.74 - Zeh, on request, reversed the logic on tween overwrites to be backwards compatible @see http://code.google.com/p/tweener/wiki/Changelog - Added DateUtil.toOrdinal() - http://code.google.com/p/sekati/issues/detail?id=77 - Fixed bug in DateUtil.padTime() - http://code.google.com/p/sekati/issues/detail?id=76 - Changed CoreBitmapData default fill color to transparent white: 0xffff00 to better support RotationPlane. API UPDATE v3.0.5.3 - "Gigan" - Added sekati.display.CoreShape. * Removed TextUtil.ellipseLine(). - Added TextUtil.truncateText(). - Added TextUtil.truncateMultilineText(). - Added TextUtil.getUsableFonts(); - Added TextUtil.setTextFont(). - Added TextUtil.setTextColor(). - Added TextUtil.setTextLetterSpacing(). * Refactored TextUtil.setSpacesWidth() -> setTextSpaceWidth(). * Refactored TextUtil.setLeading() -> setTextLeading(). * Refactored TextUtil.create() -> createField(). * Refactored TextUtil.reveal() -> revealFields(). * Refactored TextUtil.hide() -> hideFields(). - Added CSS1 explanation to asdoc in App.css. - Added TextUtil.formatFields() * Removed TextUtil.style() -> @see styleFields(). * Removed TextUtil.clear() -> @see clearFields(). * Refactored TextUtil.show() to TextUtil.setStyledText() - Added Document logger message noting API build info. * Fixed typo in RotationPlane.updateMaterials() - was redraw() API UPDATE v3.0.5.2 - "Gigan" - Added updateMaterials() updateMaterial0() & updateMaterial1() to RotationPlane. - Increased BrowserManager polling time to 1500ms. - Updated deploy/index.html copyright meta tag. - Refactored BrowserManager properties: path, pathArray. - Removed BrowserManager.$.go() & BrowserAddress.go(); - Added BrowserManagerTest - Added path & previousPath to BrowserEvent. - BrowserAddress: added back() forward() & go(delta). - Updated comments in sekati.external.BrowserAddress. * Deprecated BrowserAddress for the full in-line solution provided by BrowserManager. * Refactored sekati.core.Bootstrap to enable the BrowserManager when true. * Refactored config.xml to instantiate the BrowserManager's polling monitor. - Added sekati.managers.BrowserManager which offers deeplink browser back/forward button functionality via an ExternalInterface calls & polls - Added sekati.events.BrowserEvent - Added sekati.ui.TextButton - Added DateUtil.isSameDay() - deploy/swfmouse.js version bumped to 1.1.2: added try/catch to suppress firebug errors (breaks page scroll so this is currently commented out for later review) * RotationPlane refactored: http://code.google.com/p/sekati/issues/detail?id=70 & http://code.google.com/p/sekati/issues/detail?id=73 - Added TextUtilTest visual test & build file, removed TextUtilTest.fla. // NOT DONE - Fixed Issue #72 in TextUtil.ellipseLine - http://code.google.com/p/sekati/issues/detail?id=72 - Fixed Doc Issue #71 in IStack - http://code.google.com/p/sekati/issues/detail?id=71 - Fixed Issue #66 in TypedArray - http://code.google.com/p/sekati/issues/detail?id=66 - Modified TypedArrayTest - BoolConverter bugfix: "undefined" (String) now returns false. - Refactored CoreBitmapTest to CoreBitmapDataTest - Added deploy/api-logo.png for tests. API UPDATE v3.0.5.1 - "Gigan" - Added SEKATI_API-Air.launch profile - Added SekatiAirMain example implementation. - Added DocumentAir (Air compatible API Document) - Added PreloaderTest - Added sekati.ui.CirclePreloader - Added sekati.ui.AbstractPreloader - Refactored sekati.ui.controls.AbstractCalendar to sekati.ui.AbstractCalendar (eliminating the controls sub-package). - Refactored RotationPlane.rotationX & rotationY to rotateX & rotateY to prevent name collision with FP10 DisplayObject (and avoid complex namespace configuration) - altered sekati.core.sekati namespace for future use - config.xml comment changes for clarity - AlignUtil.flip() bug fix. - RotationPlane bugfixes - Added build/SEKATI_API-ASDoc.launch alternative to Ant buildfile. - Added sekati.ui.RotationPlane (refactored from PJ Ahlberg branch work): should be refactored to add material swapping. - Added sekati.utils.BitmapTransform (refactored from PJ Ahlberg branch work): should be refactored to extend BitmapData or CoreBitmapData. - Major Test refactoring: Unit tests added where logical, fla's removed in trade for AbstractTestApplication based launch profiles. - Fixed line break in config.xml. - Fixed Bootstrap weak reference / gc bug which effected multiple API swf's on a page: issue #67 (http://code.google.com/p/sekati/issues/detail?id=67) API UPDATE v3.0.5.0 - "Gigan" - Refined SekatiPreloader example implementation of DocumentPreloader. - Clarified DocumentPreloader documentation * Added initUIIntro() initUIOutro() to DocumentPreloader to support sequenced intro/outro's for preloader SWF's. - Implemented ignoreWhitespace, ignoreComments on XML in Bootstrap. - Bootstrap logger messaging added. * config.xml additions: node added for the DocumentPreloader specificity / comments added. * Modified Logger to support simplified class reflection earlier in the loading process by eliminating reliance on ClassReflector (adds support for ApplicationLoader/DocumentPreloader). * Moved SEKATI_API-TestRunner.launch from build/ to tests/build/ * Overhaul of ApplicationLoader to serve both Document and DocumentPreloader. * Added Canvas.hasParent boolean property to define whether the API Application SWF has been loaded by another SWF or not. - Adjusted README.txt with new project links * Removed sekati.formats.qrcode (externalized into a seperate project for later development: not appropriate for official API). * Added TypeValidator.strictIs() & cleaned up class docs. * Modified AlignUtil.scaleRatioToStage() to use width/height properties to address issue #61: http://code.google.com/p/sekati/issues/detail?id=61 - Added example docs to the metaData handler for sekati.media.FLV in response to issue #60: http://code.google.com/p/sekati/issues/detail?id=60 * Managed resize issues in DocumentPreloader associated with FlashPlayer bug: http://bugs.adobe.com/jira/browse/FP-434 * Bumped version to 3.0.5.0 Gigan preemptively for release. * Completed functional DocumentPreloader and SekatiPreloader example class. * Adjusted sekati.display.Canvas to remap references when being loaded by a DocumentPreloader Class. * Added node to config.xml to suppport external preloader APILoader. * Removed Logger messages from CoreSprite.onStage & CoreSprite.offStage (overly verbose) * Removed bug workaround in DocumentPreloader related to KeyManager (no longer needed). * ContextMenuManager changed to implement Keyboard for keycodes. * Added sekati.ui.Keyboard to provide a complete set of keycodes (versus flash.ui.Keyboard which is largely incomplete). * KeyManager no longer extends Proxy to eliminate API SWF-in-SWF issue related to flex bug: http://bugs.adobe.com/jira/browse/FP-939 * Removed sekati.utils.KeyCode (!!!) - Added sekati.formats.JPGEncoder - Added sekati.formats.PNGEncoder - Added sekati.formats.qrcode for Quick Recognition Code format encoder/decoders! - Added sekati.formats package to contain both common and specialized file formats. - Removed KeyManagerTest.fla (added launch profile instead) - Added sekati.media.IDevice - Added sekati.media.MicrophoneDevice & MicrophoneDeviceTest. - Added sekati.media.CameraDevice & CameraDeviceTest. - Added sekati.events.DeviceEvent for handling Camera and Microphone eventing. - Added mass to ForceSprite. - Added sekati.display.ForceSprite to provide a basic physics based display object to the API. - Added sekati.media.CameraDevice to provide a basic user camera display object to the API. - Converted all static class constructors to implement TypeEnforcer.enforceStatic. - Added tests/build directory to store test launch profiles. - Added sekati.events.CollisionEvent - Added sekati.collision package: - ICollisionDetector. - AbstractCollisionDetector. - MonoCollisionDetector. - StereoCollisionDetector. - Enforced abstraction of sekati.draw.AbstractShape - Refined docs for sekati.layout.Align and sekati.layout.Arrange. - Added index_preloader.html example. - Added sekati_preloader.swf example. - Added SekatiPreloader example class. - Added SEKATI_API-Preloader launch profile. - Added sekati.display.DocumentPreloader [in-progress] for creating API-driven preloader swfs (which can load full API swfs)! * Renamed sekati_test.swf to sekati_main.swf * Changed SWFLoader.content return type from MovieClip to Sprite. - Added Scroll.reset() method. - Added fix for nulls passed to BoolConverter.toBoolean() - Added BoolConverterTest API UPDATE v3.0.4.9 - "Varan" - Note: TextEffect class not yet completed/tested. * TextUtil.create() method signature expanded and refactored. - Added AlignUtil: stageAlignProportion, stageAlignYProportion, stageAlignXProportion. * Removed sekati.text.TextDisplay: methods refactored in to sekati.utils.TextUtil. - Removed TextUtil.focusToggle (empty method sig - see sekati.text). - TextEffectTest added - RandomTypo effect started. - Fixed AbstractMediaPlayer.seekUI() to work in liquid layout players. * Replaced MediaEvent.STOP with MediaEvent.COMPLETE. * Switched FLVPlayer & MP3Player statusHandler's to use e.type instead of e.code for sanity sake. * Added status code to MP3 MediaEvent dispatches to be more in line with FLV. - Abstracted smart buffering for MP3 into AbstractMediaPlayer. - Added anti-compression htaccess commands to save flv playback buffer. * Added fastForward() rewind() to IProgressiveMedia. * Refactored MP3Player to use AbstractMediaPlayer. * Refactored FLVPlayer to use AbstractMediaPlayer. * Added AbstractMediaPlayer. * Converted FLVPlayer & MP3Player scale status indicators to width based indicators to support liquid layouts. - Fixed minor doc issue in MP3Player - Updated deploy/assets test images. - Updated swfObject to 2.1 API UPDATE/BREAK v3.0.4.8 - "Varan" (please note "*" will be used to denote changes which cause API breaks). - Added sekati.ui.MP3Player - Rewrite sekati.ui.FLVPlayer - Added EXECUTING_DOMAIN & isLocalhost to NetBase. * Refactored getLocation() to 'location' & isOnline() to 'online', getPath() to 'path' in NetBase. - sekati.ui.Scroll bugfixes & doc updates. - Added ScrollTest class. - Added sekati.media.IProgressiveMedia interface (implemented on FLV & MP3 classes). * sekati.media.MP3 total rewrite. * sekati.events.MediaEvent added ID3 event * Major refactoring of sekati.ui.FLVPlayer * Major refactoring of sekati.media.FLV * Major refactoring of sekati.media.MP3 - FLVTest refactored to class, fla removed. - sekati.media.FLV semantics updates - sekati.media.MP3 updated: added volume, stop, transform, channel and other getters. - Fixed bug in ArrayUtil.nearestNeighbor(): removed range.sort(Array.NUMERIC) as it disrupts the natural order of the array/returnIndex. * Changed ColorUtil.getColor() to use BitmapValidator.MAX_SIZE_SAFE. * Added BitmapValidator.MAX_SIZE_SAFE as MAX_SIZE was causing issues with fp9 swf's. - Minor semantics fix to FLVPlayer (needs refactoring). - Refactored AlignUtil.scaleRatio() - Added AlignUtil.scaleRatioToFit() - Added AlignUtil.scaleRatioToStage() - Cleanup on AlignUtil - Added DateUtilTest unit test for dateFromDB() fix below. - Updated DateUtil.dateFromDB() to accept YYYY-MM-DD format. * Updated FLVPlayer to take UI elements as constructor arguments. API UPDATE v3.0.4.7 - "Varan" - Updated Copyright year in App/config.xml/build.properties - LoaderQueue progress delayed - .7 becomes intermediary build. - Bootstrap now checks for existing anchor in BrowserAddress @see http://code.google.com/p/sekati/issues/detail?id=52 - Added ExternalBase.scrollWindow() - Refactored ExternalBase resizeWindow, shakeWindow, status, centerPop - Added sekati.text.TextFlow API UPDATE v3.0.4.6 - "Varan" - WARNING: LoaderQueue not yet complete / functional (will be completed during the v3.0.4.6 trunk life-span). - Added FileType - Added FileTypeValidator & FileTypeValidatorTest - Added LoaderQueueEvent - Added LoaderQueue - Added ILoaderQueue - Added sekati.load.ByteArrayLoader - Added sekati.load.TextLoader - Added sekati.load.VariableLoader - Added sekati.load.SoundLoader - Added sekati.load.SWFLoader - Added sekati.load.XMLLoader - Added sekati.media.MP3 - Added various loader tests (SoundLoader, VariableLoader, SWFLoader, XMLLoader, ByteArrayLoader, TextLoader, et. al) - Made URLLoaderDataFormat, LoaderContext & SoundLoaderContext's accessible via subclasses of AbstractLoader. - Fixed bugs in AbstractLoader, refactored methods in AbstractLoader - Added soundContext getter/setter properties to AbstractLoader - Implemented ILoader on AbstractLoader subclasses for clarity. - Updated AssetLocator Docs. - Updated ApplicationLoader Docs. - Refined TypeEnforcer Docs. - AbstractLoader ArgumentError update. - ApplicationLoader loaded/total refactored to bytesLoaded/bytesTotal. API UPDATE/BREAK: v3.0.4.5 - "Varan" (Load package stabilized: please see docs) - Added StyleSheetLoader - Removed CSSLoader - Added AssetLocator - Refactored XMLLoader - Refactored ILoader interface - Refactored AbstractCoreLoader to AbstractLoader - Adjusted Document class to fit new ApplicationLoader - Refactored AppLoader to ApplicationLoader - Removed LoaderEvent - Removed XMLEvent - Removed AbstractLoader - Removed AbstractURLLoader - XMLUtil additions - Updated UIAssets.fla - load package progress with AbstractLoader, AssetLocator, GraphicLoader - optimized/bugfixes on ColorUtil averages - added ColorUtil.averageHue - added ColorUtil.averageSaturation - added ColorUtil.averageLightness - added ColorUtil.averageValue - added ColorUtil.averageRed - added ColorUtil.averageGreen - added ColorUtil.averagBlue - added BitmapValidator (fixed/moved constants from CoreBitmapData) - fixed minor bug in CoreBitmapData - updated swfIN.js to v2.2.6 API BUG FIX: v3.0.4.4 - "Varan" (see http://code.google.com/p/sekati/issues/detail?id=45) - API_NAME => APP_NAME bug fixed in sekati.core.Bootstrap - false now default in config.xml - sekati.core.Bootstrap + true now sets "#/home/" (to match google analytics track) but no longer alters the page title. - BrowserManager implementation deferred to a later release/branch (re-evaluating SWFAddress vs custom polling solution). - Added ExternalBase.getBrowserView() which returns the browser viewport yscroll & height. API BUG FIX: v3.0.4.3 - "Varan" (see: http://code.google.com/p/sekati/issues/detail?id=44) - A major bug existed in the new StringValidator.isBlank RegExp which was not caught in the unit test. Reverted and pushed new build: Any project using 3.0.4.2 should update: it is buggy as deprecated. API UPDATE/BREAK: v3.0.4.2 - "Varan" (API CHANGES: Please read log carefully to support project porting) - Restructured KeyManager and repaired bugs. This is an API BREAK: keys are now added at the end of the method signature in a ...rest: * OLD (deprecated): KeyManager.$.addKeyListener( [ KeyManager.$.UP, KeyManager.$.C ], myHandler, false ); * NEW: KeyManager.$.addKeyListener( myHandler, false, KeyManager.$.UP, KeyManager.$.C ); - Refactored ContextMenuManager to support new KeyManager.addKeyListener method signature. - Finalized Singleton classes & privatized their properties as API singletons cannot be extended: * StageDisplay * KeyManager * ContextMenuManager * FramePulse * ApplicationEventDispatcher * ExternalMouseWheel * Logger - AppEvent refactored to ApplicationEvent - AppEventDispatcher refactored to ApplicationEventDispatcher - Deprecated sekati.utils.Assert - DateUtil refactored, restructured and methods added for a more useful utility. - StringUtil trim constant regexp statements fixed. - StringValidator.isBlank reworked to use RegExp instead of string parsing. - Weakref class refactored into WeakReference. - ArrayUtil search, indexOf, lastIndexOf added/reworked: no array util methods return NaN now they return a more standard -1. - tests restructured to flex_unit based Unit Tests and visual tests: http://api.sekati.com/sekati/tests/ - Unit tests added - flexunit.swc 901: added to lib API UPDATE: v3.0.4.1 - "Varan" - CoreSprite: added invalidate() protected wrapper function, added Logger methods instead of generic trace - StageDisplay: removed annoying resize Logger message, Added getter/setters for resizeCompleteTime, leaveCompleteTime, idleTime, Added idle getter. General cleanup. - StageEvent : deprecated faulty StageEvent.RENDER event. - Misc utility additions/fixes. API UPDATE: v3.0.4.0 - "Varan" - Deprecated from config.xml & App.KEY_ENABLED: KeyManager singleton will be used when needed. - CoreInterface refactored to ICoreInterface - Canvas now extends CoreSprite instead of Sprite - Major display package overhaul: - CoreBitmapData added for capturing, cropping, scaling, filtering samples from DisplayObjects - CoreSprite now has enabled getter/setter stubs & removeChildren(...args) which removes an array or all child objects. - InteractiveSprite & LiquidSprite now utilize a standardized configListeners() to decouple event handlers from onStage, offStage events and implement the CoreSprite.enabled property for enabling/disabling eventing. - DraggableSprite added with drag/drop functionality and physics (Still in progress re Bounds) - StageDisplay cleanup - ContextualMenu & ArrayUtil fixes NaN vs. int bug. - Repaired KeyManager regression bug related to above fixes. - Misc utility additions/fixes. ------ CODENAME: "VARAN" ------ API UPDATE: v3.0.3.10 - "Mothra" (WARNING: API BREAK) - sekati.display.BitmapDataCapture deprecated for sekati.display.CoreBitmapData & sekati.display.CoreBitmap - Cleanup to events, core package. - Various fixes/cleanups. - Preparation for codename bump. API UPDATE: v3.0.3.9 - "Mothra" - Preparatory build for sub-version/codename bump: - Feature additions to CoreSprite, InteractiveSprite, Document, etc. - core and event package refactorings - external package updated in prep for a centralized external queue and internalization of all js: BrowserAddress functional - SWC size shrunk with update ANT Buildfile: no longer includes flex core. - Documentation updates. - external package still needs cohesive management for browser readiness. - Remove ui.components subpackage in exchange for ui.controls - Removed commands stub package for later implementation. - Refactored data package into utils. - Removed unused except package. v3.0.3.8 - "Mothra" (WARNING: API BREAK) - This is an Intermediary Build: - Tweener (caurina.*) has been removed from the source directory and is now provided as a SWC which is mxmlc and Flash10 IDE compatible BUT NOT FLASH CS3 COMPATIBLE! This means you *must* provide your own source version of Tweener if you are publishing from Flash9 IDE moving forward. - added lib/tweener.swc - addition of a new ant buildfile are in progress - minor changes to deploy - miscellaneous cleanup and refactoring moving towards a clean issue tracker list. It is best to avoid building from trunk / 3.0.3.8 if you are not comfortable creating a linked library to tweener.swc or are working on flash-ide centric projects. API UPDATE: v3.0.3.7 - "Mothra" (UPDATE 1) - Removed 'index' param options from ContextualMenu.addItem() due to regression bug in ContextMenuManager natural ordering. API UPDATE: v3.0.3.7 "Mothra" - Fixed critical bug in sekati.managers.ContextMenuManager which prevented access to Canvas-level ContextualMenu. - Added the optional 'index' param to ContextualMenu.addItem which redefines the order (and ID's!) of ContextualMenuItems: This means you can now inject custom context menu items into the API's default root-level context menu in any order you wish! - Fixed typo in sekati.utils.ArrayUtil NOTE: This is a maintenance & stability build and will likely be followed by another to implement the last non-functional config.xml option via BrowserAddress deeplink support. API UPDATE: v3.0.3.6 "Mothra" - Added sekati.external.BrowserAddress - Removed sekati.external.SWFAddress - Removed sekati.events.SWFAddressEvent - Removed deploy/js/swfaddress.js This update removes SWFAddress and replaces with a paired down (non-history managed) easy to implement BrowserAddress class which allows for deeplink anchoring, title changes and more with a simple set and check mentality that forgoes the need for browser history simulation. NOTE: This will likely be followed by another version bump once BrowserAddress has been fully tested and matured - consider 3.0.3.6 an intermediary build. API UPDATE: 3.0.3.5 - "Mothra" - Updated to current recommended adobe crossdomain.xml policy file structure. - Remove crossdomain_uri as a flashVar option (relatively pointless) - Fixed bug in Bootstrap which failed to construct the proper crossdomain fully-qualified uri from relative crossdoms (not begining with / or http). - Added Image ui class. API UPDATE: v3.0.3.4 Mothra" - Version bump API UPDATE: v3.0.3.3 "Mothra" - Relocated sekati.swc to /lib - Refactored sekati.external.JsBase to sekati.external.ExternalBase - Updated sekati.profiler.PerformanceMonitor to improve output - Updated sekati.log.Logger to support Firebug output - Updated config.xml to support new settings: NONE, CONSOLE, FIREBUG, ALL (false/true backwards compatible) - Updated sekati.log helper classes - Updated/optimized Bootstrap - Removed App.log property from sekati.core.App - Refactored sekati.validators.FlashValidator to provide getter properties - Implemented new config.xml based tracking via sekati.external.Urchin - Updated sekati.external.Urchin implementation via config.xml/Bootstrap/App ... more good stuff (but may require minor refactoring in past projects [<=3.0.3.0] for implementation) API UPDATE: 3.0.3.2 - "Mothra" - moved sekati.swc to lib/ - adjusted buildfile, removed useless lib/swc directory - added auto-hotkey for fullscreen/context menu when config'd. - added launch configuration - renamed UIAssets to support upcoming components and templating. - removed unutilized console. API UPDATE: v3.0.3.1 Mothra" - Version bump API VERSION BUMP/BREAK: 3.0.3.0 - "Mothra" (Please read the 3030 Release Notes carefully beforeupgrading current projects) - major display package changes/adustments: * frame/clip based classes deprecated * all display class event handlers are now 'e:Event=null' (adjust your previous projects accordingly!!!) * Liquid classes no longer use the "_on" convention but are simply: "resize, resizeComplete, fullscreen" (adjust your previous projects accordingly!!!) - config.xml changes to support performance monitoring - removed deprecated nodes. - App/Bootstrap adjustments - Performance refactored to PerformanceMonitor - XMLUtil added - DateUtil rehashed (in progress). - ui class additions (components/reflections/etc - in-progress) - service package added (webservice) - added RemotingService to API for AMFPHP. - added ServiceEvent - Viewport moved to ui package. - Removed AssetManager Please see http://code.google.com/p/sekati/issues/list?can=1&q=&colspec=ID+Type+Status+Priority+Milestone+Owner+Summary&cells=tiles for more. ------ CODENAME: "MOTHRA" ------ API UPDATE: Public v3.0.2.9 - "Rodan" (final subpoint release) - Minor enhancements to TextUtil, FocusToggle API UPDATE: v3.0.2.8 - "Rodan" - Bootstrap cleanup, misc additions, progress and maint. build. API BREAK: v3.0.2.7 - "Rodan" - refactoring sekati.display.TextDisplay to sekati.text.TextDisplay: loader, draw, text updates, additions and refactorings to follow. API UPDATE: v3.0.2.6 - "Rodan" - Cleanup / Refactoring: Public Alpha . API UPDATE: v3.0.2.5 - "Rodan" - ColorUtil, StringUtil, MathBase additions & alterations on AbstractLoader. API MAINTENANCE: v3.0.2.3 - "Rodan" - Repaired CSS flaw in Bootstrap API CLEANUP: v3.0.2.2 - "Rodan" - removed useless sekati.display classes, added InteractiveSprite, updated docs, finalized certain classes for speed optimization and unprivatized other for extensibility. API SHIFT: v3.0.2.1 - "Rodan" (generally backward compatible) - Core changes to sekati.display.Canvas & sekati.display.Document allow for full API implemented SWF loading into loader swf's and the skipping of the Bootstrap phase via simple override of Document.initAPI(). Please see http://docs.sekati.com/sekati for details. - These changes should be mostly backwards compatible except save cases of extreme customization to Bootstrap and/or Document. API VERSION BUMP: v3.0.2.0 - "Rodan" - version starts. ------ CODENAME: "RODAN" ------ API UPDATE: v3.0.1.0 - "Ghidorah" - Code names will be assigned whenver a major API break occurs or enough work has taken place to merit both a version and code name bump (this should happen quite often so the associated names in sekati.core.App should assist in project/api match tracking). ------ CODENAME: "GHIDORAH" ------ API BREAK: - sekati.display.* Sprite compliments to Clip classes added (Core, Liquid, etc). - NOTE: the "onAdd" and "onRemove" event handlers have been replaced with the more aptly named "onStage" "offStage" event handler method stubs. API ADDITION: (UPDATE RECOMMENDED) - backwards compatible: check config.xml ... API FORK: NOT BACKWARDS COMPATIBLE: Added configuration options to App/Bootstrap/config.xml to allow for Bootstrap stage skipping. Future Bootstrap may be replaced with a more flexible config.xml and Command, ICommand, CommandSequencer package. ------ SEKATI API 3.0.0.x ------