You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Piotr Zarzycki <pi...@gmail.com> on 2017/03/05 09:42:41 UTC

Re: git commit: [flex-asjs] [refs/heads/develop] - AnimationUtil Beginning of KeyboardEvent and associated classes Expanded IRect Added constant to MouseEvent

Hi Harbs,

Nice addition! Can we change @productversion FlexJS 0.0 to
@productversion FlexJS 0.8.0
?

Thanks,
Piotr

2017-03-05 10:33 GMT+01:00 <ha...@apache.org>:

> Repository: flex-asjs
> Updated Branches:
>   refs/heads/develop 81712dc21 -> b937f2671
>
>
> AnimationUtil
> Beginning of KeyboardEvent and associated classes
> Expanded IRect
> Added constant to MouseEvent
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/b937f267
> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/b937f267
> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/b937f267
>
> Branch: refs/heads/develop
> Commit: b937f26718b8a3d3662f70bcba21709f37c54040
> Parents: 81712dc
> Author: Harbs <ha...@in-tools.com>
> Authored: Sun Mar 5 11:33:48 2017 +0200
> Committer: Harbs <ha...@in-tools.com>
> Committed: Sun Mar 5 11:33:48 2017 +0200
>
> ----------------------------------------------------------------------
>  .../projects/Core/src/main/flex/CoreClasses.as  |  12 +-
>  .../org/apache/flex/events/KeyboardEvent.as     | 107 ++++++++++
>  .../flex/org/apache/flex/events/MouseEvent.as   |   2 +
>  .../org/apache/flex/events/utils/EditingKeys.as |  95 +++++++++
>  .../apache/flex/events/utils/KeyConverter.as    | 205 +++++++++++++++++++
>  .../apache/flex/events/utils/ModifierKeys.as    |  97 +++++++++
>  .../apache/flex/events/utils/NavigationKeys.as  |  66 ++++++
>  .../org/apache/flex/events/utils/SpecialKeys.as |  40 ++++
>  .../flex/org/apache/flex/events/utils/UIKeys.as | 115 +++++++++++
>  .../apache/flex/events/utils/WhitespaceKeys.as  |  49 +++++
>  .../flex/org/apache/flex/utils/AnimationUtil.as | 105 ++++++++++
>  .../main/flex/org/apache/flex/graphics/IRect.as |   6 +-
>  12 files changed, 897 insertions(+), 2 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/CoreClasses.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/CoreClasses.as
> b/frameworks/projects/Core/src/main/flex/CoreClasses.as
> index 744242a..43a4e2b 100644
> --- a/frameworks/projects/Core/src/main/flex/CoreClasses.as
> +++ b/frameworks/projects/Core/src/main/flex/CoreClasses.as
> @@ -31,6 +31,7 @@ internal class CoreClasses
>      import org.apache.flex.core.BrowserWindow; BrowserWindow;
>         COMPILE::SWF
>         {
> +               import Promise; Promise;
>                 import org.apache.flex.core.ApplicationFactory;
> ApplicationFactory;
>                 import org.apache.flex.core.CSSShape; CSSShape;
>                 import org.apache.flex.core.CSSSprite; CSSSprite;
> @@ -116,17 +117,26 @@ internal class CoreClasses
>      import org.apache.flex.events.EventDispatcher; EventDispatcher;
>      import org.apache.flex.events.IEventDispatcher; IEventDispatcher;
>         import org.apache.flex.events.MouseEvent; MouseEvent;
> +       import org.apache.flex.events.KeyboardEvent; KeyboardEvent;
>         COMPILE::SWF
>         {
>             import org.apache.flex.core.StageProxy; StageProxy;
>                 import org.apache.flex.events.utils.MouseEventConverter;
> MouseEventConverter;
>         }
> +       import org.apache.flex.events.utils.KeyConverter; KeyConverter;
>         import org.apache.flex.events.DetailEvent; DetailEvent;
>         import org.apache.flex.events.ValueEvent; ValueEvent;
>      import org.apache.flex.events.utils.MouseUtils; MouseUtils;
> +       import org.apache.flex.events.utils.EditingKeys; EditingKeys;
> +       import org.apache.flex.events.utils.ModifierKeys; ModifierKeys;
> +       import org.apache.flex.events.utils.NavigationKeys;
> NavigationKeys;
> +       import org.apache.flex.events.utils.SpecialKeys; SpecialKeys;
> +       import org.apache.flex.events.utils.WhitespaceKeys;
> WhitespaceKeys;
> +       import org.apache.flex.events.utils.UIKeys; UIKeys;
>         import org.apache.flex.geom.Matrix; Matrix;
>      import org.apache.flex.geom.Point; Point;
>      import org.apache.flex.geom.Rectangle; Rectangle;
> +    import org.apache.flex.utils.AnimationUtil; AnimationUtil;
>      import org.apache.flex.utils.BinaryData; BinaryData;
>         COMPILE::SWF
>         {
> @@ -156,7 +166,7 @@ internal class CoreClasses
>      import org.apache.flex.utils.StringPadder; StringPadder;
>         import org.apache.flex.utils.StringTrimmer; StringTrimmer;
>         import org.apache.flex.utils.StringUtil; StringUtil;
> -       // import org.apache.flex.utils.ObjectMap;ObjectMap;
> +       // import org.apache.flex.utils.ObjectMap; ObjectMap;
>         import org.apache.flex.utils.ObjectUtil; ObjectUtil;
>         import org.apache.flex.utils.Timer; Timer;
>         import org.apache.flex.utils.UIDUtil; UIDUtil;
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/KeyboardEvent.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/KeyboardEvent.as
> new file mode 100644
> index 0000000..c92a0b3
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/KeyboardEvent.as
> @@ -0,0 +1,107 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events
> +{
> +    public class KeyboardEvent extends Event
> +    {
> +
> +        public static const KEY_DOWN:String = "keyDown";
> +        public static const KEY_UP:String = "keyUp";
> +
> +        public function KeyboardEvent(
> +            type:String,
> +            key:String,
> +            code:String,
> +            shiftKey:Boolean=false,
> +            altKey:Boolean=false,
> +            ctrlKey:Boolean=false,
> +            metaKey:Boolean=false,
> +            bubbles:Boolean = false, cancelable:Boolean = false)
> +        {
> +            super(type, bubbles = false, cancelable);
> +            _key = key;
> +            _code = code;
> +            _shiftKey = shiftKey;
> +            _altKey = altKey;
> +            _ctrlKey = ctrlKey;
> +            _metaKey = metaKey;
> +        }
> +
> +        private var _key:String;
> +        public function get key():String
> +        {
> +            return _key;
> +        }
> +        public function set key(value:String):void
> +        {
> +            _key = value;
> +        }
> +
> +        private var _code:String;
> +        public function get code():String
> +        {
> +            return _code;
> +        }
> +        public function set code(value:String):void
> +        {
> +            _code = value;
> +        }
> +
> +        private var _shiftKey:Boolean;
> +        public function get shiftKey():Boolean
> +        {
> +            return _shiftKey;
> +        }
> +
> +        private var _altKey:Boolean;
> +        public function get altKey():Boolean
> +        {
> +            return _altKey;
> +        }
> +        public function set altKey(value:Boolean):void
> +        {
> +            _altKey = value;
> +        }
> +
> +        private var _ctrlKey:Boolean;
> +        public function get ctrlKey():Boolean
> +        {
> +            return _ctrlKey;
> +        }
> +        public function set ctrlKey(value:Boolean):void
> +        {
> +            _ctrlKey = value;
> +        }
> +
> +        private var _metaKey:Boolean;
> +        public function get metaKey():Boolean
> +        {
> +            return _metaKey;
> +        }
> +        public function set metaKey(value:Boolean):void
> +        {
> +            _metaKey = value;
> +        }
> +
> +        public function get modifierKey():Boolean
> +        {
> +            return false;
> +        }
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/MouseEvent.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/MouseEvent.as
> index 62462f1..3e5a617 100644
> --- a/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/MouseEvent.as
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/MouseEvent.as
> @@ -60,6 +60,7 @@ package org.apache.flex.events
>                 public static const ROLL_OUT:String =
> platformConstant("rollOut");
>          public static const CLICK:String = "click";
>                 public static const DOUBLE_CLICK:String = "doubleClick";
> +               public static const WHEEL : String = "mouseWheel";
>
>           /**
>           *  Constructor.
> @@ -203,6 +204,7 @@ package org.apache.flex.events
>                 public static const ROLL_OUT:String =
> platformConstant("rollOut");
>                 public static const CLICK:String = "click";
>                 public static const DOUBLE_CLICK:String = "dblclick";
> +               public static const WHEEL : String = "wheel";
>
>                 /**
>                  *  Constructor.
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/EditingKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/EditingKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/EditingKeys.as
> new file mode 100644
> index 0000000..a6d7a26
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/EditingKeys.as
> @@ -0,0 +1,95 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for editing keys
> +     *  See: https://w3c.github.io/uievents-key/#keys-editing
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Editing_keys
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class EditingKeys
> +    {
> +
> +        /**
> +         * The Backspace key. This key is labeled Delete on Mac keyboards.
> +         */
> +        public static const BACKSPACE:String = "Backspace";
> +
> +        /**
> +         * The Clear key. Removes the currently selected input.
> +         */
> +        public static const CLEAR:String = "Clear";
> +
> +        /**
> +         * The Copy key (on certain extended keyboards).
> +         */
> +        public static const COPY:String = "Copy";
> +
> +        /**
> +         * The Cursor Select key, CrSel.
> +         */
> +        public static const CURSOR_SELECT:String = "CrSel";
> +
> +        /**
> +         * The Cut key (on certain extended keyboards).
> +         */
> +        public static const CUT:String = "Cut";
> +
> +        /**
> +         * The Delete key, Del.
> +         */
> +        public static const DELETE:String = "Delete";
> +
> +        /**
> +         * Erase to End of Field. Deletes all characters from the current
> cursor position to the end of the current field.
> +         */
> +        public static const ERASE_EOF:String = "EraseEof";
> +
> +        /**
> +         * The ExSel (Extend Selection) key.
> +         */
> +        public static const EXTEND_SELECTION:String = "ExSel";
> +
> +        /**
> +         * The Insert key, Ins. Toggles  between inserting and
> overwriting text.
> +         */
> +        public static const INSERT:String = "Insert";
> +
> +        /**
> +         * Paste from the clipboard.
> +         */
> +        public static const PASTE:String = "Paste";
> +
> +        /**
> +         * Redo the last action.
> +         */
> +        public static const REDO:String = "Redo";
> +
> +        /**
> +         * Undo the last action.
> +         */
> +        public static const UNDO:String = "Undo";
> +
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/KeyConverter.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/KeyConverter.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/KeyConverter.as
> new file mode 100644
> index 0000000..6ddfac8
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/KeyConverter.as
> @@ -0,0 +1,205 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +
> +       /**
> +     *  Converts Keyboard Codes and key values into rational string
> equivalents.
> +     *
> +     *  @langversion 3.0
> +     *  @playerversion Flash 10.2
> +     *  @playerversion AIR 2.6
> +     *  @productversion FlexJS 0.0
> +        */
> +       public class KeyConverter
> +       {
> +
> +        COMPILE::JS
> +        private static const lookup:Object = {
> +            "Unidentified" : "",
> +            "Enter" : "\r",
> +            "Tab" : "\t",
> +            "Spacebar": " "
> +        };
> +
> +        /**
> +         *  Converts HTML key values into rational string equivalents.
> +         *
> +         *  @langversion 3.0
> +         *  @playerversion Flash 10.2
> +         *  @playerversion AIR 2.6
> +         *  @productversion FlexJS 0.0
> +         */
> +        COMPILE::JS
> +        public static function convertKey(value:String):String
> +        {
> +            if(value.length < 2)
> +                return value;
> +
> +            value = lookup[value];
> +            return value || "";
> +        }
> +
> +        /**
> +         *  Converts SWF key values into rational string equivalents. (is
> anything needed?)
> +         *
> +         *  @langversion 3.0
> +         *  @playerversion Flash 10.2
> +         *  @playerversion AIR 2.6
> +         *  @productversion FlexJS 0.0
> +         */
> +         COMPILE::SWF
> +         public static function convertKey(value:String):String
> +         {
> +             return value;
> +         }
> +
> +        /**
> +         *  Converts Flash keyCodes into rational string equivalents.
> These represent the physical (or virtual) key locations.
> +         *
> +         *  @langversion 3.0
> +         *  @playerversion Flash 10.2
> +         *  @playerversion AIR 2.6
> +         *  @productversion FlexJS 0.0
> +         */
> +         COMPILE::SWF
> +         public static function convertKeyCode(code:uint):String
> +         {
> +             // A to Z
> +             if(code > 64 && code < 91)
> +             {
> +                 return "Key" + String.fromCharCode(code);
> +             }
> +             // 0 to 9
> +             if(code > 47 && code < 58)
> +             {
> +                 return "Digit" + String.fromCharCode(code);
> +             }
> +             // Numpad 0 to 9
> +             if(code > 95 && code < 106)
> +             {
> +                 return "Numpad" + String.fromCharCode(code);
> +             }
> +             // Fn keys
> +             if(code > 111 && code < 106)
> +             {
> +                 return "F" + (code - 111);
> +             }
> +             // The rest
> +             switch(code){
> +                case 8:
> +                    return "Backspace";
> +                case 9:
> +                    return "Tab";
> +                case 13:
> +                    return "Enter";
> +                case 16:
> +                    return "ShiftLeft";
> +                case 17:
> +                    return "ControlLeft";
> +                case 20:
> +                    return "CapsLock";
> +                case 27:
> +                    return "Escape";
> +                case 32:
> +                    return "Space";
> +                case 33:
> +                    return "PageUp";
> +                case 34:
> +                    return "PageDown";
> +                case 35:
> +                    return "End";
> +                case 36:
> +                    return "Home";
> +                case 37:
> +                    return "ArrowLeft";
> +                case 38:
> +                    return "ArrowUp";
> +                case 39:
> +                    return "ArrowRight";
> +                case 40:
> +                    return "ArrowDown";
> +                case 45:
> +                    return "Insert";
> +                case 46:
> +                    return "Delete";
> +                case 144:
> +                    return "NumLock";
> +                case 145:
> +                    return "ScrollLock";
> +                case 19:
> +                    return "Pause";
> +                case 186:
> +                    return "Semicolon";
> +                case 187:
> +                    return "Equal";
> +                case 189:
> +                    return "Minus";
> +                case 191:
> +                    return "Slash";
> +                case 192:
> +                    return "Backquote";
> +                case 219:
> +                    return "BracketLeft";
> +                case 220:
> +                    return "Backslash";
> +                case 221:
> +                    return "BracketRight";
> +                case 222:
> +                    return "Quote";
> +                case 188:
> +                    return "Comma";
> +                case 190 :
> +                    return "Period";
> +                case 106:
> +                    return "NumpadMultiply";
> +                case 107:
> +                    return "NumpadAdd";
> +                case 13:
> +                    return "NumpadEnter";
> +                case 109:
> +                    return "NumpadSubtract";
> +                case 110:
> +                    return "NumpadDecimal";
> +                case 111:
> +                    return "NumpadDivide";
> +                default:
> +                    throw new Error("Unknown Key Code: " + code);
> +             }
> +         }
> +
> +        /**
> +         *  Converts Flash charCodes into rational string equivalents.
> These represent the actual input.
> +         *
> +         *  @langversion 3.0
> +         *  @playerversion Flash 10.2
> +         *  @playerversion AIR 2.6
> +         *  @productversion FlexJS 0.0
> +         */
> +         public static function convertCharCode(code:uint):String
> +         {
> +             //By default we use String.fromCharCode. This should work
> for the vast majority of characters.
> +             //Special characters need to be dealt with individually.
> +             switch(code){
> +                 default:
> +                    return String.fromCharCode(code);
> +             }
> +         }
> +    }
> +}
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/ModifierKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/ModifierKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/ModifierKeys.as
> new file mode 100644
> index 0000000..b318aac
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/ModifierKeys.as
> @@ -0,0 +1,97 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for special keys
> +     *  See: https://w3c.github.io/uievents-key/#keys-special
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Special_values
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class ModifierKeys
> +    {
> +
> +        /**
> +        * The Alt (Alternative) key.
> +        */
> +        public static const ALT:String = "Alt";
> +
> +        /**
> +        * The AltGr or AltGraph (Alternate Graphics) key. Enables the ISO
> Level 3 shift modifier (where Shift is the level 2 modifier).
> +        */
> +        public static const ALT_GRAPH:String = "AltGraph";
> +
> +        /**
> +         * The Caps Lock key. Toggles the capital character lock on and
> off for subsequent input.
> +         */
> +        public static const CAPS_LOCK:String = "CapsLock";
> +
> +        /**
> +         * The Control, Ctrl, or Ctl key. Alows typing control characters.
> +         */
> +        public static const CONTROL:String = "Control";
> +
> +        /**
> +         * The Fn (Function modifier) key. Used to allow generating
> function key (F1-F15, for instance)
> +         * characters on keyboards without a dedicated function key area.
> Often handled in hardware so that events aren't generated for this key.
> +         */
> +        public static const FN:String = "Fn";
> +
> +        /**
> +         * The Meta key. Allows issuing special command inputs. This is
> the Windows logo key, or the Command or ⌘ key on Mac keyboards.
> +         */
> +        public static const META:String = "Meta";
> +
> +        /**
> +         * The NumLock (Number Lock) key. Toggles the numeric keypad
> between number entry some other mode (often directional arrows).
> +         */
> +        public static const NUM_LOCK:String = "NumLock";
> +
> +        /**
> +         * The Scroll Lock key. Toggles beteen scrolling and cursor
> movement modes.
> +         */
> +        public static const SCROLL_LOCK:String = "ScrollLock";
> +
> +        /**
> +         * The Shift key. Modifies keystrokes to allow typing upper (or
> other) case letters,
> +         * and to support typing punctuation and other special characters.
> +         */
> +        public static const SHIFT:String = "Shift";
> +
> +        /**
> +         * The Super key.
> +         */
> +        public static const SUPER:String = "Super";
> +
> +        /**
> +         * The Symbol modifier key (found on certain virtual keyboards).
> +         */
> +        public static const SYMBOL:String = "Symbol";
> +
> +        /**
> +         * The Symbol Lock key.
> +         */
> +        public static const SYMBOL_LOCK:String = "SymbolLock";
> +
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/NavigationKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/NavigationKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/NavigationKeys.as
> new file mode 100644
> index 0000000..b645d21
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/NavigationKeys.as
> @@ -0,0 +1,66 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for keyboard navigation
> +     *  See: https://w3c.github.io/uievents-key/#keys-navigation
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Navigation_keys
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class NavigationKeys
> +    {
> +        /**
> +         * The down arrow key.
> +         */
> +        public static const DOWN:String = "ArrowDown";
> +        /**
> +         * The left arrow key.
> +         */
> +        public static const LEFT:String = "ArrowLeft";
> +        /**
> +         * The right arrow key.
> +         */
> +        public static const RIGHT:String = "ArrowRight";
> +        /**
> +         * The up arrow key.
> +         */
> +        public static const UP:String = "ArrowUp";
> +        /**
> +         * The End key. Moves to the end of content.
> +         */
> +        public static const END:String = "End";
> +        /**
> +         * The Home key. Moves to the start of content.
> +         */
> +        public static const HOME:String = "Home";
> +        /**
> +         * The Page Down (or PgDn) key. Scrolls down or displays the next
> page of content.
> +         */
> +        public static const PAGE_DOWN:String = "PageDown";
> +        /**
> +         * The Page Up (or PgUp) key. Scrolls up or displays the previous
> page of content.
> +         */
> +        public static const PAGE_UP:String = "PageUp";
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/SpecialKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/SpecialKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/SpecialKeys.as
> new file mode 100644
> index 0000000..b82efb8
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/SpecialKeys.as
> @@ -0,0 +1,40 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for special keys
> +     *  See: https://w3c.github.io/uievents-key/#keys-special
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Special_values
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class SpecialKeys
> +    {
> +        /**
> +         * The user agent wasn't able to map the event's virtual keycode
> to a specific key value.
> +         * This can happen due to hardware or software constraints, or
> because of constraints
> +         * around the platform on which the user agent is running.
> +         */
> +        public static const UNIDENTIFIED:String = "Unidentified";
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/UIKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/UIKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/UIKeys.as
> new file mode 100644
> index 0000000..2d1cdec
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/UIKeys.as
> @@ -0,0 +1,115 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for special keys
> +     *  See: https://w3c.github.io/uievents-key/#keys-special
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Special_values
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class UIKeys
> +    {
> +
> +        /**
> +         * The Accept, Commit, or OK key or button. Accepts the currently
> selected option or input method sequence conversion.
> +         */
> +        public static const ACCEPT:String = "Accept";
> +
> +        /**
> +         * The Again key. Redoes or repeats a previous action.
> +         */
> +        public static const AGAIN:String = "Again";
> +
> +        /**
> +         * The Attn (Attention) key.
> +         */
> +        public static const ATTN:String = "Attn";
> +
> +        /**
> +         * The Cancel key.
> +         */
> +        public static const CANCEL:String = "Cancel";
> +
> +        /**
> +         * Shows the context menu. Typically found between the Windows
> (or OS) key and the Control key on the right side of the keyboard.
> +         */
> +        public static const CONTEXT_MENU:String = "ContextMenu";
> +
> +        /**
> +         * The Esc (Escape) key. Typically used as an exit, cancel, or
> "escape this operation" button. Historically, the Escape character was used
> to signal the start of a special control sequence of characters called an
> "escape sequence."
> +         */
> +        public static const ESCAPE:String = "Escape";
> +
> +        /**
> +         * The Execute key.
> +         */
> +        public static const EXECUTE:String = "Execute";
> +
> +        /**
> +         * The Find key. Opens an interface (typically a dialog box) for
> performing a find/search operation.
> +         */
> +        public static const FIND:String = "Find";
> +
> +        /**
> +         * The Finish key.
> +         */
> +        public static const FINISH:String = "Finish";
> +
> +        /**
> +         * The Help key. Opens or toggles the display of help information.
> +         */
> +        public static const HELP:String = "Help";
> +
> +        /**
> +         * The Pause key. Pauses the current application or state, if
> applicable.
> +         */
> +        public static const PAUSE:String = "Pause";
> +
> +        /**
> +         * The Play key. Resumes a previously paused application, if
> applicable.
> +         */
> +        public static const PLAY:String = "Play";
> +
> +        /**
> +         * The Props (Properties) key.
> +         */
> +        public static const PROPS:String = "Props";
> +
> +        /**
> +         * The Select key.
> +         */
> +        public static const SELECT:String = "Select";
> +
> +        /**
> +         * The ZoomIn key.
> +         */
> +        public static const ZOOM_IN:String = "ZoomIn";
> +
> +        /**
> +         * The ZoomOut key.
> +         */
> +        public static const ZOOM_OUT:String = "ZoomOut";
> +
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/events/utils/WhitespaceKeys.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/WhitespaceKeys.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/WhitespaceKeys.as
> new file mode 100644
> index 0000000..d987ac0
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> events/utils/WhitespaceKeys.as
> @@ -0,0 +1,49 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.events.utils
> +{
> +       /**
> +        *  This class holds constants for special keys
> +     *  See: https://w3c.github.io/uievents-key/#keys-whitespace
> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
> KeyboardEvent/key/Key_Values#Whitespace_keys
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +    public class WhitespaceKeys
> +    {
> +
> +        /**
> +         * The Enter or ↵ key (sometimes labeled Return).
> +         */
> +        public static const ENTER:String = "Enter";
> +
> +        /**
> +         * The Horizontal Tab key, Tab.
> +         */
> +        public static const TAB:String = "Tab";
> +
> +        /**
> +         * The space key, Space Bar.
> +         */
> +        public static const SPACE:String = " ";
> +    }
> +}
> \ No newline at end of file
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
> flex/utils/AnimationUtil.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/AnimationUtil.as
> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> utils/AnimationUtil.as
> new file mode 100644
> index 0000000..ec89e77
> --- /dev/null
> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
> utils/AnimationUtil.as
> @@ -0,0 +1,105 @@
> +///////////////////////////////////////////////////////////
> /////////////////////
> +//
> +//  Licensed to the Apache Software Foundation (ASF) under one or more
> +//  contributor license agreements.  See the NOTICE file distributed with
> +//  this work for additional information regarding copyright ownership.
> +//  The ASF licenses this file to You under the Apache License, Version
> 2.0
> +//  (the "License"); you may not use this file except in compliance with
> +//  the License.  You may obtain a copy of the License at
> +//
> +//      http://www.apache.org/licenses/LICENSE-2.0
> +//
> +//  Unless required by applicable law or agreed to in writing, software
> +//  distributed under the License is distributed on an "AS IS" BASIS,
> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +//  See the License for the specific language governing permissions and
> +//  limitations under the License.
> +//
> +///////////////////////////////////////////////////////////
> /////////////////////
> +package org.apache.flex.utils
> +{
> +    COMPILE::SWF {
> +               import flash.display.DisplayObject;
> +               import flash.events.Event;
> +               import flash.events.IEventDispatcher;
> +    }
> +       import org.apache.flex.core.IUIBase;
> +
> +       /**
> +        *  The AnimationUtil class wraps callbacks to be called when the
> platform is ready for the next draw.
> +        *  (requestAnimationFrame in HTML and ENTER_FRAME in Flash)
> +        *
> +        *  @langversion 3.0
> +        *  @playerversion Flash 10.2
> +        *  @playerversion AIR 2.6
> +        *  @productversion FlexJS 0.0
> +        */
> +       public class AnimationUtil
> +       {
> +
> +               COMPILE::SWF
> +               private static var requests:Object = {};
> +               /**
> +                *  The callback is called with a high-rez timestamp as
> per the HTML spec
> +                *
> +                *  @param callback.
> +                *
> +                *  @langversion 3.0
> +                *  @playerversion Flash 10.2
> +                *  @playerversion AIR 2.6
> +                *  @productversion FlexJS 0.0
> +                */
> +               public static function requestFrame(callback:Function,
> element:IUIBase ):String
> +               {
> +                       COMPILE::SWF
> +                       {
> +                               var listener:IEventDispatcher;
> +                               if(element is DisplayObject)
> +                                       listener = element;
> +                               else if (Object(element).hasOwnProperty("$
> displayObject"))
> +                                       listener =
> element["$displayObject"];
> +                               else
> +                                       throw new Error("Unknown element
> type");
> +
> +                               var uid:String  = UIDUtil.createUID();
> +                               var wrappedCallback:Function =
> function(event:Event):void{
> +                                       callback.call(element,new
> Date().getTime());
> +                                       requests[uid] = null;
> +                               };
> +                               requests[uid] = {callback:wrappedCallback,
> listener:listener};
> +                               listener.addEventListener(
> Event.ENTER_FRAME,wrappedCallback);
> +                               return uid;
> +                       }
> +
> +                       COMPILE::JS
> +                       {
> +                               return "" + window["requestAnimationFrame"
> ](callback);
> +                       }
> +
> +                       //TODO do we need a Node.js implementation?
> +
> +               }
> +
> +               public static function cancelFrame(id:String):void
> +               {
> +                       COMPILE::SWF
> +                       {
> +                               var request:Object = requests[id];
> +                               if(request)
> +                               {
> +                                       request.listener.
> removeEventListener(Event.ENTER_FRAME,request.callback);
> +                                       requests[id] = null;
> +                               }
> +                       }
> +
> +                       COMPILE::JS
> +                       {
> +                               window["cancelAnimationFrame"]
> (Number(id));
> +                       }
> +
> +                       //TODO do we need a Node.js implementation?
> +
> +               }
> +
> +       }
> +}
>
> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
> b937f267/frameworks/projects/Graphics/src/main/flex/org/
> apache/flex/graphics/IRect.as
> ----------------------------------------------------------------------
> diff --git a/frameworks/projects/Graphics/src/main/flex/org/apache/flex/graphics/IRect.as
> b/frameworks/projects/Graphics/src/main/flex/org/
> apache/flex/graphics/IRect.as
> index 6ee819c..2af539c 100644
> --- a/frameworks/projects/Graphics/src/main/flex/org/
> apache/flex/graphics/IRect.as
> +++ b/frameworks/projects/Graphics/src/main/flex/org/
> apache/flex/graphics/IRect.as
> @@ -15,6 +15,10 @@ package org.apache.flex.graphics
>  {
>         public interface IRect extends IGraphicShape
>         {
> -
> +               function get rx():Number;
> +               function set rx(value:Number):void;
> +               function get ry():Number;
> +               function set ry(value:Number):void;
> +               function drawRect(xp:Number, yp:Number, width:Number,
> height:Number):void;
>         }
>  }
> \ No newline at end of file
>
>


-- 

Greetings
Piotr Zarzycki

Flex/AIR/.NET Developer

mobile: +48 880 859 557
e-mail: piotrzarzycki21@gmail.com
skype: zarzycki10

LinkedIn: http://www.linkedin.com/piotrzarzycki
<https://pl.linkedin.com/in/piotr-zarzycki-92a53552>

Re: git commit: [flex-asjs] [refs/heads/develop] - AnimationUtil Beginning of KeyboardEvent and associated classes Expanded IRect Added constant to MouseEvent

Posted by Harbs <ha...@gmail.com>.
Ah!

I forgot to remove that. I was not really ready to commit Promise yet, but I guess I’ll commit it now.

Beware that it’s not ready for prime-time yet though…

> On Mar 5, 2017, at 12:42 PM, piotrz <pi...@gmail.com> wrote:
> 
> Harbs,
> 
> I don't see also class Promise which is included in CoreClasses. The strange
> thing is that Maven build didn't failed, but I had errors on console.
> 
> Piotr
> 
> 
> 
> -----
> Apache Flex PMC
> piotrzarzycki21@gmail.com
> --
> View this message in context: http://apache-flex-development.2333347.n4.nabble.com/Re-git-commit-flex-asjs-refs-heads-develop-AnimationUtil-Beginning-of-KeyboardEvent-and-associated-ct-tp60099p60104.html
> Sent from the Apache Flex Development mailing list archive at Nabble.com.


Re: git commit: [flex-asjs] [refs/heads/develop] - AnimationUtil Beginning of KeyboardEvent and associated classes Expanded IRect Added constant to MouseEvent

Posted by piotrz <pi...@gmail.com>.
Harbs,

I don't see also class Promise which is included in CoreClasses. The strange
thing is that Maven build didn't failed, but I had errors on console.

Piotr



-----
Apache Flex PMC
piotrzarzycki21@gmail.com
--
View this message in context: http://apache-flex-development.2333347.n4.nabble.com/Re-git-commit-flex-asjs-refs-heads-develop-AnimationUtil-Beginning-of-KeyboardEvent-and-associated-ct-tp60099p60104.html
Sent from the Apache Flex Development mailing list archive at Nabble.com.

Re: git commit: [flex-asjs] [refs/heads/develop] - AnimationUtil Beginning of KeyboardEvent and associated classes Expanded IRect Added constant to MouseEvent

Posted by Harbs <ha...@gmail.com>.
Sure. I’ll change that.

> On Mar 5, 2017, at 11:42 AM, Piotr Zarzycki <pi...@gmail.com> wrote:
> 
> Hi Harbs,
> 
> Nice addition! Can we change @productversion FlexJS 0.0 to
> @productversion FlexJS 0.8.0
> ?
> 
> Thanks,
> Piotr
> 
> 2017-03-05 10:33 GMT+01:00 <ha...@apache.org>:
> 
>> Repository: flex-asjs
>> Updated Branches:
>>  refs/heads/develop 81712dc21 -> b937f2671
>> 
>> 
>> AnimationUtil
>> Beginning of KeyboardEvent and associated classes
>> Expanded IRect
>> Added constant to MouseEvent
>> 
>> 
>> Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/b937f267
>> Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/b937f267
>> Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/b937f267
>> 
>> Branch: refs/heads/develop
>> Commit: b937f26718b8a3d3662f70bcba21709f37c54040
>> Parents: 81712dc
>> Author: Harbs <ha...@in-tools.com>
>> Authored: Sun Mar 5 11:33:48 2017 +0200
>> Committer: Harbs <ha...@in-tools.com>
>> Committed: Sun Mar 5 11:33:48 2017 +0200
>> 
>> ----------------------------------------------------------------------
>> .../projects/Core/src/main/flex/CoreClasses.as  |  12 +-
>> .../org/apache/flex/events/KeyboardEvent.as     | 107 ++++++++++
>> .../flex/org/apache/flex/events/MouseEvent.as   |   2 +
>> .../org/apache/flex/events/utils/EditingKeys.as |  95 +++++++++
>> .../apache/flex/events/utils/KeyConverter.as    | 205 +++++++++++++++++++
>> .../apache/flex/events/utils/ModifierKeys.as    |  97 +++++++++
>> .../apache/flex/events/utils/NavigationKeys.as  |  66 ++++++
>> .../org/apache/flex/events/utils/SpecialKeys.as |  40 ++++
>> .../flex/org/apache/flex/events/utils/UIKeys.as | 115 +++++++++++
>> .../apache/flex/events/utils/WhitespaceKeys.as  |  49 +++++
>> .../flex/org/apache/flex/utils/AnimationUtil.as | 105 ++++++++++
>> .../main/flex/org/apache/flex/graphics/IRect.as |   6 +-
>> 12 files changed, 897 insertions(+), 2 deletions(-)
>> ----------------------------------------------------------------------
>> 
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/CoreClasses.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/CoreClasses.as
>> b/frameworks/projects/Core/src/main/flex/CoreClasses.as
>> index 744242a..43a4e2b 100644
>> --- a/frameworks/projects/Core/src/main/flex/CoreClasses.as
>> +++ b/frameworks/projects/Core/src/main/flex/CoreClasses.as
>> @@ -31,6 +31,7 @@ internal class CoreClasses
>>     import org.apache.flex.core.BrowserWindow; BrowserWindow;
>>        COMPILE::SWF
>>        {
>> +               import Promise; Promise;
>>                import org.apache.flex.core.ApplicationFactory;
>> ApplicationFactory;
>>                import org.apache.flex.core.CSSShape; CSSShape;
>>                import org.apache.flex.core.CSSSprite; CSSSprite;
>> @@ -116,17 +117,26 @@ internal class CoreClasses
>>     import org.apache.flex.events.EventDispatcher; EventDispatcher;
>>     import org.apache.flex.events.IEventDispatcher; IEventDispatcher;
>>        import org.apache.flex.events.MouseEvent; MouseEvent;
>> +       import org.apache.flex.events.KeyboardEvent; KeyboardEvent;
>>        COMPILE::SWF
>>        {
>>            import org.apache.flex.core.StageProxy; StageProxy;
>>                import org.apache.flex.events.utils.MouseEventConverter;
>> MouseEventConverter;
>>        }
>> +       import org.apache.flex.events.utils.KeyConverter; KeyConverter;
>>        import org.apache.flex.events.DetailEvent; DetailEvent;
>>        import org.apache.flex.events.ValueEvent; ValueEvent;
>>     import org.apache.flex.events.utils.MouseUtils; MouseUtils;
>> +       import org.apache.flex.events.utils.EditingKeys; EditingKeys;
>> +       import org.apache.flex.events.utils.ModifierKeys; ModifierKeys;
>> +       import org.apache.flex.events.utils.NavigationKeys;
>> NavigationKeys;
>> +       import org.apache.flex.events.utils.SpecialKeys; SpecialKeys;
>> +       import org.apache.flex.events.utils.WhitespaceKeys;
>> WhitespaceKeys;
>> +       import org.apache.flex.events.utils.UIKeys; UIKeys;
>>        import org.apache.flex.geom.Matrix; Matrix;
>>     import org.apache.flex.geom.Point; Point;
>>     import org.apache.flex.geom.Rectangle; Rectangle;
>> +    import org.apache.flex.utils.AnimationUtil; AnimationUtil;
>>     import org.apache.flex.utils.BinaryData; BinaryData;
>>        COMPILE::SWF
>>        {
>> @@ -156,7 +166,7 @@ internal class CoreClasses
>>     import org.apache.flex.utils.StringPadder; StringPadder;
>>        import org.apache.flex.utils.StringTrimmer; StringTrimmer;
>>        import org.apache.flex.utils.StringUtil; StringUtil;
>> -       // import org.apache.flex.utils.ObjectMap;ObjectMap;
>> +       // import org.apache.flex.utils.ObjectMap; ObjectMap;
>>        import org.apache.flex.utils.ObjectUtil; ObjectUtil;
>>        import org.apache.flex.utils.Timer; Timer;
>>        import org.apache.flex.utils.UIDUtil; UIDUtil;
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/KeyboardEvent.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/KeyboardEvent.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/KeyboardEvent.as
>> new file mode 100644
>> index 0000000..c92a0b3
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/KeyboardEvent.as
>> @@ -0,0 +1,107 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events
>> +{
>> +    public class KeyboardEvent extends Event
>> +    {
>> +
>> +        public static const KEY_DOWN:String = "keyDown";
>> +        public static const KEY_UP:String = "keyUp";
>> +
>> +        public function KeyboardEvent(
>> +            type:String,
>> +            key:String,
>> +            code:String,
>> +            shiftKey:Boolean=false,
>> +            altKey:Boolean=false,
>> +            ctrlKey:Boolean=false,
>> +            metaKey:Boolean=false,
>> +            bubbles:Boolean = false, cancelable:Boolean = false)
>> +        {
>> +            super(type, bubbles = false, cancelable);
>> +            _key = key;
>> +            _code = code;
>> +            _shiftKey = shiftKey;
>> +            _altKey = altKey;
>> +            _ctrlKey = ctrlKey;
>> +            _metaKey = metaKey;
>> +        }
>> +
>> +        private var _key:String;
>> +        public function get key():String
>> +        {
>> +            return _key;
>> +        }
>> +        public function set key(value:String):void
>> +        {
>> +            _key = value;
>> +        }
>> +
>> +        private var _code:String;
>> +        public function get code():String
>> +        {
>> +            return _code;
>> +        }
>> +        public function set code(value:String):void
>> +        {
>> +            _code = value;
>> +        }
>> +
>> +        private var _shiftKey:Boolean;
>> +        public function get shiftKey():Boolean
>> +        {
>> +            return _shiftKey;
>> +        }
>> +
>> +        private var _altKey:Boolean;
>> +        public function get altKey():Boolean
>> +        {
>> +            return _altKey;
>> +        }
>> +        public function set altKey(value:Boolean):void
>> +        {
>> +            _altKey = value;
>> +        }
>> +
>> +        private var _ctrlKey:Boolean;
>> +        public function get ctrlKey():Boolean
>> +        {
>> +            return _ctrlKey;
>> +        }
>> +        public function set ctrlKey(value:Boolean):void
>> +        {
>> +            _ctrlKey = value;
>> +        }
>> +
>> +        private var _metaKey:Boolean;
>> +        public function get metaKey():Boolean
>> +        {
>> +            return _metaKey;
>> +        }
>> +        public function set metaKey(value:Boolean):void
>> +        {
>> +            _metaKey = value;
>> +        }
>> +
>> +        public function get modifierKey():Boolean
>> +        {
>> +            return false;
>> +        }
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/MouseEvent.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/MouseEvent.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/MouseEvent.as
>> index 62462f1..3e5a617 100644
>> --- a/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/MouseEvent.as
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/MouseEvent.as
>> @@ -60,6 +60,7 @@ package org.apache.flex.events
>>                public static const ROLL_OUT:String =
>> platformConstant("rollOut");
>>         public static const CLICK:String = "click";
>>                public static const DOUBLE_CLICK:String = "doubleClick";
>> +               public static const WHEEL : String = "mouseWheel";
>> 
>>          /**
>>          *  Constructor.
>> @@ -203,6 +204,7 @@ package org.apache.flex.events
>>                public static const ROLL_OUT:String =
>> platformConstant("rollOut");
>>                public static const CLICK:String = "click";
>>                public static const DOUBLE_CLICK:String = "dblclick";
>> +               public static const WHEEL : String = "wheel";
>> 
>>                /**
>>                 *  Constructor.
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/EditingKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/EditingKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/EditingKeys.as
>> new file mode 100644
>> index 0000000..a6d7a26
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/EditingKeys.as
>> @@ -0,0 +1,95 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for editing keys
>> +     *  See: https://w3c.github.io/uievents-key/#keys-editing
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Editing_keys
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class EditingKeys
>> +    {
>> +
>> +        /**
>> +         * The Backspace key. This key is labeled Delete on Mac keyboards.
>> +         */
>> +        public static const BACKSPACE:String = "Backspace";
>> +
>> +        /**
>> +         * The Clear key. Removes the currently selected input.
>> +         */
>> +        public static const CLEAR:String = "Clear";
>> +
>> +        /**
>> +         * The Copy key (on certain extended keyboards).
>> +         */
>> +        public static const COPY:String = "Copy";
>> +
>> +        /**
>> +         * The Cursor Select key, CrSel.
>> +         */
>> +        public static const CURSOR_SELECT:String = "CrSel";
>> +
>> +        /**
>> +         * The Cut key (on certain extended keyboards).
>> +         */
>> +        public static const CUT:String = "Cut";
>> +
>> +        /**
>> +         * The Delete key, Del.
>> +         */
>> +        public static const DELETE:String = "Delete";
>> +
>> +        /**
>> +         * Erase to End of Field. Deletes all characters from the current
>> cursor position to the end of the current field.
>> +         */
>> +        public static const ERASE_EOF:String = "EraseEof";
>> +
>> +        /**
>> +         * The ExSel (Extend Selection) key.
>> +         */
>> +        public static const EXTEND_SELECTION:String = "ExSel";
>> +
>> +        /**
>> +         * The Insert key, Ins. Toggles  between inserting and
>> overwriting text.
>> +         */
>> +        public static const INSERT:String = "Insert";
>> +
>> +        /**
>> +         * Paste from the clipboard.
>> +         */
>> +        public static const PASTE:String = "Paste";
>> +
>> +        /**
>> +         * Redo the last action.
>> +         */
>> +        public static const REDO:String = "Redo";
>> +
>> +        /**
>> +         * Undo the last action.
>> +         */
>> +        public static const UNDO:String = "Undo";
>> +
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/KeyConverter.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/KeyConverter.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/KeyConverter.as
>> new file mode 100644
>> index 0000000..6ddfac8
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/KeyConverter.as
>> @@ -0,0 +1,205 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +
>> +       /**
>> +     *  Converts Keyboard Codes and key values into rational string
>> equivalents.
>> +     *
>> +     *  @langversion 3.0
>> +     *  @playerversion Flash 10.2
>> +     *  @playerversion AIR 2.6
>> +     *  @productversion FlexJS 0.0
>> +        */
>> +       public class KeyConverter
>> +       {
>> +
>> +        COMPILE::JS
>> +        private static const lookup:Object = {
>> +            "Unidentified" : "",
>> +            "Enter" : "\r",
>> +            "Tab" : "\t",
>> +            "Spacebar": " "
>> +        };
>> +
>> +        /**
>> +         *  Converts HTML key values into rational string equivalents.
>> +         *
>> +         *  @langversion 3.0
>> +         *  @playerversion Flash 10.2
>> +         *  @playerversion AIR 2.6
>> +         *  @productversion FlexJS 0.0
>> +         */
>> +        COMPILE::JS
>> +        public static function convertKey(value:String):String
>> +        {
>> +            if(value.length < 2)
>> +                return value;
>> +
>> +            value = lookup[value];
>> +            return value || "";
>> +        }
>> +
>> +        /**
>> +         *  Converts SWF key values into rational string equivalents. (is
>> anything needed?)
>> +         *
>> +         *  @langversion 3.0
>> +         *  @playerversion Flash 10.2
>> +         *  @playerversion AIR 2.6
>> +         *  @productversion FlexJS 0.0
>> +         */
>> +         COMPILE::SWF
>> +         public static function convertKey(value:String):String
>> +         {
>> +             return value;
>> +         }
>> +
>> +        /**
>> +         *  Converts Flash keyCodes into rational string equivalents.
>> These represent the physical (or virtual) key locations.
>> +         *
>> +         *  @langversion 3.0
>> +         *  @playerversion Flash 10.2
>> +         *  @playerversion AIR 2.6
>> +         *  @productversion FlexJS 0.0
>> +         */
>> +         COMPILE::SWF
>> +         public static function convertKeyCode(code:uint):String
>> +         {
>> +             // A to Z
>> +             if(code > 64 && code < 91)
>> +             {
>> +                 return "Key" + String.fromCharCode(code);
>> +             }
>> +             // 0 to 9
>> +             if(code > 47 && code < 58)
>> +             {
>> +                 return "Digit" + String.fromCharCode(code);
>> +             }
>> +             // Numpad 0 to 9
>> +             if(code > 95 && code < 106)
>> +             {
>> +                 return "Numpad" + String.fromCharCode(code);
>> +             }
>> +             // Fn keys
>> +             if(code > 111 && code < 106)
>> +             {
>> +                 return "F" + (code - 111);
>> +             }
>> +             // The rest
>> +             switch(code){
>> +                case 8:
>> +                    return "Backspace";
>> +                case 9:
>> +                    return "Tab";
>> +                case 13:
>> +                    return "Enter";
>> +                case 16:
>> +                    return "ShiftLeft";
>> +                case 17:
>> +                    return "ControlLeft";
>> +                case 20:
>> +                    return "CapsLock";
>> +                case 27:
>> +                    return "Escape";
>> +                case 32:
>> +                    return "Space";
>> +                case 33:
>> +                    return "PageUp";
>> +                case 34:
>> +                    return "PageDown";
>> +                case 35:
>> +                    return "End";
>> +                case 36:
>> +                    return "Home";
>> +                case 37:
>> +                    return "ArrowLeft";
>> +                case 38:
>> +                    return "ArrowUp";
>> +                case 39:
>> +                    return "ArrowRight";
>> +                case 40:
>> +                    return "ArrowDown";
>> +                case 45:
>> +                    return "Insert";
>> +                case 46:
>> +                    return "Delete";
>> +                case 144:
>> +                    return "NumLock";
>> +                case 145:
>> +                    return "ScrollLock";
>> +                case 19:
>> +                    return "Pause";
>> +                case 186:
>> +                    return "Semicolon";
>> +                case 187:
>> +                    return "Equal";
>> +                case 189:
>> +                    return "Minus";
>> +                case 191:
>> +                    return "Slash";
>> +                case 192:
>> +                    return "Backquote";
>> +                case 219:
>> +                    return "BracketLeft";
>> +                case 220:
>> +                    return "Backslash";
>> +                case 221:
>> +                    return "BracketRight";
>> +                case 222:
>> +                    return "Quote";
>> +                case 188:
>> +                    return "Comma";
>> +                case 190 :
>> +                    return "Period";
>> +                case 106:
>> +                    return "NumpadMultiply";
>> +                case 107:
>> +                    return "NumpadAdd";
>> +                case 13:
>> +                    return "NumpadEnter";
>> +                case 109:
>> +                    return "NumpadSubtract";
>> +                case 110:
>> +                    return "NumpadDecimal";
>> +                case 111:
>> +                    return "NumpadDivide";
>> +                default:
>> +                    throw new Error("Unknown Key Code: " + code);
>> +             }
>> +         }
>> +
>> +        /**
>> +         *  Converts Flash charCodes into rational string equivalents.
>> These represent the actual input.
>> +         *
>> +         *  @langversion 3.0
>> +         *  @playerversion Flash 10.2
>> +         *  @playerversion AIR 2.6
>> +         *  @productversion FlexJS 0.0
>> +         */
>> +         public static function convertCharCode(code:uint):String
>> +         {
>> +             //By default we use String.fromCharCode. This should work
>> for the vast majority of characters.
>> +             //Special characters need to be dealt with individually.
>> +             switch(code){
>> +                 default:
>> +                    return String.fromCharCode(code);
>> +             }
>> +         }
>> +    }
>> +}
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/ModifierKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/ModifierKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/ModifierKeys.as
>> new file mode 100644
>> index 0000000..b318aac
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/ModifierKeys.as
>> @@ -0,0 +1,97 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for special keys
>> +     *  See: https://w3c.github.io/uievents-key/#keys-special
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Special_values
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class ModifierKeys
>> +    {
>> +
>> +        /**
>> +        * The Alt (Alternative) key.
>> +        */
>> +        public static const ALT:String = "Alt";
>> +
>> +        /**
>> +        * The AltGr or AltGraph (Alternate Graphics) key. Enables the ISO
>> Level 3 shift modifier (where Shift is the level 2 modifier).
>> +        */
>> +        public static const ALT_GRAPH:String = "AltGraph";
>> +
>> +        /**
>> +         * The Caps Lock key. Toggles the capital character lock on and
>> off for subsequent input.
>> +         */
>> +        public static const CAPS_LOCK:String = "CapsLock";
>> +
>> +        /**
>> +         * The Control, Ctrl, or Ctl key. Alows typing control characters.
>> +         */
>> +        public static const CONTROL:String = "Control";
>> +
>> +        /**
>> +         * The Fn (Function modifier) key. Used to allow generating
>> function key (F1-F15, for instance)
>> +         * characters on keyboards without a dedicated function key area.
>> Often handled in hardware so that events aren't generated for this key.
>> +         */
>> +        public static const FN:String = "Fn";
>> +
>> +        /**
>> +         * The Meta key. Allows issuing special command inputs. This is
>> the Windows logo key, or the Command or ⌘ key on Mac keyboards.
>> +         */
>> +        public static const META:String = "Meta";
>> +
>> +        /**
>> +         * The NumLock (Number Lock) key. Toggles the numeric keypad
>> between number entry some other mode (often directional arrows).
>> +         */
>> +        public static const NUM_LOCK:String = "NumLock";
>> +
>> +        /**
>> +         * The Scroll Lock key. Toggles beteen scrolling and cursor
>> movement modes.
>> +         */
>> +        public static const SCROLL_LOCK:String = "ScrollLock";
>> +
>> +        /**
>> +         * The Shift key. Modifies keystrokes to allow typing upper (or
>> other) case letters,
>> +         * and to support typing punctuation and other special characters.
>> +         */
>> +        public static const SHIFT:String = "Shift";
>> +
>> +        /**
>> +         * The Super key.
>> +         */
>> +        public static const SUPER:String = "Super";
>> +
>> +        /**
>> +         * The Symbol modifier key (found on certain virtual keyboards).
>> +         */
>> +        public static const SYMBOL:String = "Symbol";
>> +
>> +        /**
>> +         * The Symbol Lock key.
>> +         */
>> +        public static const SYMBOL_LOCK:String = "SymbolLock";
>> +
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/NavigationKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/NavigationKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/NavigationKeys.as
>> new file mode 100644
>> index 0000000..b645d21
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/NavigationKeys.as
>> @@ -0,0 +1,66 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for keyboard navigation
>> +     *  See: https://w3c.github.io/uievents-key/#keys-navigation
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Navigation_keys
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class NavigationKeys
>> +    {
>> +        /**
>> +         * The down arrow key.
>> +         */
>> +        public static const DOWN:String = "ArrowDown";
>> +        /**
>> +         * The left arrow key.
>> +         */
>> +        public static const LEFT:String = "ArrowLeft";
>> +        /**
>> +         * The right arrow key.
>> +         */
>> +        public static const RIGHT:String = "ArrowRight";
>> +        /**
>> +         * The up arrow key.
>> +         */
>> +        public static const UP:String = "ArrowUp";
>> +        /**
>> +         * The End key. Moves to the end of content.
>> +         */
>> +        public static const END:String = "End";
>> +        /**
>> +         * The Home key. Moves to the start of content.
>> +         */
>> +        public static const HOME:String = "Home";
>> +        /**
>> +         * The Page Down (or PgDn) key. Scrolls down or displays the next
>> page of content.
>> +         */
>> +        public static const PAGE_DOWN:String = "PageDown";
>> +        /**
>> +         * The Page Up (or PgUp) key. Scrolls up or displays the previous
>> page of content.
>> +         */
>> +        public static const PAGE_UP:String = "PageUp";
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/SpecialKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/SpecialKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/SpecialKeys.as
>> new file mode 100644
>> index 0000000..b82efb8
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/SpecialKeys.as
>> @@ -0,0 +1,40 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for special keys
>> +     *  See: https://w3c.github.io/uievents-key/#keys-special
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Special_values
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class SpecialKeys
>> +    {
>> +        /**
>> +         * The user agent wasn't able to map the event's virtual keycode
>> to a specific key value.
>> +         * This can happen due to hardware or software constraints, or
>> because of constraints
>> +         * around the platform on which the user agent is running.
>> +         */
>> +        public static const UNIDENTIFIED:String = "Unidentified";
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/UIKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/UIKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/UIKeys.as
>> new file mode 100644
>> index 0000000..2d1cdec
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/UIKeys.as
>> @@ -0,0 +1,115 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for special keys
>> +     *  See: https://w3c.github.io/uievents-key/#keys-special
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Special_values
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class UIKeys
>> +    {
>> +
>> +        /**
>> +         * The Accept, Commit, or OK key or button. Accepts the currently
>> selected option or input method sequence conversion.
>> +         */
>> +        public static const ACCEPT:String = "Accept";
>> +
>> +        /**
>> +         * The Again key. Redoes or repeats a previous action.
>> +         */
>> +        public static const AGAIN:String = "Again";
>> +
>> +        /**
>> +         * The Attn (Attention) key.
>> +         */
>> +        public static const ATTN:String = "Attn";
>> +
>> +        /**
>> +         * The Cancel key.
>> +         */
>> +        public static const CANCEL:String = "Cancel";
>> +
>> +        /**
>> +         * Shows the context menu. Typically found between the Windows
>> (or OS) key and the Control key on the right side of the keyboard.
>> +         */
>> +        public static const CONTEXT_MENU:String = "ContextMenu";
>> +
>> +        /**
>> +         * The Esc (Escape) key. Typically used as an exit, cancel, or
>> "escape this operation" button. Historically, the Escape character was used
>> to signal the start of a special control sequence of characters called an
>> "escape sequence."
>> +         */
>> +        public static const ESCAPE:String = "Escape";
>> +
>> +        /**
>> +         * The Execute key.
>> +         */
>> +        public static const EXECUTE:String = "Execute";
>> +
>> +        /**
>> +         * The Find key. Opens an interface (typically a dialog box) for
>> performing a find/search operation.
>> +         */
>> +        public static const FIND:String = "Find";
>> +
>> +        /**
>> +         * The Finish key.
>> +         */
>> +        public static const FINISH:String = "Finish";
>> +
>> +        /**
>> +         * The Help key. Opens or toggles the display of help information.
>> +         */
>> +        public static const HELP:String = "Help";
>> +
>> +        /**
>> +         * The Pause key. Pauses the current application or state, if
>> applicable.
>> +         */
>> +        public static const PAUSE:String = "Pause";
>> +
>> +        /**
>> +         * The Play key. Resumes a previously paused application, if
>> applicable.
>> +         */
>> +        public static const PLAY:String = "Play";
>> +
>> +        /**
>> +         * The Props (Properties) key.
>> +         */
>> +        public static const PROPS:String = "Props";
>> +
>> +        /**
>> +         * The Select key.
>> +         */
>> +        public static const SELECT:String = "Select";
>> +
>> +        /**
>> +         * The ZoomIn key.
>> +         */
>> +        public static const ZOOM_IN:String = "ZoomIn";
>> +
>> +        /**
>> +         * The ZoomOut key.
>> +         */
>> +        public static const ZOOM_OUT:String = "ZoomOut";
>> +
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/events/utils/WhitespaceKeys.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/events/utils/WhitespaceKeys.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/WhitespaceKeys.as
>> new file mode 100644
>> index 0000000..d987ac0
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> events/utils/WhitespaceKeys.as
>> @@ -0,0 +1,49 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.events.utils
>> +{
>> +       /**
>> +        *  This class holds constants for special keys
>> +     *  See: https://w3c.github.io/uievents-key/#keys-whitespace
>> +     *  See: https://developer.mozilla.org/en-US/docs/Web/API/
>> KeyboardEvent/key/Key_Values#Whitespace_keys
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +    public class WhitespaceKeys
>> +    {
>> +
>> +        /**
>> +         * The Enter or ↵ key (sometimes labeled Return).
>> +         */
>> +        public static const ENTER:String = "Enter";
>> +
>> +        /**
>> +         * The Horizontal Tab key, Tab.
>> +         */
>> +        public static const TAB:String = "Tab";
>> +
>> +        /**
>> +         * The space key, Space Bar.
>> +         */
>> +        public static const SPACE:String = " ";
>> +    }
>> +}
>> \ No newline at end of file
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Core/src/main/flex/org/apache/
>> flex/utils/AnimationUtil.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Core/src/main/flex/org/apache/flex/utils/AnimationUtil.as
>> b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> utils/AnimationUtil.as
>> new file mode 100644
>> index 0000000..ec89e77
>> --- /dev/null
>> +++ b/frameworks/projects/Core/src/main/flex/org/apache/flex/
>> utils/AnimationUtil.as
>> @@ -0,0 +1,105 @@
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +//
>> +//  Licensed to the Apache Software Foundation (ASF) under one or more
>> +//  contributor license agreements.  See the NOTICE file distributed with
>> +//  this work for additional information regarding copyright ownership.
>> +//  The ASF licenses this file to You under the Apache License, Version
>> 2.0
>> +//  (the "License"); you may not use this file except in compliance with
>> +//  the License.  You may obtain a copy of the License at
>> +//
>> +//      http://www.apache.org/licenses/LICENSE-2.0
>> +//
>> +//  Unless required by applicable law or agreed to in writing, software
>> +//  distributed under the License is distributed on an "AS IS" BASIS,
>> +//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
>> implied.
>> +//  See the License for the specific language governing permissions and
>> +//  limitations under the License.
>> +//
>> +///////////////////////////////////////////////////////////
>> /////////////////////
>> +package org.apache.flex.utils
>> +{
>> +    COMPILE::SWF {
>> +               import flash.display.DisplayObject;
>> +               import flash.events.Event;
>> +               import flash.events.IEventDispatcher;
>> +    }
>> +       import org.apache.flex.core.IUIBase;
>> +
>> +       /**
>> +        *  The AnimationUtil class wraps callbacks to be called when the
>> platform is ready for the next draw.
>> +        *  (requestAnimationFrame in HTML and ENTER_FRAME in Flash)
>> +        *
>> +        *  @langversion 3.0
>> +        *  @playerversion Flash 10.2
>> +        *  @playerversion AIR 2.6
>> +        *  @productversion FlexJS 0.0
>> +        */
>> +       public class AnimationUtil
>> +       {
>> +
>> +               COMPILE::SWF
>> +               private static var requests:Object = {};
>> +               /**
>> +                *  The callback is called with a high-rez timestamp as
>> per the HTML spec
>> +                *
>> +                *  @param callback.
>> +                *
>> +                *  @langversion 3.0
>> +                *  @playerversion Flash 10.2
>> +                *  @playerversion AIR 2.6
>> +                *  @productversion FlexJS 0.0
>> +                */
>> +               public static function requestFrame(callback:Function,
>> element:IUIBase ):String
>> +               {
>> +                       COMPILE::SWF
>> +                       {
>> +                               var listener:IEventDispatcher;
>> +                               if(element is DisplayObject)
>> +                                       listener = element;
>> +                               else if (Object(element).hasOwnProperty("$
>> displayObject"))
>> +                                       listener =
>> element["$displayObject"];
>> +                               else
>> +                                       throw new Error("Unknown element
>> type");
>> +
>> +                               var uid:String  = UIDUtil.createUID();
>> +                               var wrappedCallback:Function =
>> function(event:Event):void{
>> +                                       callback.call(element,new
>> Date().getTime());
>> +                                       requests[uid] = null;
>> +                               };
>> +                               requests[uid] = {callback:wrappedCallback,
>> listener:listener};
>> +                               listener.addEventListener(
>> Event.ENTER_FRAME,wrappedCallback);
>> +                               return uid;
>> +                       }
>> +
>> +                       COMPILE::JS
>> +                       {
>> +                               return "" + window["requestAnimationFrame"
>> ](callback);
>> +                       }
>> +
>> +                       //TODO do we need a Node.js implementation?
>> +
>> +               }
>> +
>> +               public static function cancelFrame(id:String):void
>> +               {
>> +                       COMPILE::SWF
>> +                       {
>> +                               var request:Object = requests[id];
>> +                               if(request)
>> +                               {
>> +                                       request.listener.
>> removeEventListener(Event.ENTER_FRAME,request.callback);
>> +                                       requests[id] = null;
>> +                               }
>> +                       }
>> +
>> +                       COMPILE::JS
>> +                       {
>> +                               window["cancelAnimationFrame"]
>> (Number(id));
>> +                       }
>> +
>> +                       //TODO do we need a Node.js implementation?
>> +
>> +               }
>> +
>> +       }
>> +}
>> 
>> http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/
>> b937f267/frameworks/projects/Graphics/src/main/flex/org/
>> apache/flex/graphics/IRect.as
>> ----------------------------------------------------------------------
>> diff --git a/frameworks/projects/Graphics/src/main/flex/org/apache/flex/graphics/IRect.as
>> b/frameworks/projects/Graphics/src/main/flex/org/
>> apache/flex/graphics/IRect.as
>> index 6ee819c..2af539c 100644
>> --- a/frameworks/projects/Graphics/src/main/flex/org/
>> apache/flex/graphics/IRect.as
>> +++ b/frameworks/projects/Graphics/src/main/flex/org/
>> apache/flex/graphics/IRect.as
>> @@ -15,6 +15,10 @@ package org.apache.flex.graphics
>> {
>>        public interface IRect extends IGraphicShape
>>        {
>> -
>> +               function get rx():Number;
>> +               function set rx(value:Number):void;
>> +               function get ry():Number;
>> +               function set ry(value:Number):void;
>> +               function drawRect(xp:Number, yp:Number, width:Number,
>> height:Number):void;
>>        }
>> }
>> \ No newline at end of file
>> 
>> 
> 
> 
> -- 
> 
> Greetings
> Piotr Zarzycki
> 
> Flex/AIR/.NET Developer
> 
> mobile: +48 880 859 557
> e-mail: piotrzarzycki21@gmail.com
> skype: zarzycki10
> 
> LinkedIn: http://www.linkedin.com/piotrzarzycki
> <https://pl.linkedin.com/in/piotr-zarzycki-92a53552>