src/cm/media/js/lib/yui/yui3-3.15.0/build/widget-anim/widget-anim-debug.js
author gibus
Mon, 10 Mar 2014 15:19:48 +0100
changeset 602 e16a97fb364a
permissions -rw-r--r--
Use YUI 3.15
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
602
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     1
YUI.add('widget-anim', function (Y, NAME) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     2
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     3
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     4
 * Provides a plugin which can be used to animate widget visibility changes.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     5
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     6
 * @module widget-anim
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     7
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     8
var BOUNDING_BOX = "boundingBox",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     9
    HOST = "host",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    10
    NODE = "node",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    11
    OPACITY = "opacity",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    12
    EMPTY_STR = "",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    13
    VISIBLE = "visible",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    14
    DESTROY = "destroy",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    15
    HIDDEN = "hidden",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    16
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    17
    RENDERED = "rendered",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    18
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    19
    START = "start",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    20
    END = "end",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    21
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    22
    DURATION = "duration",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    23
    ANIM_SHOW = "animShow",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    24
    ANIM_HIDE = "animHide",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    25
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    26
    _UI_SET_VISIBLE = "_uiSetVisible",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    27
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    28
    ANIM_SHOW_CHANGE = "animShowChange",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    29
    ANIM_HIDE_CHANGE = "animHideChange";
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    30
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    31
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    32
 * A plugin class which can be used to animate widget visibility changes.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    33
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    34
 * @class WidgetAnim
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    35
 * @extends Plugin.Base
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    36
 * @namespace Plugin
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    37
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    38
function WidgetAnim(config) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    39
    WidgetAnim.superclass.constructor.apply(this, arguments);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    40
}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    41
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    42
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    43
 * The namespace for the plugin. This will be the property on the widget, which will
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    44
 * reference the plugin instance, when it's plugged in.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    45
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    46
 * @property NS
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    47
 * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    48
 * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    49
 * @default "anim"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    50
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    51
WidgetAnim.NS = "anim";
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    52
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    53
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    54
 * The NAME of the WidgetAnim class. Used to prefix events generated
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    55
 * by the plugin class.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    56
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    57
 * @property NAME
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    58
 * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    59
 * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    60
 * @default "pluginWidgetAnim"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    61
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    62
WidgetAnim.NAME = "pluginWidgetAnim";
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    63
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    64
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    65
 * Pre-Packaged Animation implementations, which can be used for animShow and animHide attribute
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    66
 * values.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    67
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    68
 * @property ANIMATIONS
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    69
 * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    70
 * @type Object
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    71
 * @default "pluginWidgetAnim"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    72
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    73
WidgetAnim.ANIMATIONS = {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    74
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    75
    fadeIn : function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    76
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    77
        var widget = this.get(HOST),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    78
            boundingBox = widget.get(BOUNDING_BOX),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    79
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    80
            anim = new Y.Anim({
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    81
                node: boundingBox,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    82
                to: { opacity: 1 },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    83
                duration: this.get(DURATION)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    84
            });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    85
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    86
        // Set initial opacity, to avoid initial flicker
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    87
        if (!widget.get(VISIBLE)) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    88
            boundingBox.setStyle(OPACITY, 0);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    89
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    90
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    91
        // Clean up, on destroy. Where supported, remove
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    92
        // opacity set using style. Else make 100% opaque
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    93
        anim.on(DESTROY, function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    94
            this.get(NODE).setStyle(OPACITY, (Y.UA.ie) ? 1 : EMPTY_STR);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    95
        });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    96
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    97
        return anim;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    98
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    99
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   100
    fadeOut : function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   101
        return new Y.Anim({
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   102
            node: this.get(HOST).get(BOUNDING_BOX),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   103
            to: { opacity: 0 },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   104
            duration: this.get(DURATION)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   105
        });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   106
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   107
};
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   108
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   109
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   110
 * Static property used to define the default attribute
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   111
 * configuration for the plugin.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   112
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   113
 * @property ATTRS
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   114
 * @type Object
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   115
 * @static
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   116
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   117
WidgetAnim.ATTRS = {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   118
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   119
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   120
     * Default duration in seconds. Used as the default duration for the default animation implementations
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   121
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   122
     * @attribute duration
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   123
     * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   124
     * @default 0.2 (seconds
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   125
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   126
    duration : {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   127
        value: 0.2
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   128
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   129
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   130
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   131
     * Default animation instance used for showing the widget (opacity fade-in)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   132
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   133
     * @attribute animShow
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   134
     * @type Anim
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   135
     * @default WidgetAnim.ANIMATIONS.fadeIn
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   136
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   137
    animShow : {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   138
        valueFn: WidgetAnim.ANIMATIONS.fadeIn
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   139
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   140
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   141
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   142
     * Default animation instance used for hiding the widget (opacity fade-out)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   143
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   144
     * @attribute animHide
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   145
     * @type Anim
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   146
     * @default WidgetAnim.ANIMATIONS.fadeOut
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   147
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   148
    animHide : {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   149
        valueFn: WidgetAnim.ANIMATIONS.fadeOut
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   150
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   151
};
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   152
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   153
Y.extend(WidgetAnim, Y.Plugin.Base, {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   154
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   155
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   156
     * The initializer lifecycle implementation. Modifies the host widget's
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   157
     * visibililty implementation to add animation.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   158
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   159
     * @method initializer
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   160
     * @param {Object} config The user configuration for the plugin
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   161
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   162
    initializer : function(config) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   163
        this._bindAnimShow();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   164
        this._bindAnimHide();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   165
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   166
        this.after(ANIM_SHOW_CHANGE, this._bindAnimShow);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   167
        this.after(ANIM_HIDE_CHANGE, this._bindAnimHide);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   168
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   169
        // Override default _uiSetVisible method, with custom animated method
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   170
        this.beforeHostMethod(_UI_SET_VISIBLE, this._uiAnimSetVisible);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   171
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   172
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   173
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   174
     * The initializer destructor implementation. Responsible for destroying the configured
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   175
     * animation instances.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   176
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   177
     * @method destructor
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   178
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   179
    destructor : function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   180
        this.get(ANIM_SHOW).destroy();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   181
        this.get(ANIM_HIDE).destroy();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   182
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   183
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   184
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   185
     * The injected method used to override the host widget's _uiSetVisible implementation with
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   186
     * an animated version of the same.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   187
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   188
     * <p>This method replaces the default _uiSetVisible handler
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   189
     * Widget provides, by injecting itself before _uiSetVisible,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   190
     * and preventing the default behavior. </p>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   191
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   192
     * @method _uiAnimSetVisible
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   193
     * @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   194
     * @param {boolean} val true, if making the widget visible. false, if hiding it.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   195
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   196
    _uiAnimSetVisible : function(val) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   197
        if (this.get(HOST).get(RENDERED)) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   198
            if (val) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   199
                this.get(ANIM_HIDE).stop();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   200
                this.get(ANIM_SHOW).run();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   201
            } else {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   202
                this.get(ANIM_SHOW).stop();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   203
                this.get(ANIM_HIDE).run();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   204
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   205
            return new Y.Do.Prevent();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   206
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   207
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   208
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   209
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   210
     * The original Widget _uiSetVisible implementation. This currently needs to be replicated,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   211
     * so it can be invoked before or after the animation starts or stops, since the original
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   212
     * methods is not available to the AOP implementation.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   213
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   214
     * @method _uiSetVisible
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   215
     * @param {boolean} val true, if making the widget visible. false, if hiding it.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   216
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   217
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   218
    _uiSetVisible : function(val) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   219
        var host = this.get(HOST),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   220
            hiddenClass = host.getClassName(HIDDEN);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   221
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   222
        host.get(BOUNDING_BOX).toggleClass(hiddenClass, !val);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   223
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   224
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   225
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   226
     * Binds a listener to invoke the original visibility handling when the animShow animation is started
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   227
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   228
     * @method _bindAnimShow
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   229
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   230
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   231
    _bindAnimShow : function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   232
        // Setup original visibility handling (for show) before starting to animate
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   233
        this.get(ANIM_SHOW).on(START,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   234
            Y.bind(function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   235
                this._uiSetVisible(true);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   236
            }, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   237
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   238
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   239
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   240
     * Binds a listener to invoke the original visibility handling when the animHide animation is complete
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   241
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   242
     * @method _bindAnimHide
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   243
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   244
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   245
    _bindAnimHide : function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   246
        // Setup original visibility handling (for hide) after completing animation
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   247
        this.get(ANIM_HIDE).after(END,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   248
            Y.bind(function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   249
                this._uiSetVisible(false);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   250
            }, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   251
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   252
});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   253
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   254
Y.namespace("Plugin").WidgetAnim = WidgetAnim;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   255
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   256
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   257
}, '@VERSION@', {"requires": ["anim-base", "plugin", "widget"]});