| Package | com.greensock |
| Class | public class OverwriteManager |
ROLL_OVER and ROLL_OUT handlers that tween an object's alpha and the user rolls their mouse
over/out/over/out quickly. Most likely, you'd want each new tween to overwrite the other immediately so
that you don't end up with multiple tweens vying for control of the alpha property. That describes
the ALL_IMMEDIATE mode which is the default mode of TweenLite when it is not used in conjunction with
TweenMax, TimelineLite, or TimelineMax. This keeps things small and fast. However, it isn't ideal for
setting up sequences because as soon as you create subsequent tweens of the same target in the sequence,
the previous one gets overwritten. And what if you have a tween that is controling 3 properties and
then you create another tween that only controls one of those properties? You may want the first tween
to continue tweening the other 2 (non-overlapping) properties. This describes the AUTO mode which is
the default whenever TweenMax, TimelineLite, or TimelineMax is used in your swf. OverwriteManager
offers quite a few other modes to choose from in fact:
AUTO is the default mode).
invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)AUTO mode unless you have already initted OverwriteManager manually).
invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)ALL_IMMEDIATE
except that PREEXISTING doesn't run its overwriting routines until it renders for the
first time, meaning that if it has a delay, other tweens won't be overwritten until the delay expires.ALL_IMMEDIATE is great except
that you want to wait on overwriting until the tween begins, PREEXISTING is perfect.ALL_IMMEDIATE (which performs overwriting immediatly when the tween is created),
all overwriting occurs when a tween renders for the first time. So if your tween has a delay of 1 second,
it will not overwrite any tweens until that point. OverwriteManager.init() method, like:
OverwriteManager.init(OverwriteManager.AUTO);
If you want to override the default mode in a particular tween, just use the overwrite special
property. You can use the static constant or the corresponding number. The following two lines produce
the same results:
TweenMax.to(mc, 1, {x:100, overwrite:OverwriteManager.PREXISTING});
TweenMax.to(mc, 1, {x:100, overwrite:5});
OverwriteManager is a separate, optional class for TweenLite primarily because of file size concerns.
Without initting OverwriteManager, TweenLite can only recognize modes 0 and 1 (NONE and ALL_IMMEDIATE).
However, TweenMax, TimelineLite, and TimelineMax automatically init() OverwriteManager in AUTO mode
unless you have already initted OverwriteManager manually. You do not need to take any additional steps
to use AUTO mode if you're using any of those classes somewhere in your project. Keep in mind too that setting
the default OverwriteManager mode will affect TweenLite and TweenMax tweens.AUTO mode (the default) and then do a simple TweenLite tween, simply do:
import com.greensock.OverwriteManager;
import com.greensock.TweenLite;
OverwriteManager.init(OverwriteManager.AUTO);
TweenLite.to(mc, 2, {x:300});
You can also define overwrite behavior in individual tweens, like so:
import com.greensock.OverwriteManager;
import com.greensock.TweenLite;
OverwriteManager.init(2);
TweenLite.to(mc, 2, {x:"300", y:"100"});
TweenLite.to(mc, 1, {alpha:0.5, overwrite:1}); //or use the constant OverwriteManager.ALL_IMMEDIATE
TweenLite.to(mc, 3, {x:200, rotation:30, overwrite:2}); //or use the constant OverwriteManager.AUTO
OverwriteManager's mode can be changed anytime after init() is called, like.
OverwriteManager.mode = OverwriteManager.CONCURRENT;
Copyright 2009, GreenSock. All rights reserved. This work is subject to the terms in http://www.greensock.com/terms_of_use.html or for corporate Club GreenSock members, the software agreement that was issued with the corporate membership.
| Property | Defined by | ||
|---|---|---|---|
| mode : int [static] The default overwrite mode for all TweenLite and TweenMax instances
| OverwriteManager | ||
| Method | Defined by | ||
|---|---|---|---|
|
init(defaultMode:int = 2):int
[static]
Initializes OverwriteManager and sets the default management mode.
| OverwriteManager | ||
| Constant | Defined by | ||
|---|---|---|---|
| ALL_IMMEDIATE : int = 1 [static] Overwrites all existing tweens of the same target immediately when the tween is created
| OverwriteManager | ||
| ALL_ONSTART : int = 4 [static] Overwrites all tweens of the same target (regardless of overlapping properties or timing) when the tween renders for the first time as opposed to ALL_IMMEDIATE which performs overwriting immediately when the tween is created.
| OverwriteManager | ||
| AUTO : int = 2 [static] Only overwrites individual overlapping tweening properties in other tweens of the same target.
| OverwriteManager | ||
| CONCURRENT : int = 3 [static] Overwrites tweens of the same target that are active when the tween renders for the first time.
| OverwriteManager | ||
| NONE : int = 0 [static] Won't overwrite any other tweens
| OverwriteManager | ||
| PREEXISTING : int = 5 [static] Overwrites tweens of the same target that existed before this tween regardless of their start/end time or active state or overlapping properties.
| OverwriteManager | ||
| mode | property |
public static var mode:intThe default overwrite mode for all TweenLite and TweenMax instances
| init | () | method |
public static function init(defaultMode:int = 2):intInitializes OverwriteManager and sets the default management mode. Options include:
AUTO is the default mode).
invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)AUTO mode unless you have already initted OverwriteManager manually).
invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)invalidate() a tween to force it
to re-init and run its overwriting routine again next time it renders)ALL_IMMEDIATE
except that PREEXISTING doesn't run its overwriting routines until it renders for the
first time, meaning that if it has a delay, other tweens won't be overwritten until the delay expires.ALL_IMMEDIATE is great except
that you want to wait on overwriting until the tween begins, PREEXISTING is perfect.defaultMode:int (default = 2) — The default mode that OverwriteManager should use.
|
int |
| ALL_IMMEDIATE | constant |
public static const ALL_IMMEDIATE:int = 1Overwrites all existing tweens of the same target immediately when the tween is created
| ALL_ONSTART | constant |
public static const ALL_ONSTART:int = 4Overwrites all tweens of the same target (regardless of overlapping properties or timing) when the tween renders for the first time as opposed to ALL_IMMEDIATE which performs overwriting immediately when the tween is created.
| AUTO | constant |
public static const AUTO:int = 2Only overwrites individual overlapping tweening properties in other tweens of the same target. TweenMax, TimelineLite, and TimelineMax automatically init() OverwriteManager in this mode if you haven't already called OverwriteManager.init().
| CONCURRENT | constant |
public static const CONCURRENT:int = 3Overwrites tweens of the same target that are active when the tween renders for the first time.
| NONE | constant |
public static const NONE:int = 0Won't overwrite any other tweens
| PREEXISTING | constant |
public static const PREEXISTING:int = 5Overwrites tweens of the same target that existed before this tween regardless of their start/end time or active state or overlapping properties.